:root {
  --sr-border: #e7ebf2;
  --sr-blue: #4c8df6;
  --sr-sidebar: #1d2338;
  --sr-sidebar-2: #252b45;
  --sr-text: #1f2937;
  --sr-muted: #64748b;
  --sr-bg: #f6f8fc;
}

.sr-page {
  background: var(--sr-bg);
}

.sr-page .dash-main {
  min-height: 100vh;
  background: #fff;
}

.sr-page .dash-topbar {
  background: #fff;
  border-bottom: 1px solid var(--sr-border);
}

.sr-page .search-box {
  max-width: 376px;
  border-radius: 12px;
  background: #f7f9fc;
  border-color: #dfe5ef;
}

.sr-page .dash-content {
  width: 100%;
  margin: 0;
  padding: 18px 32px 48px;
}

.sr-sidebar {
  background: linear-gradient(180deg, var(--sr-sidebar) 0%, var(--sr-sidebar-2) 100%);
}

.sr-sidebar .logo {
  width: 118px;
}

.sr-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
}

.sr-title-wrap,
.sr-menu-anchor {
  position: relative;
}

.sr-title-btn {
  border: 0;
  background: transparent;
  font: inherit;
  color: #14213d;
  font-size: 18px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  cursor: pointer;
}

.sr-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.sr-icon-btn,
.sr-primary-btn,
.sr-outline-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: 10px;
  font: inherit;
  text-decoration: none;
  cursor: pointer;
}

.sr-icon-btn {
  width: 40px;
  height: 40px;
  border: 1px solid #d7dde7;
  background: #fff;
  color: #334155;
}

.sr-primary-btn {
  min-height: 42px;
  padding: 0 18px;
  border: 0;
  background: var(--sr-blue);
  color: #fff;
  font-weight: 600;
  box-shadow: 0 10px 22px rgba(76, 141, 246, 0.18);
}

.sr-outline-btn {
  min-height: 42px;
  padding: 0 18px;
  border: 1px solid #d5dce8;
  background: #fff;
  color: #334155;
  font-weight: 500;
}

.sr-filter-row {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  padding: 12px 0 16px;
  border-top: 1px solid #edf1f6;
  border-bottom: 1px solid #edf1f6;
}

.sr-chip {
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 10px;
  border: 1px solid #d6ddea;
  border-radius: 10px;
  background: #fff;
  color: #3f4a5f;
}

.sr-chip-value {
  color: #111827;
  font-weight: 600;
}

.sr-chip-muted {
  color: #64748b;
}

.sr-clear-filter {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #ef4444;
  font-weight: 500;
}

.sr-empty {
  min-height: calc(100vh - 260px);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.sr-empty-card h2 {
  margin: 0 0 12px;
  font-size: 22px;
  font-weight: 500;
  color: #111827;
}

.sr-empty-card p {
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
  color: #52627f;
}

.sr-empty-figure {
  width: 300px;
  height: 280px;
  margin: 0 auto 18px;
  position: relative;
}

.sr-empty-box {
  width: 170px;
  height: 202px;
  border-radius: 22px;
  background: linear-gradient(180deg, #e1e9ff 0%, #f1f5ff 100%);
  position: absolute;
  left: 50%;
  top: 40px;
  transform: translateX(-50%);
}

.sr-empty-person {
  width: 126px;
  height: 126px;
  border-radius: 42% 42% 46% 46%;
  background: radial-gradient(circle at 58% 32%, #6882ef 0 12%, #7f6ce0 13% 60%, transparent 61%),
              linear-gradient(180deg, #7e69d9 0%, #6a5fcf 100%);
  position: absolute;
  left: 50%;
  top: 86px;
  transform: translateX(-50%);
}

.sr-dropdown {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  min-width: 190px;
  background: #fff;
  border: 1px solid #e6eaf1;
  border-radius: 14px;
  box-shadow: 0 20px 45px rgba(15, 23, 42, 0.16);
  padding: 10px;
  display: none;
  z-index: 40;
}

.sr-dropdown.right {
  left: auto;
  right: 0;
}

.sr-dropdown[aria-hidden="false"] {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.sr-dropdown button,
.sr-dropdown a {
  border: 0;
  background: transparent;
  text-decoration: none;
  color: #334155;
  font: inherit;
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 12px 12px;
  border-radius: 10px;
  cursor: pointer;
}

.sr-dropdown button:hover,
.sr-dropdown a:hover {
  background: #edf4ff;
  color: #2463d3;
}

.sr-modal {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 90;
}

.sr-modal[aria-hidden="false"] {
  display: flex;
}

.sr-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.5);
}

.sr-modal-card {
  position: relative;
  width: min(626px, 92vw);
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.24);
  overflow: hidden;
}

.sr-modal-card.small {
  width: min(750px, 92vw);
}

.sr-modal-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 22px 36px;
  border-bottom: 1px solid var(--sr-border);
}

.sr-modal-head h3 {
  margin: 0;
  font-size: 22px;
  font-weight: 500;
}

.sr-modal-close {
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: #eef3fb;
  color: #64748b;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.sr-modal-body {
  padding: 34px 36px;
}

.sr-modal-actions {
  display: flex;
  gap: 16px;
  padding: 0 36px 26px;
  border-top: 1px solid var(--sr-border);
  padding-top: 26px;
}

.sr-alert {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}

.sr-alert p {
  margin: 0;
  font-size: 18px;
  line-height: 1.55;
  color: #3b3f4a;
}

.sr-alert-icon {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #ff9d3d;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  flex-shrink: 0;
}

.sr-inline-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 28px;
}

