:root{--rcm-bg:#fff;--rcm-text:#202124;--rcm-primary:#155eef;--rcm-secondary:#f2f4f7;--rcm-border:#d0d5dd;--rcm-radius:var(--player-panel-radius,3px);--rcm-overlay:rgba(0,0,0,.55);--rcm-max-width:720px}
.rcm-banner,.rcm-modal{box-sizing:border-box;color:var(--rcm-text);background:var(--rcm-bg);border:1px solid var(--rcm-border);border-radius:var(--rcm-radius);box-shadow:0 12px 40px rgba(0,0,0,.2);font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;z-index:999999}
.rcm-banner[hidden],.rcm-modal[hidden],.rcm-overlay[hidden]{display:none!important}
.rcm-banner{position:fixed;left:16px;right:16px;bottom:16px;max-width:var(--rcm-max-width);margin:auto;padding:22px}.rcm-banner h2,.rcm-modal h2{font-size:1.35rem;line-height:1.25;margin:0 2rem 8px 0;color:inherit}.rcm-banner p,.rcm-modal p{margin:0 0 12px}.rcm-banner-inner{max-width:100%}.rcm-position-center{top:50%;bottom:auto;transform:translateY(-50%)}
.rcm-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin:8px 0 14px}.rcm-links a,.rcm-category a{color:var(--rcm-primary);text-decoration:underline}.rcm-actions{display:flex;flex-wrap:wrap;gap:10px}.rcm-button,.rcm-close,.rcm-settings-trigger{font:inherit;cursor:pointer}.rcm-button{border:1px solid var(--rcm-border);border-radius:var(--rcm-radius);padding:10px 16px;min-height:44px;color:var(--rcm-text);background:var(--rcm-secondary)}.rcm-button.rcm-primary{background:var(--rcm-primary);border-color:var(--rcm-primary);color:#fff}.rcm-button.rcm-outline{background:transparent}.rcm-button:hover{filter:brightness(.96)}.rcm-button:focus-visible,.rcm-settings-trigger:focus-visible,.rcm-close:focus-visible,.rcm-category input:focus-visible{outline:3px solid #ffbf47;outline-offset:2px}
.rcm-overlay{position:fixed;inset:0;background:var(--rcm-overlay);z-index:999997}.rcm-overlay[data-no-overlay]{background:transparent;pointer-events:none}.rcm-modal{position:fixed;z-index:999998;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(var(--rcm-max-width),calc(100vw - 32px));max-height:min(90vh,900px);overflow:auto;padding:24px}.rcm-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.rcm-close{border:0;background:transparent;color:inherit;font-size:1.8rem;line-height:1;padding:3px 8px}.rcm-category{border:1px solid var(--rcm-border);border-radius:var(--rcm-radius);margin:12px 0;padding:12px}.rcm-category legend{font-weight:700;padding:0 6px}.rcm-category p{margin:4px 0 8px}.rcm-category ul{margin:8px 0 0;padding-left:22px}.rcm-required{font-size:.8em;font-weight:400}.rcm-toggle{display:flex;align-items:center;gap:8px}.rcm-toggle input{width:20px;height:20px;accent-color:var(--rcm-primary)}.rcm-settings-trigger{background:transparent;color:inherit;border:0;text-decoration:underline;padding:4px}.rcm-embed-placeholder{padding:20px;background:var(--rcm-secondary);border:1px solid var(--rcm-border);border-radius:var(--rcm-radius)}.rcm-embed-placeholder p{margin:0 0 10px}
@media(max-width:600px){.rcm-banner{left:8px;right:8px;bottom:8px;padding:16px;max-height:calc(100vh - 16px);overflow:auto}.rcm-modal{width:calc(100vw - 16px);max-height:calc(100vh - 16px);padding:18px}.rcm-actions{display:grid;grid-template-columns:1fr}.rcm-actions .rcm-button{width:100%}.rcm-banner h2,.rcm-modal h2{font-size:1.2rem}}
@media(prefers-reduced-motion:reduce){.rcm-banner,.rcm-modal,.rcm-overlay{scroll-behavior:auto;animation:none;transition:none}}

/* Use the Schimmer theme's shared blur strength while keeping blur on the overlay. */
.rcm-overlay{opacity:0;visibility:hidden;pointer-events:none;background:var(--rcm-overlay,rgba(17,17,17,.35));-webkit-backdrop-filter:blur(var(--player-panel-blur,30px));backdrop-filter:blur(var(--player-panel-blur,30px));transition:opacity 280ms ease,visibility 280ms ease}
.rcm-overlay.rcm-is-visible{opacity:1;visibility:visible;pointer-events:auto}
.rcm-overlay[data-no-overlay]{-webkit-backdrop-filter:none;backdrop-filter:none}
.rcm-overlay[data-no-overlay].rcm-is-visible{pointer-events:none}
.rcm-banner{opacity:0;visibility:hidden;translate:0 8px;transition:opacity 280ms ease,translate 280ms ease,visibility 280ms ease}
.rcm-banner.rcm-is-visible{opacity:1;visibility:visible;translate:0 0;pointer-events:auto}
.rcm-banner:not(.rcm-is-visible){pointer-events:none}
.rcm-modal{opacity:0;visibility:hidden;scale:.985;transition:opacity 240ms ease,scale 240ms ease,visibility 240ms ease}
.rcm-modal.rcm-is-visible{opacity:1;visibility:visible;scale:1}
.rcm-modal:not(.rcm-is-visible){pointer-events:none}
.rcm-blocked-media{background:var(--rcm-secondary);}
.rcm-service-notice{margin-block:12px;padding:12px;border:1px solid var(--rcm-border);border-radius:var(--rcm-radius);background:var(--rcm-secondary);color:var(--rcm-text)}
.rcm-service-notice p{margin:0 0 8px}
.rcm-service-blocker-host{position:relative!important;isolation:isolate}
.rcm-service-blocker{position:absolute;z-index:20;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;box-sizing:border-box;min-height:180px;padding:24px;text-align:center;color:var(--rcm-text);background:var(--rcm-bg);background:color-mix(in srgb,var(--rcm-bg) 92%,transparent);border:1px solid var(--rcm-border);border-radius:var(--rcm-radius);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.rcm-service-blocker strong{font-size:1.1rem}.rcm-service-blocker p{max-width:480px;margin:0}.rcm-service-blocker .rcm-button{margin-top:2px}
.schimmer-sc > .rcm-service-blocker{top:-30px;bottom:-30px;min-height:0;overflow:auto}
@media(max-width:600px){.rcm-banner{max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 16px);}.rcm-modal{max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 16px);padding-bottom:max(18px,env(safe-area-inset-bottom));}}
@supports (height:100svh){@media(max-width:600px){.rcm-banner{max-height:calc(100svh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 16px);}.rcm-modal{max-height:calc(100svh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 16px);}}}
@media(prefers-reduced-motion:reduce){.rcm-banner,.rcm-modal,.rcm-overlay{translate:none;scale:none;transition:none;}}

