:root {
  --bg: #f3f5f9;
  --panel: #fff;
  --text: #172033;
  --muted: #667085;
  --line: #e7eaf0;
  --primary: #4f46e5;
  --danger: #dc2626;
  --success: #16803c;
  --sidebar: #101728;
}
* {
  box-sizing: border-box;
}
html,
body {
  margin: 0;
  min-height: 100%;
  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    "Microsoft YaHei",
    sans-serif;
  color: var(--text);
  background: var(--bg);
}
a {
  color: var(--primary);
  text-decoration: none;
}
button,
input,
select,
textarea {
  font: inherit;
}
.app-shell {
  min-height: 100vh;
}
.sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  width: 236px;
  padding: 26px 18px;
  background: var(--sidebar);
  color: #fff;
  display: flex;
  flex-direction: column;
  z-index: 20;
}
.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 10px 28px;
  color: #fff;
  font-size: 19px;
}
.brand span,
.login-brand span {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: linear-gradient(135deg, #7c3aed, #2563eb);
  font-size: 14px;
  font-weight: 800;
}
.sidebar nav {
  display: grid;
  gap: 6px;
}
.sidebar nav a {
  padding: 12px 14px;
  border-radius: 10px;
  color: #aeb8cc;
}
.sidebar nav a:hover,
.sidebar nav a.active {
  background: #222c43;
  color: #fff;
}
.site-link {
  margin-top: auto;
  padding: 12px 14px;
  color: #aeb8cc;
}
.main {
  margin-left: 236px;
  min-height: 100vh;
}
.topbar {
  height: 76px;
  padding: 0 30px;
  border-bottom: 1px solid var(--line);
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.topbar > div,
.account {
  display: flex;
  align-items: center;
  gap: 14px;
}
.topbar h1 {
  margin: 0;
  font-size: 22px;
}
.account {
  color: var(--muted);
}
.account form {
  margin: 0;
}
.link-button,
.text-button {
  padding: 0;
  border: 0;
  background: none;
  color: var(--primary);
  cursor: pointer;
}
.text-button.danger {
  color: var(--danger);
}
.menu-button {
  display: none;
  border: 0;
  background: none;
  font-size: 22px;
}
.content {
  padding: 28px 30px;
}
.alert {
  margin-bottom: 18px;
  padding: 13px 16px;
  border-radius: 10px;
}
.alert.success {
  background: #eaf8ef;
  color: #126b32;
}
.alert.error {
  background: #fff0f0;
  color: #b42318;
}
.stats-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 22px;
}
.stat-card {
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
}
.stat-card span {
  display: block;
  color: var(--muted);
  font-size: 14px;
}
.stat-card strong {
  display: block;
  margin-top: 10px;
  font-size: 30px;
}
.stat-card-link {
  color: var(--text);
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}
.stat-card-link:hover {
  border-color: var(--primary);
  box-shadow: 0 8px 24px rgba(79, 70, 229, 0.12);
  transform: translateY(-1px);
}
.panel {
  margin-bottom: 22px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--panel);
  box-shadow: 0 4px 18px rgba(16, 24, 40, 0.03);
}
.panel-head {
  padding: 20px 22px;
  border-bottom: 1px solid var(--line);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.panel-head h2 {
  margin: 0;
  font-size: 18px;
}
.panel-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 13px;
}
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid #d7dce5;
  border-radius: 9px;
  background: #fff;
  color: var(--text);
  cursor: pointer;
  font-weight: 600;
}
.button.primary {
  border-color: var(--primary);
  background: var(--primary);
  color: #fff;
}
.button.ghost {
  background: transparent;
}
.button.danger {
  border-color: #fecaca;
  color: var(--danger);
}
.button.wide {
  width: 100%;
}
.table-wrap {
  overflow: auto;
}
table {
  width: 100%;
  border-collapse: collapse;
}
th,
td {
  padding: 15px 18px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  white-space: nowrap;
}
th {
  color: var(--muted);
  font-size: 12px;
  text-transform: uppercase;
  background: #fafbfc;
}
tbody tr:last-child td {
  border-bottom: 0;
}
.empty {
  padding: 38px !important;
  text-align: center !important;
  color: var(--muted);
}
.badge {
  display: inline-flex;
  padding: 4px 9px;
  border-radius: 999px;
  font-size: 12px;
  background: #eef0f5;
  color: #555;
}
.badge.published {
  background: #e8f7ed;
  color: #14743a;
}
.badge.offline {
  background: #fff1e8;
  color: #a94710;
}
.badge.queue-queued { background: #eef0f5; color: #475467; }
.badge.queue-running { background: #e8efff; color: #2f55b7; }
.badge.queue-completed { background: #e8f7ed; color: #14743a; }
.badge.queue-failed { background: #fff0f0; color: #b42318; }
.queue-stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 20px 22px;
  margin-bottom: 0;
}
.queue-error {
  max-width: 520px;
  margin-top: 5px;
  color: var(--danger);
  font-size: 12px;
  white-space: normal;
}
.actions {
  display: flex;
  align-items: center;
  gap: 12px;
}
.actions form {
  margin: 0;
}
.cover {
  width: 46px;
  height: 62px;
  object-fit: cover;
  border-radius: 7px;
  background: #e8eaf0;
}
.cover.placeholder {
  display: grid;
  place-items: center;
  color: #6b7280;
  font-weight: 700;
}
.cover.large {
  width: 90px;
  height: 120px;
}
.cover-zoom-trigger {
  cursor: zoom-in;
  outline: none;
}
.cover-zoom-trigger:focus-visible {
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.28);
}
.cover-zoom-preview {
  position: fixed;
  z-index: 1000;
  padding: 6px;
  border: 1px solid rgba(255, 255, 255, 0.75);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(16, 24, 40, 0.28);
  pointer-events: none;
}
.cover-zoom-preview[hidden] {
  display: none;
}
.cover-zoom-preview img {
  display: block;
  width: auto;
  max-width: min(420px, calc(100vw - 48px));
  height: auto;
  max-height: min(320px, calc(100vh - 48px));
  border-radius: 7px;
  object-fit: contain;
  background: #e8eaf0;
}
.recommend {
  margin-left: 8px;
  padding: 3px 7px;
  border-radius: 6px;
  background: #fff4d8;
  color: #946200;
}
.subtitle-count-button {
  min-width: 74px;
  padding: 7px 11px;
  border: 1px solid #d9ddff;
  border-radius: 9px;
  background: #f5f6ff;
  color: var(--primary);
  cursor: pointer;
  text-align: left;
}
.subtitle-count-button strong,
.subtitle-count-button small {
  display: block;
}
.subtitle-count-button small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
}
.subtitle-count-button:hover,
.subtitle-count-button:focus-visible {
  border-color: var(--primary);
  outline: none;
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.14);
}
.subtitle-empty {
  color: var(--muted);
  font-size: 13px;
}
.dialog-open {
  overflow: hidden;
}
.subtitle-dialog-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1100;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(15, 23, 42, 0.5);
}
.subtitle-dialog-backdrop[hidden] {
  display: none;
}
.subtitle-dialog {
  width: min(520px, 100%);
  max-height: min(720px, calc(100vh - 48px));
  overflow: auto;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 24px 80px rgba(15, 23, 42, 0.28);
}
.subtitle-dialog-heading {
  position: sticky;
  top: 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 24px 16px;
  border-bottom: 1px solid var(--line);
  background: #fff;
}
.subtitle-dialog-heading span,
.subtitle-dialog-heading h3 {
  display: block;
  margin: 0;
}
.subtitle-dialog-heading span {
  margin-bottom: 5px;
  color: var(--muted);
  font-size: 12px;
}
.subtitle-dialog-heading h3 {
  font-size: 19px;
}
.subtitle-dialog-heading button {
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 9px;
  background: #f2f4f7;
  color: #475467;
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
}
.subtitle-dialog-summary {
  padding: 16px 24px 8px;
  color: var(--muted);
  font-size: 13px;
}
.subtitle-language-list {
  display: grid;
  gap: 10px;
  padding: 12px 24px 24px;
}
.subtitle-language-row {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 13px 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fafbfc;
}
.subtitle-country-flag {
  font-size: 26px;
  line-height: 1;
}
.subtitle-language-row div strong,
.subtitle-language-row div small {
  display: block;
}
.subtitle-language-row div small {
  margin-top: 3px;
  color: var(--muted);
}
.subtitle-language-row > span:last-child {
  color: var(--muted);
  font-size: 13px;
}
.subtitle-language-row > span:last-child strong {
  color: var(--text);
  font-size: 15px;
}
.subtitle-language-link {
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}
.home-slot-intro {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
  padding: 16px 20px;
  border: 1px solid #dfe3ff;
  border-radius: 14px;
  background: #f5f6ff;
}
.home-slot-intro span,
.home-recommendation-title small,
.invalid-item {
  color: var(--muted);
}
.home-recommendation-title {
  display: flex;
  align-items: center;
  gap: 12px;
}
.home-recommendation-title img {
  width: 42px;
  height: 56px;
  border-radius: 7px;
  object-fit: cover;
  background: #e8eaf0;
}
.home-recommendation-title strong,
.home-recommendation-title small {
  display: block;
}
.home-recommendation-title small {
  margin-top: 4px;
}
.home-recommendation-form {
  display: flex;
  align-items: end;
  gap: 12px;
}
.home-recommendation-form label {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 12px;
}
.home-recommendation-form input[type="number"] {
  width: 86px;
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid #d7dce5;
  border-radius: 9px;
}
.home-count {
  color: var(--primary);
  font-weight: 700;
}
.drama-search-field {
  position: relative;
  min-width: min(420px, 45vw);
}
.drama-search-results {
  position: absolute;
  z-index: 30;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  max-height: 360px;
  overflow-y: auto;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 14px 35px rgba(16, 24, 40, 0.16);
}
.drama-search-option {
  display: grid;
  width: 100%;
  padding: 10px 12px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--text);
  text-align: left;
  cursor: pointer;
}
.drama-search-option:hover { background: #f3f4ff; }
.drama-search-option strong,
.drama-search-option small { display: block; }
.drama-search-option small,
.drama-search-empty { margin-top: 3px; color: var(--muted); font-size: 12px; }
.drama-search-empty { display: block; padding: 12px; }
.inline-form {
  display: flex;
  align-items: end;
  gap: 14px;
  flex-wrap: wrap;
  padding: 18px 22px;
}
.inline-form.grow {
  padding: 0;
  flex: 1;
}
.inline-form label,
.form-grid label,
.stack-form label {
  display: grid;
  gap: 7px;
  color: #475467;
  font-size: 13px;
}
.inline-form input,
.inline-form select,
.inline-form textarea,
.form-grid input,
.form-grid select,
.form-grid textarea,
.stack-form input,
.search-form input,
.search-form select {
  min-height: 42px;
  padding: 9px 11px;
  border: 1px solid #d7dce5;
  border-radius: 9px;
  background: #fff;
  color: var(--text);
  outline: none;
}
.inline-form input:focus,
.inline-form select:focus,
.inline-form textarea:focus,
.form-grid input:focus,
.form-grid select:focus,
.form-grid textarea:focus,
.stack-form input:focus,
.search-form input:focus,
.search-form select:focus {
  border-color: #8b83ef;
  box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.1);
}
.check-label {
  display: flex !important;
  align-items: center !important;
  grid-auto-flow: column;
  justify-content: start;
  gap: 8px !important;
  min-height: 42px;
}
.check-label input {
  min-height: 0;
}
.category-list {
  padding: 4px 22px;
}
.category-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding: 14px 0;
  border-bottom: 1px solid var(--line);
}
.category-row:last-child {
  border-bottom: 0;
}
.category-drama-count {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 112px;
  color: var(--muted);
  white-space: nowrap;
}
.category-drama-count strong {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  padding: 5px 10px;
  border-radius: 999px;
  background: #eef0ff;
  color: var(--primary);
  font-size: 14px;
}
.category-translation-editor {
  flex: 0 0 100%;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f8f9fd;
}
.category-translation-editor summary {
  cursor: pointer;
  color: var(--primary);
  font-weight: 700;
}
.category-translation-form {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 16px 0 12px;
}
.category-translation-form label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; }
.category-translation-form .form-actions { grid-column: 1 / -1; }
@media (max-width: 1200px) {.category-translation-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }}
.platform-list {
  padding: 4px 22px;
}
.platform-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 0;
  border-bottom: 1px solid var(--line);
}
.platform-row:last-child {
  border-bottom: 0;
}
.platform-form label {
  min-width: 120px;
}
.platform-form label:nth-of-type(3) {
  min-width: 210px;
}
.search-form {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.bulk-import-form {
  display: grid;
  grid-template-columns: minmax(180px, 240px) minmax(360px, 1fr) auto;
  align-items: end;
  gap: 16px;
  padding: 20px 22px;
}
.bulk-import-form label {
  display: grid;
  gap: 7px;
  color: #475467;
  font-size: 13px;
}
.bulk-import-form select,
.bulk-import-form textarea {
  width: 100%;
  min-height: 42px;
  padding: 9px 11px;
  border: 1px solid #d7dce5;
  border-radius: 9px;
  background: #fff;
  color: var(--text);
  outline: none;
}
.bulk-import-form textarea { resize: vertical; }
.import-jobs { border-top: 1px solid var(--line); }
.import-url { display: block; max-width: 360px; overflow: hidden; text-overflow: ellipsis; }
.pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 22px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: 13px;
}
.pagination > div { display: flex; align-items: center; gap: 6px; }
.pagination a {
  min-width: 34px;
  padding: 8px 10px;
  border: 1px solid #d7dce5;
  border-radius: 8px;
  background: #fff;
  color: var(--text);
  text-align: center;
}
.pagination a.active {
  border-color: var(--primary);
  background: var(--primary);
  color: #fff;
}
.form-panel {
  padding: 26px;
}
.form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.span-2 {
  grid-column: span 2;
}
.form-grid textarea {
  resize: vertical;
}
.form-grid small {
  color: var(--muted);
}
.form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 26px;
  padding-top: 22px;
  border-top: 1px solid var(--line);
}