.sr-form-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 28px;
}

.sr-form-group label {
  font-size: 16px;
  color: #111827;
}

.sr-select,
.sr-static-field {
  width: 100%;
  min-height: 48px;
  border: 1px solid #d7ddea;
  border-radius: 12px;
  padding: 0 14px;
  font: inherit;
  color: #334155;
  background: #fff;
}

.sr-static-field {
  display: flex;
  align-items: center;
  background: #fff;
}

.sr-check-inline {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 16px;
  color: #111827;
}

.sr-check-inline input {
  width: 20px;
  height: 20px;
}

.sr-settings-page {
  margin: 0;
  font-family: "Inter", Arial, sans-serif;
  background: #f7f8fc;
  color: var(--sr-text);
}

.sr-settings-top {
  display: grid;
  grid-template-columns: 300px minmax(280px, 1fr) 220px;
  align-items: center;
  gap: 20px;
  padding: 20px 24px;
  background: #fff;
  border-bottom: 1px solid var(--sr-border);
}

.sr-settings-brand {
  display: flex;
  align-items: center;
  gap: 14px;
}

.sr-settings-logo,
.sr-settings-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.sr-settings-logo {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  background: #fff5f5;
  color: #ef4444;
  border: 1px solid #ffe0e0;
}

.sr-settings-title {
  font-size: 24px;
  font-weight: 600;
}

.sr-settings-sub {
  color: #4b5563;
  margin-top: 4px;
}

.sr-settings-search {
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: 380px;
  margin: 0 auto;
  background: #f4f6fd;
  border: 1px solid #e2e8f5;
  border-radius: 14px;
  padding: 12px 16px;
}

.sr-settings-search input {
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  font: inherit;
}

.sr-settings-close {
  justify-self: end;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
  background: #fff;
  color: #334155;
  text-decoration: none;
}

.sr-close-x {
  color: #ef4444;
  font-weight: 700;
  margin-left: 4px;
}

.sr-settings-layout {
  display: grid;
  grid-template-columns: 280px 1fr;
  min-height: calc(100vh - 81px);
}

.sr-settings-sidebar {
  background: #fff;
  border-right: 1px solid var(--sr-border);
  padding: 18px 0;
}

.sr-sidebar-group-title {
  padding: 0 18px 12px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  color: #6b7280;
}

.sr-settings-nav,
.sr-settings-subnav {
  display: flex;
  flex-direction: column;
}

.sr-settings-link,
.sr-settings-parent,
.sr-settings-subnav a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  color: #1f2937;
  text-decoration: none;
}

.sr-settings-parent.active,
.sr-settings-subnav a.active {
  background: #eaf1ff;
  color: #2563eb;
  font-weight: 600;
}

.sr-template-main {
  display: grid;
  grid-template-columns: 300px 1fr;
  background: #fff;
}

.sr-template-nav {
  border-right: 1px solid var(--sr-border);
  padding: 22px;
}

.sr-template-nav h2 {
  margin: 0 0 28px;
  font-size: 20px;
  font-weight: 500;
}

.sr-template-group-label {
  margin: 22px 0 10px;
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.sr-template-nav a {
  display: block;
  padding: 14px 18px;
  border-radius: 14px;
  color: #1f2937;
  text-decoration: none;
  margin-bottom: 8px;
}

.sr-template-nav a.active {
  background: #eef2ff;
  font-weight: 600;
}

.sr-template-panel {
  padding: 28px 40px 40px;
}

.sr-template-panel h1 {
  margin: 0 0 26px;
  font-size: 22px;
  font-weight: 500;
}

.sr-enable-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-radius: 18px;
  background: linear-gradient(90deg, #fff4db 0%, #fff8e9 100%);
  padding: 28px 30px;
  margin-bottom: 34px;
}

.sr-enable-copy {
  display: flex;
  align-items: center;
  gap: 20px;
}

.sr-enable-copy strong {
  display: block;
  font-size: 20px;
  margin-bottom: 8px;
}

.sr-enable-copy p {
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
}

.sr-enable-icon {
  width: 58px;
  height: 58px;
  border-radius: 12px;
  background: #ffb14b;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  flex-shrink: 0;
}

.sr-template-preview h3 {
  margin: 0 0 18px;
  font-size: 18px;
  font-weight: 500;
}

.sr-preview-card {
  width: 300px;
  min-height: 430px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid #edf1f6;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
  position: relative;
  padding: 16px 16px 58px;
}

.sr-preview-badge {
  position: absolute;
  right: 18px;
  top: 14px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #4ade80;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

.sr-preview-lines {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 24px;
}

.sr-preview-lines span {
  display: block;
  height: 8px;
  border-radius: 999px;
  background: linear-gradient(90deg, #d8dee8, #eef2f6);
}

.sr-preview-lines .w-40 { width: 40%; }
.sr-preview-lines .w-70 { width: 70%; }
.sr-preview-lines .w-85 { width: 85%; }
.sr-preview-lines .w-90 { width: 90%; }
.sr-preview-lines .w-100 { width: 100%; }

.sr-preview-ribbon {
  position: absolute;
  right: 0;
  bottom: 0;
  background: #f9a546;
  color: #fff;
  padding: 10px 18px;
  border-top-left-radius: 14px;
  border-bottom-right-radius: 16px;
  font-weight: 700;
}

@media (max-width: 1100px) {
  .sr-settings-layout,
  .sr-template-main,
  .sr-settings-top {
    grid-template-columns: 1fr;
  }

  .sr-enable-banner,
  .sr-toolbar {
    flex-direction: column;
    align-items: flex-start;
  }
}

