/* Runtime palette bridge. Studio is the canonical light/dark token source.
   Keep this after studio.css; the offline widget library does not load this file. */
html.nsstars-royal[data-widget-theme=royal] {
  --ri-paper:var(--paper); --ri-mist:var(--mist); --ri-ink:var(--ink); --ri-muted:var(--muted);
  --ri-line:var(--line); --ri-soft:var(--brand-soft); --ri-ice:var(--ice);
  --ri-accent:var(--blue); --ri-action:var(--action-bg); --ri-action-hover:var(--action-hover); --ri-action-ink:var(--action-ink);
  --ri-body:var(--body); --ri-display:var(--display); --ri-focus:var(--blue);
  --ri-error:#a52339; --ri-sale-bg:#ab243c; --ri-sale-ink:#fff;
  --ri-success:#146541; --ri-success-bg:#146541; --ri-success-hover:#0e5033;
  --bs-body-bg:var(--paper); --bs-body-color:var(--ink); --bs-secondary-color:var(--muted);
  --bs-secondary-bg:var(--mist); --bs-tertiary-bg:var(--mist); --bs-border-color:var(--line);
  --bs-link-color:var(--blue); --bs-link-hover-color:var(--action-hover);
  --bs-primary:var(--action-bg); --bs-primary-rgb:22,68,210;
  --bs-primary-bg-subtle:var(--brand-soft); --bs-primary-text-emphasis:var(--brand-soft-ink); --bs-primary-border-subtle:var(--brand-border);
  --bs-secondary-bg-subtle:var(--mist); --bs-secondary-text-emphasis:var(--ink); --bs-secondary-border-subtle:var(--line);
  --bs-body-color-rgb:8,32,68;
}
html.nsstars-royal[data-widget-theme=royal][data-bs-theme=dark] {
  --ri-error:#ff9aaf; --ri-success:#8ee5b3; --bs-body-color-rgb:240,246,255; --bs-primary-rgb:59,106,250;
}
/* The content reset sets inherited button/link colors. Set complete pairs here,
   so actions remain readable on contact, cart, account forms and shop widgets. */
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) :is(.btn-primary,.btn-cart) {
  color:var(--action-ink); background:var(--action-bg); border-color:var(--action-bg);
}
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) :is(.btn-primary,.btn-cart):is(:hover,:focus-visible,:active) {
  color:var(--action-ink); background:var(--action-hover); border-color:var(--action-hover);
}
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) :is(.btn-secondary,.btn-light,.btn-outline-primary,.btn-outline-secondary,.btn-outline-dark,.btn-outline-light) {
  color:var(--ink); background:var(--paper); border-color:var(--line);
}
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) :is(.btn-secondary,.btn-light,.btn-outline-primary,.btn-outline-secondary,.btn-outline-dark,.btn-outline-light):is(:hover,:focus-visible) {
  color:var(--brand-soft-ink); background:var(--brand-soft); border-color:var(--brand-border);
}
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) :is(.btn-secondary,.btn-light,.btn-outline-primary,.btn-outline-secondary,.btn-outline-dark,.btn-outline-light):is(.active,:active) {
  color:var(--action-ink); background:var(--action-bg); border-color:var(--action-bg);
}
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) .btn-link { color:var(--blue); }
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) .btn-danger { color:var(--ri-sale-ink); background:var(--ri-sale-bg); border-color:var(--ri-sale-bg); }
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) .btn-danger:is(:hover,:focus-visible,:active) { color:#fff; background:#8a1d30; border-color:#8a1d30; }
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) .btn-success { color:#fff; background:var(--ri-success-bg); border-color:var(--ri-success-bg); }
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) .btn-success:is(:hover,:focus-visible,:active) { color:#fff; background:var(--ri-success-hover); border-color:var(--ri-success-hover); }
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) .btn-outline-success { color:var(--ri-success); background:var(--paper); border-color:var(--ri-success); }
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) .btn-outline-success:is(:hover,:focus-visible,:active) { color:#fff; background:var(--ri-success-bg); border-color:var(--ri-success-bg); }
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) .btn:focus-visible { outline:3px solid var(--ri-focus); outline-offset:3px; box-shadow:none; }
html.nsstars-royal :is(.ri-content,#offcanvasCartSideBar,.modal-content) :is(.btn:disabled,.btn.disabled) { opacity:.55; }
html.nsstars-royal .ri-page :is(.bg-white,.bg-dark),
html.nsstars-royal #offcanvasCartSideBar :is(.bg-white,.bg-dark) { background-color:var(--paper)!important; }
html.nsstars-royal .ri-page :is(.bg-light,.bg-body-secondary,.bg-white-subtle) { background-color:var(--mist)!important; }
html.nsstars-royal .ri-page :is(.link-dark,.link-light) { color:var(--ink)!important; }
html.nsstars-royal .ri-content .badge.bg-secondary { color:var(--brand-soft-ink)!important; background-color:var(--brand-soft)!important; }
html.nsstars-royal .ri-content .text-danger { color:var(--ri-error)!important; }
html.nsstars-royal .ri-content :is(.text-primary,.link-primary) { color:var(--blue)!important; }
html.nsstars-royal .ri-content .text-secondary { color:var(--muted)!important; }
html.nsstars-royal .ri-content :is(.form-control,.form-select) {
  color:var(--ink); background-color:var(--paper); border-color:var(--line); font:400 15px/1.6 var(--body);
}
html.nsstars-royal .ri-content .form-control:focus { color:var(--ink); background-color:var(--paper); border-color:var(--blue); box-shadow:0 0 0 3px var(--brand-soft); }
html.nsstars-royal .ri-content .form-control::placeholder { color:var(--muted); opacity:1; }
html.nsstars-royal .ri-content .form-control::file-selector-button { color:var(--ink); background-color:var(--mist); }
html.nsstars-royal .ri-content .form-check-input:checked { background-color:var(--action-bg); border-color:var(--action-bg); }
html.nsstars-royal .ri-content :is(.form-control:disabled,.form-select:disabled) { color:var(--muted); background-color:var(--mist); }
html.nsstars-royal .ri-content :is(.form-label,.form-floating label,.form-check-label) { color:var(--ink); font-size:14px; }
html.nsstars-royal .ri-content :is(.form-text,.text-body-secondary) { color:var(--muted)!important; }
html.nsstars-royal .ri-content :is(.invalid-feedback,.invalid-tooltip) { color:var(--ri-error); }
html.nsstars-royal .ri-content :is(.form-control.is-invalid,.form-select.is-invalid) { border-color:var(--ri-error); }
html.nsstars-royal .ri-content .table { --bs-table-color:var(--ink); --bs-table-bg:var(--paper); --bs-table-border-color:var(--line); --bs-table-striped-color:var(--ink); --bs-table-striped-bg:var(--mist); }
@media(max-width:767.98px) {
  html.nsstars-royal .ri-content :is(.form-control,.form-select) { font-size:16px; }
}