.permission-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
    margin-top: 12px;
}
.permission-option {
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    gap: 9px;
    padding: 11px 12px;
    border: 1px solid #e4e7ec;
    border-radius: 10px;
    background: #fff;
    font-weight: 500 !important;
}
.permission-option input { width: auto !important; margin: 0; }
.permission-field.is-disabled .permission-grid { opacity: .5; }
.permission-summary { max-width: 460px; }
.permission-tag {
    display: inline-block;
    margin: 2px 4px 2px 0;
    padding: 3px 8px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 12px;
}
.muted { color: #667085; font-size: 12px; margin-top: 4px; }
.current-media {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  border-radius: 10px;
  background: #f7f8fa;
  color: var(--muted);
  font-size: 13px;
}
.context-bar {
  margin-bottom: 18px;
  padding: 18px 20px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.context-bar > div {
  display: flex;
  align-items: center;
  gap: 10px;
}
.context-bar span {
  color: var(--muted);
}
.account-summary {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 24px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--line);
}
.account-summary .avatar {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background: #111827;
  color: #fff;
  font-weight: 800;
}
.account-summary strong,
.account-summary span {
  display: block;
}
.account-summary span {
  margin-top: 5px;
  color: var(--muted);
  font-size: 13px;
}
.password-form {
  max-width: 720px;
}
.login-page {
  display: grid;
  place-items: center;
  padding: 24px;
  background: radial-gradient(
    circle at top,
    #26345c 0,
    #0c1220 52%,
    #090d16 100%
  );
}
.login-card {
  width: min(430px, 100%);
  padding: 40px;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 30px 100px rgba(0, 0, 0, 0.35);
}
.login-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: var(--text);
  font-size: 20px;
}
.login-card h1 {
  margin: 30px 0 8px;
  text-align: center;
  font-size: 26px;
}
.login-card > p {
  margin: 0 0 24px;
  text-align: center;
  color: var(--muted);
}
.stack-form {
  display: grid;
  gap: 17px;
}
.back-home {
  display: block;
  margin-top: 24px;
  text-align: center;
  color: var(--muted);
  font-size: 14px;
}
@media (max-width: 900px) {
  .stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .sidebar {
    transform: translateX(-100%);
    transition: 0.2s;
  }
  .main {
    margin-left: 0;
  }
  .menu-open .sidebar {
    transform: translateX(0);
  }
  .menu-button {
    display: block;
  }
  .content {
    padding: 20px;
  }
  .topbar {
    padding: 0 20px;
  }
  .form-grid {
    grid-template-columns: 1fr;
  }
  .bulk-import-form {
    grid-template-columns: 1fr;
    align-items: stretch;
  }
  .span-2 {
    grid-column: span 1;
  }
  .context-bar {
    align-items: flex-start;
    gap: 14px;
  }
  .context-bar,
  .context-bar > div {
    flex-wrap: wrap;
  }
}
@media (max-width: 560px) {
  .stats-grid {
    grid-template-columns: 1fr;
  }
  .account > span {
    display: none;
  }
  .panel-head,
  .category-row,
  .platform-row {
    align-items: stretch;
    flex-direction: column;
  }
  .inline-form.grow {
    align-items: stretch;
  }
  .form-panel,
  .login-card {
    padding: 24px;
  }
  .form-actions {
    flex-wrap: wrap;
  }
  .form-actions .button {
    flex: 1;
  }
  .pagination {
    align-items: flex-start;
    flex-direction: column;
  }
  .pagination > div { flex-wrap: wrap; }
  .context-bar {
    flex-direction: column;
  }
}
.language-admin-grid{display:grid;gap:12px}.language-row{display:grid;grid-template-columns:120px 1fr 1fr 90px auto auto auto auto;gap:10px;align-items:end;padding:14px;border:1px solid #e4e7ec;border-radius:12px;background:#fff}.language-row label{margin:0}.language-create{margin-top:18px}.language-create summary,.translation-group summary{cursor:pointer;font-weight:700}.translation-form{display:grid;gap:14px}.translation-group{border:1px solid #e4e7ec;border-radius:12px;background:#fff}.translation-group>summary{padding:15px 18px}.translation-group>summary span{float:right;color:#98a2b3;font-weight:400}.translation-fields{display:grid;gap:14px;padding:4px 18px 18px}.translation-fields label{display:grid;grid-template-columns:minmax(250px,.8fr) 1.6fr;gap:16px;align-items:start}.translation-fields label span{display:grid;gap:5px}.translation-fields small{color:#667085;line-height:1.5}.translation-fields textarea,.translation-editor textarea{width:100%;resize:vertical}.translation-source{padding:18px;border-radius:12px;background:#f8fafc}.translation-source h3{margin:10px 0}.translation-source p{color:#475467;line-height:1.7}.translation-editor{display:grid;gap:14px}.drama-translation{scroll-margin-top:20px}@media(max-width:1100px){.language-row{grid-template-columns:repeat(2,minmax(0,1fr))}.translation-fields label{grid-template-columns:1fr}}
.operation-section-form{padding:14px;border-radius:12px;background:rgba(255,255,255,.035);margin-bottom:16px}.operation-item-editor{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:end;padding:18px;border:1px solid #e6e9f0;border-radius:12px;background:#fbfcff;margin-bottom:18px}.operation-item-editor label{display:flex;min-width:0;flex-direction:column;gap:7px;color:#344054;font-size:13px}.operation-item-editor .drama-search-field{min-width:0}.operation-item-editor input:not([type="checkbox"]),.operation-item-editor select,.operation-item-editor textarea{display:block;width:100%;max-width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid #d7dce5;border-radius:9px;background:#fff;color:var(--text);outline:none}.operation-item-editor input:not([type="checkbox"]):focus,.operation-item-editor select:focus,.operation-item-editor textarea:focus{border-color:#8b83ef;box-shadow:0 0 0 3px rgba(79,70,229,.1)}.operation-item-editor .operation-wide{grid-column:1/-1}.operation-item-editor textarea{resize:vertical;min-height:76px}.operation-item-editor .check-label input{width:auto;min-height:0;padding:0}.operation-item-editor>.button{min-height:42px}.table-actions{display:flex;gap:8px;align-items:center}.table-actions form{margin:0}@media(max-width:1440px){.operation-item-editor{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.operation-item-editor{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.operation-item-editor{grid-template-columns:1fr;padding:14px}}
.operations-filter{padding:18px 20px}.operations-filter .inline-form{align-items:flex-end}.operations-note,.operations-snapshot{color:#667085;font-size:12px;line-height:1.6}.operations-note{margin:12px 0 0}.operations-snapshot{margin:0 0 14px}.operations-section{margin-bottom:18px}.operations-section-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.operations-section-head h2{margin:0 0 4px}.operations-section-head p{margin:0;color:#667085}.operations-kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.operations-kpis .stat-card strong{font-size:25px}.operations-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-bottom:18px}.operations-grid-wide{grid-template-columns:minmax(0,1.35fr) minmax(420px,.65fr)}.operations-dimensions-panel{overflow:hidden}.operations-dimensions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.operations-dimension-card{min-width:0;padding:14px;border:1px solid #e5e9f2;border-radius:12px;background:linear-gradient(180deg,#fbfcff 0%,#fff 100%)}.operations-dimension-card header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.operations-dimension-card h3{font-size:14px;margin:0;color:#344054}.operations-dimension-card header span{flex:none;color:#98a2b3;font-size:11px;background:#f2f4f7;border-radius:999px;padding:3px 8px}.operations-dimension-list{display:grid;gap:1px}.operations-dimension-row{padding:7px 0}.operations-dimension-meta{display:grid;grid-template-columns:minmax(0,1fr) auto 42px;gap:8px;align-items:baseline}.operations-dimension-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#344054;font-size:13px}.operations-dimension-meta strong{font-size:13px;color:#101828;font-variant-numeric:tabular-nums}.operations-dimension-meta small{text-align:right;color:#98a2b3;font-size:11px;font-variant-numeric:tabular-nums}.operations-dimension-track{height:4px;margin-top:5px;overflow:hidden;border-radius:999px;background:#eef2f7}.operations-dimension-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6366f1,#8b5cf6)}.operations-language-switches{margin-top:18px;padding-top:18px;border-top:1px solid #e8ecf2}.operations-language-switch-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.operations-language-switch-head h3{font-size:15px;margin:0 0 3px}.operations-language-switch-head p{margin:0;color:#98a2b3;font-size:11px}.operations-language-switch-head>span{flex:none;color:#6941c6;background:#f4f3ff;border-radius:999px;padding:4px 9px;font-size:11px}.operations-language-switch-list{display:grid;gap:2px}.operations-language-switch-row{padding:8px 0}.operations-language-switch-meta{display:grid;grid-template-columns:minmax(0,1fr) 64px 64px;align-items:center;gap:10px}.operations-language-switch-meta>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#344054;font-size:13px;font-weight:600}.operations-language-switch-meta>span small{display:inline;margin-left:6px;color:#98a2b3;font-size:10px;font-weight:400}.operations-language-switch-meta strong,.operations-language-switch-meta b{text-align:right;color:#101828;font-size:13px;font-variant-numeric:tabular-nums}.operations-language-switch-meta b{color:#6941c6}.operations-language-switch-meta strong small,.operations-language-switch-meta b small{margin-left:2px;color:#98a2b3;font-size:10px;font-weight:400}.operations-table td{vertical-align:top}.operations-table small,.operations-id{display:block;color:#8a93a5;margin-top:4px}.operations-inline-kpis{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px}.operations-inline-kpis span{background:#f5f6fb;border-radius:8px;padding:8px 10px}.operations-alert{color:#b42318;font-weight:700}.operations-quality ul{margin:0;padding:0 0 0 20px;line-height:1.8}.operations-quality code{background:#f1f3f8;border-radius:4px;padding:2px 5px}@media(max-width:1180px){.operations-grid,.operations-grid-wide{grid-template-columns:1fr}.operations-dimensions{grid-template-columns:repeat(4,minmax(180px,1fr));overflow-x:auto;padding-bottom:4px}}@media(max-width:900px){.operations-dimensions{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}}@media(max-width:760px){.operations-filter .inline-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.operations-filter .inline-form button{grid-column:1/-1}.operations-dimensions{grid-template-columns:1fr}.operations-dimension-card{padding:12px}.operations-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.operations-filter .inline-form,.operations-kpis{grid-template-columns:1fr}.operations-language-switch-meta{grid-template-columns:minmax(0,1fr) 54px 54px}}