/* Compact settings: only the categories scroll; explanation and actions stay visible. */
.rcm-modal {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto auto;
  width: min(600px, var(--rcm-max-width), calc(100vw - 24px));
  max-height: min(680px, calc(100dvh - 24px));
  overflow: hidden;
  padding: 18px;
  font-size: 13px;
  line-height: 1.45;
}
.rcm-modal .rcm-modal-header { min-width: 0; align-items: center; }
.rcm-modal h2 { font-size: 1.05rem; margin-bottom: 6px; }
.rcm-modal .rcm-close { flex: 0 0 36px; min-height: 36px; font-size: 1.5rem; }
.rcm-modal #rcm-modal-description { margin-bottom: 12px; font-size: inherit; line-height: inherit; }
.rcm-modal .rcm-categories { min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; padding: 2px; }
.rcm-modal .rcm-category { margin: 0 0 6px; padding: 0; border-radius: var(--rcm-radius); }
.rcm-category-header { display: flex; align-items: center; justify-content: space-between; gap: 4px; }
.rcm-category-header .rcm-toggle { flex: 1; min-width: 0; min-height: 44px; padding: 8px 10px; cursor: pointer; font-weight: 600; }
.rcm-category-header .rcm-toggle input { flex: 0 0 18px; width: 18px; height: 18px; margin: 0; }
.rcm-category-header .rcm-required { margin-left: auto; }
.rcm-category-expand { flex: 0 0 44px; min-height: 44px; padding: 6px; border: 0; background: transparent; color: inherit; font: inherit; font-size: 1.25rem; cursor: pointer; }
.rcm-category-expand:focus-visible { outline: 3px solid #ffbf47; outline-offset: -3px; }
.rcm-category-details { box-sizing: border-box; padding: 0 10px 10px; overflow: hidden; overflow-wrap: anywhere; }
.rcm-category-details[hidden] { display: none; }
.rcm-modal .rcm-category-details p { margin-top: 0; }
.rcm-modal .rcm-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-top: 10px; }
.rcm-modal .rcm-button { min-width: 0; padding: 8px; font-size: 12px; line-height: 1.3; }
.rcm-modal .rcm-links { margin: 10px 0 0; font-size: 12px; gap: 6px 14px; }
@media(max-width:600px) {
  .rcm-modal { padding: 12px; max-height: calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 16px); }
}

/* Inherit Schimmer's design tokens locally, including over saved plugin colors. */
.rcm-banner,.rcm-modal,.rcm-service-blocker,.rcm-embed-placeholder,.rcm-service-notice {
  --rcm-bg: var(--color-surface, #f8f6f0);
  --rcm-text: var(--color-text, #151515);
  --rcm-primary: var(--color-primary, #111111);
  --rcm-secondary: var(--color-panel, #fff);
  --rcm-border: var(--color-border, rgba(17,17,17,.12));
  --rcm-radius: var(--player-panel-radius, var(--radius, 3px));
  font-family: var(--font-primary, sans-serif);
  font-weight: 400;
  line-height: 1.6;
}
.rcm-banner,.rcm-modal { box-shadow: 0 24px 80px rgba(17,17,17,.18); }
.rcm-banner { font-size: .875rem; }
.rcm-banner h2,.rcm-modal h2,.rcm-service-blocker strong {
  font-family: var(--font-headline, var(--font-primary, sans-serif));
  font-weight: 400;
  color: inherit;
}
.rcm-service-blocker { font-size: .875rem; }
.rcm-button,.rcm-modal .rcm-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 10px 18px;
  border: 1px solid var(--rcm-primary);
  border-radius: var(--rcm-radius);
  font-family: var(--font-primary, sans-serif);
  font-size: .72rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: .1em;
  text-transform: uppercase;
  white-space: normal;
  transition: background-color var(--transition, .28s ease), color var(--transition, .28s ease);
}
.rcm-button.rcm-primary { color: var(--color-white, #fff); }
.rcm-button:hover { filter: none; background: var(--rcm-primary); color: var(--color-white, #fff); }
.rcm-button.rcm-primary:hover { background: var(--rcm-secondary); color: var(--rcm-primary); }
.rcm-button:focus-visible,.rcm-settings-trigger:focus-visible,.rcm-close:focus-visible,.rcm-category input:focus-visible,.rcm-category-expand:focus-visible {
  outline: 2px solid var(--color-primary, #111111);
  outline-offset: 3px;
}
.rcm-links a,.rcm-category a { text-underline-offset: 3px; }
@media(max-width:600px) {
  .rcm-modal .rcm-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rcm-modal .rcm-button { min-height: 44px; padding: 8px 12px; }
  .rcm-service-blocker { padding: 20px 16px; }
}
@media(prefers-reduced-motion:reduce) { .rcm-button { transition: none; } }

/* One dialog: text, categories and links above a full-width action row. */
.rcm-modal { --rcm-dialog-padding: 18px; padding: var(--rcm-dialog-padding); gap: 0; }
.rcm-modal .rcm-categories { padding: 0; }
.rcm-modal .rcm-actions { width: 100%; margin: 14px 0 0; gap: 8px; align-items: stretch; }
.rcm-modal .rcm-actions .rcm-button { width: 100%; margin: 0; }
.rcm-modal .rcm-links { margin: 8px 0 0; }
.rcm-button.rcm-primary { background: var(--rcm-secondary); color: var(--rcm-primary); }
.rcm-contact-blocker { top: -10px; bottom: -10px; min-height: 0; overflow: auto; border-radius: var(--player-panel-radius, 3px); }
@media(max-width:600px) {
  .rcm-modal { --rcm-dialog-padding: 12px; }
  .rcm-modal .rcm-actions .rcm-button { padding: 8px 4px; font-size: .62rem; letter-spacing: .04em; overflow-wrap: anywhere; }
}
