@import url("/shared/theme.css?v=1.0.0");

:root {
  color-scheme: light;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ink: #17202a;
  --muted: #637083;
  --line: #d8dee8;
  --panel: #ffffff;
  --bg: #eef2f6;
  --accent: var(--theme-accent);
  --accent-strong: var(--theme-strong);
  --accent-soft: var(--theme-soft);
  --green: #27745c;
  --red: #af3c3c;
  --amber: #a86d1d;
  --surface-subtle: #f6f8fa;
  --surface-quiet: #fbfcfd;
  --focus-ring: rgba(var(--theme-rgb), 0.14);
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--bg);
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  border: 0;
  cursor: pointer;
}

.operator-login-gate {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  padding: 24px;
  overflow: auto;
  background: #eef2f6;
}

.operator-login-panel {
  width: min(100%, 440px);
  padding: 28px;
  border: 1px solid #cbd7df;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(23, 32, 42, .14);
}

.operator-login-brand {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  margin-bottom: 24px;
}

.operator-login-brand img {
  width: 64px;
  height: 64px;
  padding: 5px;
  border: 1px solid var(--line);
  border-radius: 8px;
  object-fit: contain;
}

.operator-login-brand h1 { font-size: 22px; }
.operator-login-brand p { margin-top: 6px; color: var(--muted); font-size: 13px; line-height: 1.55; }

.operator-login-field {
  display: grid;
  gap: 7px;
  margin-top: 14px;
  color: #40505e;
  font-size: 13px;
  font-weight: 750;
}

.operator-login-field b { color: #b13f36; font-size: 11px; }

.operator-login-field input {
  width: 100%;
  min-height: 46px;
  padding: 10px 12px;
  border: 1px solid #bdcbd5;
  border-radius: 7px;
  outline: none;
  background: #fff;
  color: var(--ink);
}

.operator-login-field input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(var(--theme-rgb), 0.12); }
.operator-login-error { min-height: 20px; margin-top: 10px; color: var(--red); font-size: 12px; }
.operator-login-error.success { color: var(--green); }
.operator-login-button { width: 100%; min-height: 46px; }
.operator-login-secondary { width: 100%; min-height: 40px; margin-top: 8px; border: 1px solid #c8d7de; border-radius: 7px; background: #fff; color: var(--accent-strong); font-size: 13px; font-weight: 800; }
.operator-login-secondary:hover { border-color: var(--accent); background: #f1f8fa; }
.operator-login-note { margin-top: 12px; color: var(--muted); font-size: 12px; line-height: 1.55; text-align: center; }

.operator-session {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 10px;
  align-items: center;
  margin-bottom: 14px;
  padding: 10px;
  border: 1px solid #c7d9e1;
  border-radius: 7px;
  background: #f2f8fa;
}

.operator-session span { grid-column: 1; color: var(--muted); font-size: 11px; }
.operator-session strong { grid-column: 1; min-width: 0; overflow-wrap: anywhere; color: var(--accent-strong); font-size: 14px; }
.operator-session button { grid-column: 2; grid-row: 1 / span 2; align-self: center; }
.managed-access-state { display: grid; gap: 3px; padding: 10px; border: 1px solid #d7e2e7; border-radius: 7px; background: #fff; }
.managed-access-state span { color: var(--muted); font-size: 11px; }
.managed-access-state strong { color: var(--ink); font-size: 14px; }
.managed-access-state small { color: var(--accent-strong); font-size: 11px; line-height: 1.45; }

.admin-workspace { width: min(1440px, calc(100% - 32px)); margin: 0 auto; padding: 28px 0 56px; }
.admin-topbar { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; margin-bottom: 18px; }
.admin-topbar h2 { margin: 4px 0 5px; font-size: 28px; }
.admin-topbar p { margin: 0; color: var(--muted); }
.admin-top-actions { display: flex; align-items: center; gap: 10px; }
.admin-top-actions > span { padding: 6px 9px; border: 1px solid #c7d9e1; border-radius: 5px; background: #f2f8fa; color: var(--accent-strong); font-size: 12px; font-weight: 800; }
.admin-tabs { display: flex; gap: 4px; margin-bottom: 14px; padding: 4px; border: 1px solid var(--line); border-radius: 7px; background: #edf2f4; }
.admin-tabs button { min-height: 38px; padding: 7px 14px; border: 0; border-radius: 5px; background: transparent; color: #5b6b78; cursor: pointer; font-size: 13px; font-weight: 800; }
.admin-tabs button.active { background: #fff; color: var(--accent-strong); box-shadow: 0 1px 5px rgba(23, 49, 66, .1); }
.admin-tab-panel { display: none; }
.admin-tab-panel.active { display: grid; gap: 14px; }
.admin-date-filter { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 7px; background: #fff; }
.admin-date-filter.loading { opacity: .68; pointer-events: none; }
.admin-date-heading { min-width: 240px; }
.admin-date-heading span,.admin-date-heading strong,.admin-date-heading small { display: block; }
.admin-date-heading span { color: var(--theme-strong); font-size: 11px; font-weight: 800; }
.admin-date-heading strong { margin-top: 2px; color: var(--ink); font-size: 16px; }
.admin-date-heading small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.admin-date-controls { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.admin-date-presets { display: inline-flex; align-items: center; gap: 3px; padding: 3px; border: 1px solid #d5e0e5; border-radius: 6px; background: #edf2f4; }
.admin-date-presets button { min-height: 34px; padding: 6px 12px; border-radius: 4px; background: transparent; color: #536674; font-size: 12px; font-weight: 800; }
.admin-date-presets button.active { background: #fff; color: var(--accent-strong); box-shadow: 0 1px 4px rgba(23, 49, 66, .12); }
.admin-custom-date-fields { display: flex; align-items: flex-end; gap: 7px; }
.admin-custom-date-fields label span { display: block; margin-bottom: 3px; color: var(--muted); font-size: 9px; font-weight: 700; }
.admin-custom-date-fields > span { padding-bottom: 9px; color: var(--muted); font-size: 11px; }
.admin-custom-date-fields input { width: 142px; min-height: 36px; padding: 6px 8px; border: 1px solid var(--line); border-radius: 4px; background: #fff; color: var(--ink); font-size: 12px; }
.admin-login-panel { width: min(520px, 100%); margin: 68px auto; padding: 28px; border: 1px solid var(--line); border-radius: 8px; background: #fff; box-shadow: 0 12px 34px rgba(21, 49, 69, .08); }
.admin-login-panel h3 { margin: 0; font-size: 20px; }
.admin-login-panel p { color: var(--muted); margin: 5px 0 0; }
.admin-lock-mark { display: grid; place-items: center; width: 36px; height: 36px; margin-bottom: 14px; color: var(--theme-on-accent); background: var(--accent); font-weight: 800; }
.admin-login-form { display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: end; margin-top: 22px; }
.admin-login-form .field { min-width: 0; }
.admin-login-form input { min-height: 42px; }
.admin-login-form button { min-height: 42px; white-space: nowrap; }
.admin-login-error { min-height: 20px; margin: 10px 0 0 !important; color: var(--red) !important; font-size: 12px; }
.admin-summary-grid { display: grid; grid-template-columns: repeat(5, minmax(150px, 1fr)); gap: 10px; margin-bottom: 14px; }
.admin-summary-card { padding: 15px; border: 1px solid var(--line); border-radius: 7px; background: #fff; }
.admin-summary-card span { display: block; color: var(--muted); font-size: 12px; }
.admin-summary-card b { display: block; margin-top: 4px; color: var(--accent-strong); font-size: 24px; }
.admin-summary-card small { display: block; margin-top: 4px; color: var(--muted); font-size: 11px; }
.admin-dashboard-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 14px; }
.admin-panel { overflow: hidden; border: 1px solid var(--line); border-radius: 7px; background: #fff; }
.admin-ai-image-auth-state { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 18px; padding: 18px; color: var(--muted); font-size: 13px; }
.admin-ai-image-auth-state strong { grid-column: 1 / -1; color: var(--accent-strong); font-size: 18px; }
.admin-ai-image-auth-state.attention strong { color: var(--red); }
.admin-ai-image-auth-state span { overflow-wrap: anywhere; }
.admin-ai-image-auth-actions { padding: 0 18px 18px; align-items: center; }
.admin-ai-image-auth-actions p { margin: 0; color: var(--muted); font-size: 12px; }
.admin-panel > header { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 15px 17px; border-bottom: 1px solid var(--line); }
.admin-panel > header span { display: block; color: var(--theme-strong); font-size: 11px; font-weight: 800; }
.admin-panel > header h3 { margin: 2px 0 0; font-size: 17px; }
.admin-panel > header input,.admin-panel > header select { min-height: 36px; border: 1px solid var(--line); border-radius: 4px; padding: 7px 9px; background: #fff; }
.admin-panel > header input { width: min(290px, 42vw); }
.admin-task-filters { display: flex; gap: 7px; }
.admin-list { padding: 4px 16px 12px; }
.admin-list-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 16px; align-items: center; padding: 12px 0; border-bottom: 1px solid #e9eff2; }
.admin-list-row:last-child { border-bottom: 0; }
.admin-list-row b, .admin-list-row small { display: block; }
.admin-list-row small { color: var(--muted); font-size: 12px; }
.admin-list-row strong { color: var(--accent-strong); font-size: 15px; white-space: nowrap; }
.admin-list-row em { color: var(--muted); font-style: normal; font-size: 12px; white-space: nowrap; }
.admin-spend-details { display: flex; gap: 4px; flex-wrap: wrap; margin-top: 5px; }
.admin-spend-details i { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 2px 5px; border-radius: 3px; background: var(--theme-softer); color: var(--accent-strong); font-size: 10px; font-style: normal; }
.admin-cost-bar { height: 5px; margin-top: 7px; overflow: hidden; background: #e9eef1; }
.admin-cost-bar i { display: block; height: 100%; background: var(--accent); }
.admin-task-list { max-height: 640px; overflow: auto; }
.admin-task-row { display: grid; grid-template-columns: 150px minmax(145px, .75fr) minmax(210px, 1.35fr) 100px 68px 100px 112px; gap: 12px; align-items: center; padding: 12px 17px; border-bottom: 1px solid #e9eff2; }
.admin-task-row:hover { background: #f7fafb; }
.admin-task-row > span { min-width: 0; }
.admin-task-row b, .admin-task-row small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-task-row small { color: var(--muted); font-size: 11px; }
.admin-task-status { display: inline-flex; width: max-content; padding: 2px 7px; border-radius: 999px; background: #edf2f4; color: #465668; font-size: 11px; font-style: normal; }
.admin-task-status.completed { background: #e7f6ed; color: #1c7446; }
.admin-task-status.failed { background: #fff0ee; color: #b42318; }
.admin-task-actions { display: flex; justify-content: flex-end; gap: 5px; }
.admin-task-actions button,.admin-task-actions a { border: 1px solid var(--line); border-radius: 4px; background: #fff; color: var(--accent-strong); padding: 5px 7px; cursor: pointer; font-size: 12px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.admin-task-actions button:hover,.admin-task-actions a:hover { border-color: var(--accent); background: var(--theme-softer); }
.admin-asset-dialog { width: min(1240px, calc(100% - 24px)); height: min(86vh, 900px); max-height: none; padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 20px 65px rgba(16, 35, 49, .25); }
.admin-asset-dialog::backdrop { background: rgba(20, 37, 51, .48); }
.admin-asset-dialog header { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; padding: 16px 18px; border-bottom: 1px solid var(--line); }
.admin-asset-dialog header span { display: block; color: var(--theme-strong); font-size: 11px; font-weight: 800; }
.admin-asset-dialog header h3 { margin: 3px 0 0; font-size: 18px; }
.admin-asset-dialog header button { border: 0; background: transparent; color: var(--muted); font-size: 27px; line-height: 1; cursor: pointer; }
.admin-asset-dialog-body { display: grid; grid-template-columns: minmax(0, 1fr) 330px; height: calc(100% - 82px); background: #f6f9fa; }
.admin-asset-preview { display: grid; min-width: 0; grid-template-rows: auto minmax(0, 1fr); padding: 18px; }
.admin-asset-preview-head { display: flex; align-items: center; gap: 8px; min-width: 0; padding: 0 0 10px; }
.admin-asset-preview-head span { flex: 1; overflow: hidden; color: var(--ink); font-size: 13px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.admin-asset-preview-head a { border: 1px solid var(--line); border-radius: 4px; background: #fff; color: var(--accent-strong); padding: 5px 7px; font-size: 11px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.admin-asset-preview-content { display: grid; min-height: 0; place-items: center; overflow: hidden; border: 1px solid var(--line); border-radius: 6px; background: #fff; }
.admin-asset-preview-content > img { display: block; width: 100%; height: 100%; object-fit: contain; background: repeating-conic-gradient(#f1f4f5 0 25%, #fff 0 50%) 50% / 20px 20px; }
.admin-asset-preview-content > iframe { width: 100%; height: 100%; border: 0; background: #fff; }
.admin-file-preview { max-width: 430px; padding: 32px; text-align: center; }
.admin-file-preview b { display: block; color: var(--accent-strong); font-size: 18px; }
.admin-file-preview p { margin: 10px 0 0; color: var(--muted); font-size: 14px; line-height: 1.65; }
.admin-asset-dialog-list { min-width: 0; overflow: auto; padding: 14px; border-left: 1px solid var(--line); background: #fff; }
.admin-asset-list-title { padding: 0 2px 10px; color: var(--ink); font-size: 13px; font-weight: 800; }
.admin-asset-list-title small { color: var(--muted); font-weight: 500; }
.admin-asset-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px; align-items: center; min-width: 0; margin-bottom: 7px; padding: 7px; border: 1px solid var(--line); border-radius: 5px; background: #fff; }
.admin-asset-card.active { border-color: #6aa8b9; background: var(--theme-softer); }
.admin-asset-card button { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 8px; align-items: center; min-width: 0; border: 0; background: transparent; color: inherit; padding: 0; cursor: pointer; text-align: left; }
.admin-asset-card button > img,.admin-asset-kind { display: block; width: 46px; height: 46px; border-radius: 4px; object-fit: cover; background: #edf2f4; }
.admin-asset-kind { display: grid; place-items: center; color: var(--accent-strong); font-size: 10px; font-weight: 800; }
.admin-asset-card b,.admin-asset-card small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-asset-card b { color: var(--ink); font-size: 12px; }
.admin-asset-card small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.admin-asset-card a { color: var(--accent-strong); font-size: 11px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.admin-source-assets { margin-top: 14px; border-top: 1px solid var(--line); padding-top: 12px; }
.admin-source-assets summary { color: var(--muted); cursor: pointer; font-size: 12px; font-weight: 700; }
.admin-source-assets > div { margin-top: 8px; }
.admin-empty { padding: 26px 17px; color: var(--muted); text-align: center; }
.admin-access-panel { overflow: visible; }
.admin-registration-count { padding: 4px 8px; border-radius: 4px; background: #fff4df; color: #945f13; font-size: 12px; white-space: nowrap; }
.admin-registration-card > summary em.pending { background: #fff4df; color: #945f13; }
.admin-registration-card .admin-account-editor { grid-template-columns: repeat(2, minmax(220px, 1fr)); }
.admin-registration-help { grid-column: 1 / -1; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.admin-access-form { display: grid; grid-template-columns: repeat(3, minmax(180px, 1fr)); gap: 13px; padding: 17px; }
.admin-api-form { grid-template-columns: minmax(180px, .5fr) minmax(300px, 1.5fr); }
.admin-api-selection-form { grid-template-columns: 1fr; }
.admin-selection-help { display: block; margin-top: 8px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.admin-form-span { grid-column: 1 / -1; }
.admin-field-title { display: block; margin-bottom: 7px; color: #40505e; font-size: 12px; font-weight: 800; }
.admin-choice-grid { display: flex; flex-wrap: wrap; gap: 7px; }
.admin-choice-grid label { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 6px 9px; border: 1px solid #d7e2e7; border-radius: 5px; background: #fff; color: #40505e; cursor: pointer; font-size: 12px; font-weight: 700; }
.admin-choice-grid label:has(input:checked) { border-color: #79aeba; background: var(--theme-softer); color: var(--accent-strong); }
.admin-choice-grid input { width: 15px; height: 15px; accent-color: var(--accent); }
.admin-choice-empty { display: block; padding: 10px; border: 1px dashed #cbd7df; color: var(--muted); font-size: 12px; }
.admin-form-actions { grid-column: 1 / -1; display: flex; align-items: center; gap: 12px; }
.admin-form-actions p { margin: 0; color: var(--accent-strong); font-size: 12px; }
.admin-account-list { padding: 8px 15px 15px; }
.admin-account-card { border-bottom: 1px solid #e6edef; }
.admin-account-card:last-child { border-bottom: 0; }
.admin-account-card > summary { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 13px 2px; cursor: pointer; list-style: none; }
.admin-account-card > summary::-webkit-details-marker { display: none; }
.admin-account-card > summary span { min-width: 0; }
.admin-account-card > summary b,.admin-account-card > summary small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-account-card > summary b { color: var(--ink); font-size: 14px; }
.admin-account-card > summary small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.admin-account-card > summary em { padding: 3px 7px; border-radius: 4px; font-size: 11px; font-style: normal; font-weight: 800; white-space: nowrap; }
.admin-account-card > summary em.active { background: #e7f6ed; color: #1c7446; }
.admin-account-card > summary em.disabled { background: #eef1f3; color: #66737d; }
.admin-account-editor { display: grid; grid-template-columns: repeat(3, minmax(180px, 1fr)); gap: 12px; margin: 0 0 14px; padding: 14px; border: 1px solid #dbe5e9; border-radius: 6px; background: #f8fafb; }
.admin-account-editor input,.admin-account-editor select { min-height: 40px; }
.admin-account-actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
.admin-account-actions span { color: var(--accent-strong); font-size: 12px; }
.admin-account-actions .danger { border-color: #efc3bf; color: #a7352e; background: #fff; }
.admin-assignment-note { padding: 9px; border: 1px solid #dce6ea; background: #fff; color: var(--muted); font-size: 12px; }
.admin-api-usage { overflow: hidden; border: 1px solid #d7e3e8; border-radius: 6px; background: #fff; }
.admin-api-usage-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px; border-bottom: 1px solid #e4ecef; }
.admin-api-usage-head b { color: var(--ink); font-size: 13px; }
.admin-api-usage-head span { color: var(--muted); font-size: 10px; }
.admin-api-usage-grid { display: grid; grid-template-columns: repeat(4, minmax(120px, 1fr)); }
.admin-api-usage-grid article { padding: 11px 12px; border-right: 1px solid #e8eef1; }
.admin-api-usage-grid article:last-child { border-right: 0; }
.admin-api-usage-grid span,.admin-api-usage-grid small { display: block; color: var(--muted); font-size: 10px; }
.admin-api-usage-grid b { display: block; margin: 2px 0; color: var(--accent-strong); font-size: 19px; }
.admin-api-usage-foot { display: flex; justify-content: space-between; gap: 12px; padding: 8px 12px; border-top: 1px solid #e8eef1; background: #f7fafb; color: var(--muted); font-size: 10px; }
.admin-api-usage-empty { display: flex; justify-content: space-between; gap: 12px; padding: 12px; color: var(--muted); font-size: 11px; }
.admin-api-usage-empty b { color: var(--ink); }
.employee-share-dialog { width: min(720px, calc(100% - 24px)); max-height: 90vh; padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 20px 65px rgba(16, 35, 49, .25); }
.employee-share-dialog::backdrop { background: rgba(20, 37, 51, .48); }
.employee-share-dialog > header { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; padding: 16px 18px; border-bottom: 1px solid var(--line); }
.employee-share-dialog > header span { display: block; color: var(--theme-strong); font-size: 11px; font-weight: 800; }
.employee-share-dialog > header h3 { margin: 3px 0 0; font-size: 18px; }
.employee-share-dialog > header button { border: 0; background: transparent; color: var(--muted); font-size: 27px; line-height: 1; cursor: pointer; }
.employee-share-body { max-height: calc(90vh - 75px); overflow: auto; padding: 18px; background: #f4f8f9; }
.employee-share-card { overflow: hidden; border: 1px solid #d5e2e7; border-radius: 7px; background: #fff; }
.employee-share-brand { padding: 18px; background: var(--accent); color: var(--theme-on-accent); }
.employee-share-brand span,.employee-share-brand b { display: block; }
.employee-share-brand span { font-size: 11px; font-weight: 800; }
.employee-share-brand b { margin-top: 3px; font-size: 21px; }
.employee-share-login { display: grid; grid-template-columns: 1fr 1fr; margin: 0; padding: 8px 18px 14px; }
.employee-share-login > div { min-width: 0; padding: 10px 0; border-bottom: 1px solid #e8eef1; }
.employee-share-login > div:nth-child(odd) { padding-right: 18px; }
.employee-share-login dt { color: var(--muted); font-size: 10px; }
.employee-share-login dd { margin: 3px 0 0; overflow-wrap: anywhere; color: var(--ink); font-size: 14px; font-weight: 800; }
.employee-share-login .employee-share-pin { color: var(--accent-strong); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 19px; letter-spacing: 2px; }
.employee-share-features { padding: 0 18px 14px; }
.employee-share-features h4 { margin: 0 0 8px; font-size: 13px; }
.employee-share-features article { display: grid; grid-template-columns: minmax(120px, .45fr) minmax(0, 1fr); gap: 10px; padding: 8px 0; border-top: 1px solid #e8eef1; }
.employee-share-features article b { font-size: 12px; }
.employee-share-features article span,.employee-share-features p { color: var(--muted); font-size: 11px; line-height: 1.5; }
.employee-share-notice { margin: 0; padding: 10px 18px; background: #eef6f8; color: #486170; font-size: 11px; }
.employee-share-message { min-height: 18px; margin: 10px 0 0; color: var(--accent-strong); font-size: 11px; }
.employee-share-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 4px; }
.api-key-reveal-dialog { width: min(680px, calc(100% - 24px)); }
.api-key-reveal-body { padding: 18px; background: #f4f8f9; }
.api-key-reveal-body input { width: 100%; min-height: 44px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; }
.api-key-reveal-notice { margin: 10px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.api-key-reveal-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 14px; }
.api-key-reveal-actions span { color: var(--accent-strong); font-size: 12px; }
.admin-audit-list { max-height: 680px; overflow: auto; padding: 8px 16px 16px; }
.admin-audit-list article { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 14px; padding: 11px 0; border-bottom: 1px solid #e7edef; }
.admin-audit-list time { color: var(--muted); font-size: 11px; }
.admin-audit-list b,.admin-audit-list small { display: block; }
.admin-audit-list b { font-size: 13px; }
.admin-audit-list small { margin-top: 3px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.admin-development-panel,.admin-manual-panel { min-height: 620px; }
.admin-development-list { padding: 2px 18px 22px; }
.admin-development-entry { display: grid; grid-template-columns: 156px minmax(0, 1fr); gap: 18px; padding: 18px 0; border-bottom: 1px solid #e5ecef; }
.admin-development-entry time { padding-top: 3px; color: var(--muted); font-size: 11px; font-variant-numeric: tabular-nums; }
.admin-development-entry > div { min-width: 0; }
.admin-development-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.admin-development-heading h4 { margin: 0; color: var(--ink); font-size: 14px; line-height: 1.55; }
.admin-development-heading span { flex: 0 0 auto; padding: 3px 7px; border-radius: 4px; background: var(--theme-softer); color: var(--accent-strong); font-size: 9px; font-weight: 800; }
.admin-development-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.admin-development-meta span { padding: 3px 7px; border-radius: 4px; background: #f2f6f7; color: #667b85; font-size: 9px; font-weight: 700; }
.admin-development-details { display: grid; gap: 8px; margin-top: 12px; }
.admin-development-details article { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 10px; padding: 10px 11px; border: 1px solid #e0e9ec; border-radius: 6px; background: #fbfcfd; }
.admin-development-details article > span { align-self: start; padding: 3px 5px; border-radius: 4px; background: #eaf3f5; color: var(--theme-strong); font-size: 9px; font-weight: 900; text-align: center; }
.admin-development-details article > span[data-change-type="新增"] { background: #e8f5ee; color: #26734d; }
.admin-development-details article > span[data-change-type="修复"] { background: #fff0ea; color: #a54a28; }
.admin-development-details article > span[data-change-type="优化"] { background: #eef1fb; color: #4c5c9b; }
.admin-development-details article > span[data-change-type="测试"] { background: #f2edf8; color: #73528f; }
.admin-development-details b,.admin-development-details small { display: block; }
.admin-development-details b { color: var(--ink); font-size: 12px; line-height: 1.5; }
.admin-development-details small { margin-top: 3px; color: var(--accent-strong); font-size: 9px; font-weight: 700; }
.admin-development-details p { margin: 4px 0 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.admin-development-files { margin-top: 9px; color: var(--muted); font-size: 10px; }
.admin-development-files summary { width: max-content; max-width: 100%; cursor: pointer; color: var(--accent-strong); font-weight: 750; }
.admin-development-files ul { display: grid; gap: 4px; max-height: 180px; margin: 7px 0 0; padding: 8px 10px 8px 25px; overflow: auto; border-radius: 5px; background: #f5f8f9; font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace; font-size: 9px; line-height: 1.5; }
@media (max-width: 720px) {
  .admin-development-entry { grid-template-columns: 1fr; gap: 7px; }
  .admin-development-entry time { padding-top: 0; }
  .admin-development-heading { flex-direction: column; gap: 7px; }
}
.admin-deployment-panel { min-height: 360px; }
.admin-deployment-body { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; padding: 18px; }
.admin-deployment-rule { min-width: 0; padding: 16px; border: 1px solid #dce7ea; border-radius: 7px; background: #f7fafb; }
.admin-deployment-rule b,.admin-deployment-rule span { display: block; }
.admin-deployment-rule b { color: var(--ink); font-size: 13px; }
.admin-deployment-rule span { margin-top: 6px; color: var(--muted); font-size: 11px; line-height: 1.6; }
.admin-deployment-message { grid-column: 1 / -1; margin: 2px 0 0; padding: 11px 13px; border-left: 3px solid var(--accent); background: var(--theme-softer); color: #44606b; font-size: 11px; line-height: 1.6; }
@media (max-width: 720px) {
  .admin-deployment-body { grid-template-columns: 1fr; }
}
.admin-manual-actions { display: flex; flex-wrap: wrap; gap: 7px; }
.admin-manual-actions a { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.admin-manual-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 14px 18px; border-bottom: 1px solid #e3ebee; background: #f7fafb; }
.admin-manual-toolbar > div { min-width: 0; }
.admin-manual-toolbar strong,.admin-manual-toolbar span { display: block; }
.admin-manual-toolbar strong { color: var(--ink); font-size: 13px; }
.admin-manual-toolbar span { margin-top: 3px; color: var(--muted); font-size: 10px; }
.admin-manual-toolbar label { flex: 0 1 380px; }
.admin-manual-toolbar input { width: 100%; min-height: 38px; border: 1px solid #cfdbdf; border-radius: 6px; padding: 0 11px; background: #fff; }
.admin-manual-list { display: grid; gap: 16px; max-height: 720px; overflow: auto; padding: 18px; background: #f7fafb; }
.admin-manual-group { overflow: hidden; border: 1px solid #dbe5e9; border-radius: 7px; background: #fff; }
.admin-manual-group > header { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 12px; align-items: center; padding: 13px 15px; border-bottom: 1px solid #e3ebee; background: #eef5f7; }
.admin-manual-group > header span { grid-column: 1; color: var(--theme-strong); font-size: 9px; font-weight: 800; }
.admin-manual-group > header h4 { grid-column: 1; margin: 0; font-size: 14px; }
.admin-manual-group > header b { grid-column: 2; grid-row: 1 / 3; color: var(--muted); font-size: 10px; }
.admin-manual-group > div { padding: 0 15px; }
.admin-manual-entry { border-bottom: 1px solid #e7edef; }
.admin-manual-entry:last-child { border-bottom: 0; }
.admin-manual-entry summary { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; gap: 11px; align-items: center; min-height: 72px; padding: 11px 0; cursor: pointer; list-style: none; }
.admin-manual-entry summary::-webkit-details-marker { display: none; }
.admin-manual-entry summary > span { display: grid; width: 34px; height: 30px; place-items: center; border-radius: 5px; background: var(--theme-softer); color: var(--accent-strong); font-size: 10px; font-weight: 900; }
.admin-manual-entry summary b,.admin-manual-entry summary small { display: block; }
.admin-manual-entry summary b { color: var(--ink); font-size: 13px; }
.admin-manual-entry summary small { margin-top: 4px; color: var(--muted); font-size: 10px; line-height: 1.45; }
.admin-manual-entry summary i { color: var(--accent-strong); font-size: 10px; font-style: normal; font-weight: 800; }
.admin-manual-entry[open] summary i { color: var(--muted); }
.admin-manual-entry-body { display: grid; grid-template-columns: minmax(210px, .65fr) minmax(0, 1.35fr); margin: 0 0 14px 45px; overflow: hidden; border: 1px solid #dfe8eb; border-radius: 6px; }
.admin-manual-entry-body > section { padding: 14px 15px; }
.admin-manual-entry-body > section + section { border-left: 1px solid #dfe8eb; }
.admin-manual-entry-body h5 { margin: 0 0 8px; font-size: 11px; }
.admin-manual-entry-body ul,.admin-manual-entry-body ol { margin: 0; padding-left: 18px; color: #405361; font-size: 11px; line-height: 1.65; }
.admin-manual-entry-body li + li { margin-top: 4px; }
.admin-manual-entry-body footer { grid-column: 1 / -1; display: flex; gap: 10px; padding: 10px 15px; border-top: 1px solid #dfe8eb; background: #f7fafb; font-size: 11px; }
.admin-manual-entry-body footer b { color: var(--accent-strong); }
.admin-manual-entry-body footer span { color: #405361; }
.admin-menu-panel { min-height: 620px; }
.admin-menu-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.admin-menu-help { padding: 11px 17px; border-bottom: 1px solid #e4ecef; background: #f5f9fa; color: var(--muted); font-size: 12px; line-height: 1.55; }
.admin-menu-workbench { display: grid; grid-template-columns: minmax(560px, 1.35fr) minmax(280px, .65fr); min-height: 520px; }
.admin-menu-workbench > section,.admin-menu-workbench > aside { min-width: 0; padding: 15px; }
.admin-menu-workbench > aside { border-left: 1px solid #e1e9ed; background: #f7fafb; }
.admin-menu-column-title { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 11px; }
.admin-menu-column-title b { font-size: 14px; }
.admin-menu-column-title span { color: var(--muted); font-size: 11px; }
.admin-menu-column-title span.changed { color: #ad5b17; font-weight: 800; }
.admin-menu-tree { min-height: 420px; padding: 8px; border: 1px solid #dbe5e9; border-radius: 7px; background: #f7fafb; }
.admin-menu-level { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.admin-menu-level .admin-menu-level { margin: 7px 0 0 26px; }
.admin-menu-node { position: relative; }
.admin-menu-row { display: grid; grid-template-columns: 30px 72px 108px minmax(145px, 1fr) auto auto; gap: 7px; align-items: center; min-height: 46px; padding: 6px 8px; border: 1px solid #d6e1e6; border-radius: 6px; background: #fff; }
.admin-menu-node.is-feature > .admin-menu-row { grid-template-columns: 30px 72px minmax(145px, 1fr) auto auto; }
.admin-menu-handle { color: #72828c; cursor: grab; font-size: 17px; text-align: center; user-select: none; }
.admin-menu-handle:active { cursor: grabbing; }
.admin-menu-kind { color: var(--muted); font-size: 10px; font-weight: 800; }
.admin-menu-row input[data-menu-label],.admin-menu-icon-input { min-width: 0; min-height: 34px; border: 1px solid #cdd9df; border-radius: 4px; padding: 6px 8px; background: #fff; }
.admin-menu-icon-input { width: 108px; font-size: 11px; }
.admin-menu-visible { display: inline-flex; align-items: center; gap: 5px; color: var(--muted); font-size: 11px; white-space: nowrap; }
.admin-menu-visible input { width: 15px; height: 15px; accent-color: var(--accent); }
.admin-menu-lock { padding: 3px 6px; border-radius: 4px; background: var(--theme-soft); color: var(--accent-strong); font-size: 10px; font-weight: 800; white-space: nowrap; }
.admin-menu-row-actions { display: flex; gap: 5px; }
.admin-menu-row-actions button { min-height: 30px; border: 1px solid #d3dfe4; border-radius: 4px; padding: 4px 7px; background: #fff; color: var(--accent-strong); cursor: pointer; font-size: 10px; font-weight: 800; white-space: nowrap; }
.admin-menu-row-actions button:disabled { cursor: not-allowed; opacity: .4; }
.admin-menu-node.dragging { opacity: .38; }
.admin-menu-node.drag-over-before::before,.admin-menu-node.drag-over-after::after { position: absolute; right: 0; left: 0; z-index: 2; height: 3px; border-radius: 2px; background: var(--accent); content: ""; }
.admin-menu-node.drag-over-before::before { top: -4px; }
.admin-menu-node.drag-over-after::after { bottom: -4px; }
.admin-menu-node.drag-over-inside > .admin-menu-row { border-color: var(--accent); outline: 2px solid rgba(var(--theme-rgb), 0.12); }
.admin-menu-preview { display: grid; gap: 8px; }
.admin-menu-preview-group { overflow: hidden; border: 1px solid #dbe5e9; border-radius: 7px; background: #fff; }
.admin-menu-preview-group > header { display: flex; align-items: center; gap: 8px; padding: 9px 10px; background: #eef4f6; }
.admin-menu-preview-icon { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 5px; background: #fff; color: var(--accent-strong); }
.admin-menu-preview-icon .menu-line-icon { width: 16px; height: 16px; }
.admin-menu-preview-group > header b { min-width: 0; flex: 1; font-size: 12px; }
.admin-menu-preview-group > header small { color: var(--accent-strong); font-size: 9px; }
.admin-menu-preview-group > div { display: grid; gap: 5px; padding: 6px; }
.admin-menu-preview-group.depth-2,.admin-menu-preview-group.depth-3 { border-radius: 5px; }
.admin-menu-preview-feature { padding: 8px 9px; border: 1px solid #e2eaed; border-radius: 4px; color: #40505e; font-size: 11px; font-weight: 700; }
.admin-menu-preview .is-hidden { opacity: .45; }
@media (max-width: 900px) { .admin-workspace { width: min(100% - 18px, 1440px); }.admin-date-filter { align-items: stretch; flex-direction: column; }.admin-date-controls { justify-content: flex-start; }.admin-custom-date-fields { width: 100%; flex-wrap: wrap; }.admin-custom-date-fields label { flex: 1 1 130px; }.admin-custom-date-fields input { width: 100%; }.admin-summary-grid { grid-template-columns: repeat(2, 1fr); }.admin-dashboard-grid { grid-template-columns: 1fr; }.admin-panel > header,.admin-task-filters { align-items: stretch; flex-direction: column; }.admin-panel > header input { width: 100%; }.admin-task-row { grid-template-columns: 1fr auto; gap: 7px; }.admin-task-row > span:nth-child(3) { grid-column: 1 / -1; }.admin-task-row > span:nth-child(4),.admin-task-row > span:nth-child(5),.admin-task-row > span:nth-child(6) { color: var(--muted); }.admin-task-actions { grid-column: 1 / -1; justify-content: flex-start; }.admin-login-form { grid-template-columns: 1fr; }.admin-login-form button { width: 100%; }.admin-asset-dialog { width: calc(100% - 14px); height: min(92vh, 900px); }.admin-asset-dialog-body { grid-template-columns: 1fr; grid-template-rows: minmax(300px, .9fr) minmax(0, 1fr); }.admin-asset-dialog-list { border-top: 1px solid var(--line); border-left: 0; }.admin-asset-preview { padding: 12px; }.admin-asset-preview-head { flex-wrap: wrap; }.admin-tabs { overflow-x: auto; }.admin-tabs button { flex: 0 0 auto; }.admin-access-form,.admin-api-form,.admin-account-editor { grid-template-columns: 1fr; }.admin-form-span,.admin-form-actions,.admin-account-actions { grid-column: 1; }.admin-api-usage-grid { grid-template-columns: repeat(2, 1fr); }.admin-api-usage-grid article:nth-child(2) { border-right: 0; }.admin-api-usage-grid article:nth-child(-n+2) { border-bottom: 1px solid #e8eef1; }.admin-api-usage-foot,.admin-api-usage-empty { align-items: flex-start; flex-direction: column; }.admin-audit-list article { grid-template-columns: 1fr; gap: 4px; }.employee-share-login { grid-template-columns: 1fr; }.employee-share-login > div:nth-child(odd) { padding-right: 0; }.employee-share-features article { grid-template-columns: 1fr; gap: 3px; }.employee-share-actions > button { flex: 1 1 46%; } }
@media (max-width: 900px) {
  .admin-menu-actions { justify-content: flex-start; }
  .admin-menu-workbench { grid-template-columns: 1fr; }
  .admin-menu-workbench > aside { border-top: 1px solid #e1e9ed; border-left: 0; }
  .admin-menu-row,.admin-menu-node.is-feature > .admin-menu-row { grid-template-columns: 28px 62px minmax(120px, 1fr) auto; }
  .admin-menu-icon-input { display: none; }
  .admin-menu-row-actions { grid-column: 3 / -1; }
  .admin-menu-level .admin-menu-level { margin-left: 14px; }
}

.app-shell {
  display: grid;
  grid-template-columns: 340px minmax(0, 1fr);
  min-height: 100vh;
}

.sidebar {
  padding: 20px;
  border-right: 1px solid var(--line);
  background: #f9fbfd;
}

.brand {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
}

.brand-mark {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.brand-mark img {
  width: 100%;
  height: 100%;
  padding: 4px;
  object-fit: contain;
}

h1,
h2,
p {
  margin: 0;
}

h1 {
  font-size: 20px;
  line-height: 1.2;
}

h2 {
  font-size: 18px;
}

.brand p,
.topline p,
.section-heading p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
}

.panel {
  padding: 16px;
  margin-bottom: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
}

.panel-title,
.topline,
.section-heading,
.actions,
.queue-actions,
.task-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.panel-title span {
  color: var(--muted);
  font-size: 12px;
}

.field {
  display: grid;
  gap: 7px;
  color: var(--muted);
  font-size: 13px;
}

.field small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.field + .field,
.checkbox-line {
  margin-top: 12px;
}

input,
select,
textarea {
  width: 100%;
  border: 1px solid #cfd7e3;
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
}

input,
select {
  height: 40px;
  padding: 0 11px;
}

textarea {
  min-height: 180px;
  padding: 12px;
  resize: vertical;
  line-height: 1.5;
}

.prompt-stack {
  display: grid;
  gap: 12px;
  margin-top: 20px;
}

.mode-switch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.page-tabs {
  display: grid;
  gap: 10px;
  margin-bottom: 16px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.nav-group {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(23, 32, 42, 0.04);
}

.nav-group-toggle {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 14px;
  gap: 10px;
  align-items: center;
  width: 100%;
  padding: 11px 12px;
  background: #f7fafc;
  color: var(--ink);
  text-align: left;
}

.nav-group-toggle > .nav-group-icon {
  display: none;
}

.nav-group-toggle span:not(.nav-group-icon) {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.nav-group-toggle strong {
  font-size: 14px;
  font-weight: 850;
}

.nav-group-toggle small {
  overflow: hidden;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nav-group-icon {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: var(--accent-strong);
  box-shadow: none;
  font-size: 16px;
  line-height: 1;
}

.menu-line-icon {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.menu-icon-fallback { font-size: 16px; }

.nav-group.open > .nav-group-toggle {
  background: var(--accent-strong);
  color: #fff;
}

.nav-group.open > .nav-group-toggle .nav-group-icon {
  background: rgba(255, 255, 255, 0.14);
  color: #fff;
}

.nav-group.open > .nav-group-toggle i {
  border-color: #fff;
}

.nav-group-icon-image {
  background: linear-gradient(145deg, var(--theme-softer), var(--theme-soft));
}

.nav-group-icon-market {
  background: linear-gradient(145deg, var(--theme-soft), var(--theme-softer));
}

.nav-group-icon-design {
  background: linear-gradient(145deg, var(--theme-softer), var(--theme-soft));
}

.nav-group-toggle i {
  width: 8px;
  height: 8px;
  border-right: 2px solid #7d8a99;
  border-bottom: 2px solid #7d8a99;
  transform: rotate(45deg);
  transition: transform 0.18s ease;
}

.nav-group.open .nav-group-toggle i {
  transform: rotate(-135deg);
}

.nav-group-body {
  display: none;
  gap: 8px;
  padding: 8px;
  border-top: 1px solid #edf1f5;
  background: #f7fafc;
}

.nav-group.open .nav-group-body {
  display: grid;
}

.nav-submenu { overflow: hidden; border: 1px solid #dce6eb; border-radius: 7px; background: #fff; }
.nav-submenu-toggle { display: grid; grid-template-columns: minmax(0, 1fr) 12px; gap: 8px; align-items: center; width: 100%; padding: 8px 9px; background: #eef4f6; color: var(--ink); text-align: left; }
.nav-submenu-toggle > .nav-group-icon { display: none; }
.nav-submenu-toggle .nav-group-icon { width: 24px; height: 24px; border-radius: 4px; box-shadow: none; background: transparent; font-size: 13px; }
.nav-submenu-toggle .menu-line-icon { width: 15px; height: 15px; }
.nav-submenu.open > .nav-submenu-toggle { background: var(--theme-soft); color: var(--accent-strong); }
.nav-submenu-toggle strong { font-size: 12px; }
.nav-submenu-toggle i { width: 7px; height: 7px; border-right: 2px solid #7d8a99; border-bottom: 2px solid #7d8a99; transform: rotate(45deg); transition: transform .18s ease; }
.nav-submenu.open > .nav-submenu-toggle i { transform: rotate(-135deg); }
.nav-submenu-body { display: none; gap: 6px; padding: 6px; border-top: 1px solid #e5ecef; }
.nav-submenu.open > .nav-submenu-body { display: grid; }
.nav-submenu .nav-submenu { margin-left: 8px; }

.page-tab-item {
  display: grid;
  gap: 7px;
}

.page-tab {
  display: grid;
  gap: 3px;
  min-height: 42px;
  padding: 9px 12px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: var(--muted);
  text-align: left;
  width: 100%;
}

.page-tab.with-menu-icon {
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  column-gap: 9px;
}

.page-tab-icon {
  display: grid;
  grid-row: 1 / span 2;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid #d5e6ea;
  border-radius: 6px;
  background: var(--theme-softer);
  color: var(--accent-strong) !important;
}

.page-tab-icon .menu-line-icon {
  width: 16px;
  height: 16px;
}

.page-tab.with-menu-icon > strong,
.page-tab.with-menu-icon > span:not(.page-tab-icon) {
  grid-column: 2;
}

.page-tab strong {
  color: inherit;
  font-size: 14px;
  font-weight: 800;
}

.page-tab span {
  color: inherit;
  font-size: 12px;
  font-weight: 500;
}

.page-tab.active {
  background: var(--accent);
  border-color: var(--accent);
  color: var(--theme-on-accent);
  box-shadow: 0 8px 20px rgba(var(--theme-rgb), 0.18);
}

.page-tab.active .page-tab-icon {
  border-color: #fff;
  background: #fff;
  color: var(--accent-strong) !important;
}

.paw-order-layout {
  display: grid;
  grid-template-columns: minmax(360px, 0.76fr) minmax(520px, 1.24fr);
  gap: 16px;
  align-items: start;
}

.paw-order-form,
.paw-preview-panel {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
}

.paw-steps {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.paw-review-note {
  display: grid;
  gap: 5px;
  padding: 13px 15px;
  border: 1px solid #b9dce6;
  border-radius: 9px;
  background: #f0fafc;
  color: #285166;
  font-size: 13px;
  line-height: 1.55;
}

.paw-review-note strong {
  color: var(--accent-strong);
  font-size: 14px;
}

.paw-master-template {
  overflow: hidden;
  border: 1px solid #d5e1e8;
  border-radius: 10px;
  background: #fff;
}

.paw-master-template-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 15px 16px 12px;
}

.paw-master-template h3 {
  margin: 0;
  color: var(--ink);
  font-size: 16px;
}

.paw-master-template p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.paw-master-template-head > span {
  flex: 0 0 auto;
  padding: 5px 9px;
  border-radius: 999px;
  background: #e8f5f8;
  color: var(--theme-strong);
  font-size: 12px;
  font-weight: 850;
}

.paw-master-template img {
  display: block;
  width: 100%;
  max-height: 360px;
  object-fit: cover;
  object-position: center;
  border-top: 1px solid #edf1f4;
  border-bottom: 1px solid #edf1f4;
  background: #fff;
}

.paw-region-map {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 12px 14px 14px;
}

.paw-region-map span {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  padding: 7px 9px;
  border: 1px solid #d7e2e8;
  border-radius: 7px;
  background: #f8fbfd;
  color: #405568;
  font-size: 12px;
  font-weight: 750;
}

.paw-region-map b {
  color: var(--theme-strong);
  font-size: 11px;
}

.paw-step {
  position: relative;
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #d8e4ea;
  border-radius: 8px;
  background: #fbfdff;
}

.paw-step::before {
  content: attr(data-step-label);
  position: absolute;
  top: 16px;
  left: 16px;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 7px;
  background: var(--accent-strong);
  color: #fff;
  font-size: 12px;
  font-weight: 900;
}

.paw-step-head {
  display: grid;
  gap: 4px;
  align-content: center;
  min-height: 34px;
  padding-left: 42px;
}

.paw-step-head b,
.paw-card-title {
  color: var(--ink);
  font-size: 15px;
  font-weight: 900;
}

.paw-required-badge {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  margin-left: 6px;
  padding: 2px 7px;
  border-radius: 5px;
  background: #fff0ee;
  color: #b42318;
  font-size: 11px;
  font-style: normal;
  vertical-align: 1px;
}

.paw-order-number-step > .field {
  max-width: 420px;
}

.paw-step-head span,
.paw-part-card p,
.paw-validation {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.paw-field-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  gap: 10px;
}

#pawSplitConfig:not(.hidden) {
  display: grid;
  gap: 12px;
  padding-top: 2px;
}

.paw-color-field input[type="color"] {
  min-height: 42px;
  padding: 4px;
  border-radius: 7px;
  opacity: 1;
  cursor: default;
}

.paw-color-field input[type="color"]:disabled {
  opacity: 1;
  background: #fff;
}

.paw-step-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 14px;
  align-items: stretch;
}

.paw-palette {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
  margin-top: 8px;
}

.paw-palette.large {
  grid-template-columns: repeat(10, minmax(0, 1fr));
}

.paw-palette.large .paw-swatch {
  min-height: 46px;
}

.paw-palette.large .paw-swatch span {
  width: 23px;
  height: 23px;
}

.paw-palette.large .paw-swatch small {
  display: none;
}

.paw-palette.empty {
  display: block;
}

.paw-palette-empty {
  padding: 12px;
  border: 1px dashed #c7d4dd;
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.paw-source-chart {
  margin-top: 8px;
  border-top: 1px solid #e3eaf0;
  color: var(--muted);
  font-size: 12px;
}

.paw-source-chart summary {
  padding: 9px 0 2px;
  cursor: pointer;
  font-weight: 800;
}

.paw-source-chart img {
  display: block;
  width: 100%;
  max-height: 420px;
  margin-top: 8px;
  object-fit: contain;
  border: 1px solid #d9e2ea;
  border-radius: 7px;
}

.paw-swatch {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3px;
  place-items: center;
  min-height: 48px;
  padding: 5px 3px;
  border: 1px solid #d4dde8;
  border-radius: 6px;
  background: #fff;
  color: var(--ink);
  text-align: center;
}

.paw-swatch span {
  width: 24px;
  height: 24px;
  border: 1px solid #aeb8c5;
  border-radius: 50%;
}

.paw-swatch b,
.paw-swatch small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.paw-swatch b {
  font-size: 12px;
}

.paw-swatch small {
  display: none;
}

.paw-swatch:hover {
  border-color: var(--accent);
  background: #f4fbfd;
}

.paw-swatch.selected {
  border-color: var(--accent-strong);
  box-shadow: 0 0 0 2px rgba(var(--theme-rgb), 0.16);
  background: var(--theme-softer);
}

.paw-part-card {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid #d4dde8;
  border-radius: 10px;
  background: #fff;
}

.paw-part-card strong {
  display: block;
  margin-bottom: 4px;
  font-size: 14px;
}

.paw-part-visual {
  position: relative;
  width: 72px;
  height: 72px;
  border: 1px solid #d6dee8;
  border-radius: 10px;
  background-color: #f5f7fa;
  background-image: url("/assets/paw-order-master-template-v1.png");
  background-repeat: no-repeat;
  background-size: 210px auto;
}

.paw-part-visual::before,
.paw-part-visual::after {
  display: none;
}

.fur-part { background-position: 8% 79%; }
.pad-part { background-position: 11% 22%; }
.claw-part { background-position: 9% 3%; }

.paw-choice-field {
  display: flex;
  gap: 10px;
  align-items: center;
  min-height: 40px;
  padding: 0;
  border: 0;
  margin: 0;
}

.paw-choice-field legend {
  margin-bottom: 7px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.paw-choice-field.inline {
  flex-wrap: wrap;
}

.paw-choice-field label {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  padding: 9px 12px;
  border: 1px solid #cfd7e3;
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  font-weight: 850;
}

.paw-choice-field input {
  width: auto;
  height: auto;
}

.paw-preview-panel {
  position: sticky;
  top: 18px;
  display: grid;
  gap: 12px;
}

.paw-preview-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.paw-preview-head h3 {
  margin: 0;
  font-size: 18px;
}

.paw-preview-head p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
}

.paw-preview-actions {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}

.paw-preview-actions button {
  white-space: nowrap;
}

.paw-download-custom-toggle {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  padding: 0 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  color: var(--ink);
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.paw-download-custom-toggle:has(input:disabled) {
  color: var(--muted);
  cursor: not-allowed;
  opacity: 0.7;
}

.paw-download-custom-toggle input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--accent);
}

#pawPreviewCanvas {
  width: 100%;
  height: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.paw-validation {
  padding: 10px 12px;
  border: 1px solid #ecd7af;
  border-radius: 8px;
  background: #fff8ec;
  color: var(--amber);
  font-weight: 850;
}

.paw-validation.ok {
  border-color: #b9decb;
  background: #effaf4;
  color: var(--green);
}

.paw-custom-generate-row {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 12px;
  align-items: center;
}

.paw-custom-generate-row span {
  flex: 1 1 220px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.paw-custom-effect-panel {
  display: grid;
  gap: 10px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

.paw-custom-effect-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.paw-custom-effect-head h4 {
  margin: 0;
  color: var(--ink);
  font-size: 16px;
}

.paw-custom-effect-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.paw-custom-effect-progress {
  display: grid;
  gap: 7px;
  padding: 10px 12px;
  border: 1px solid var(--theme-border);
  border-radius: 8px;
  background: #f4fafc;
}

.paw-custom-effect-progress.hidden {
  display: none;
}

.paw-custom-effect-progress-meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: var(--theme-strong);
  font-size: 12px;
}

.paw-custom-effect-progress-track {
  height: 8px;
  overflow: hidden;
  border-radius: 4px;
  background: var(--theme-soft);
}

.paw-custom-effect-progress-track i {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: var(--theme-accent);
  transition: width 300ms ease;
}

.paw-custom-effect-progress.is-done .paw-custom-effect-progress-track i {
  background: #16845b;
}

.paw-custom-effect-progress.is-error {
  border-color: #efc2bd;
  background: #fff7f6;
}

.paw-custom-effect-progress.is-error .paw-custom-effect-progress-meta {
  color: #b42318;
}

.paw-custom-effect-progress.is-error .paw-custom-effect-progress-track i {
  background: #c83c31;
}

.paw-custom-effect-preview {
  display: grid;
  place-items: center;
  min-height: 220px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f7fafc;
  color: var(--muted);
  font-size: 13px;
}

.paw-custom-effect-preview img {
  display: block;
  width: 100%;
  height: auto;
  background: #fff;
}

.paw-custom-effect-message {
  max-width: 420px;
  padding: 18px;
  color: var(--muted);
  line-height: 1.6;
  text-align: center;
}

.paw-custom-effect-message.error {
  color: #b42318;
}

.paw-custom-history-panel {
  display: grid;
  gap: 10px;
  margin-top: 4px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

.paw-custom-history-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.paw-custom-history-head h4,
.paw-custom-history-head p {
  margin: 0;
}

.paw-custom-history-head h4 {
  color: var(--ink);
  font-size: 16px;
}

.paw-custom-history-head p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
}

.paw-custom-task-list {
  display: grid;
  gap: 8px;
}

.paw-custom-task-card {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfdfe;
}

.paw-custom-task-card.is-selected {
  border-color: #16845b;
  background: #f4fbf7;
}

.paw-custom-task-card.is-failed {
  border-color: #efc2bd;
  background: #fff7f6;
}

.paw-custom-task-thumb {
  width: 72px;
  height: 72px;
  overflow: hidden;
  display: grid;
  place-items: center;
  border-radius: 6px;
  background: #edf3f5;
  color: var(--muted);
  font-size: 11px;
}

.paw-custom-task-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.paw-custom-task-main {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.paw-custom-task-title {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-size: 13px;
}

.paw-custom-task-title span,
.paw-custom-task-main p {
  color: var(--muted);
  font-size: 11px;
}

.paw-custom-task-main p {
  overflow: hidden;
  margin: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.paw-custom-task-progress {
  height: 7px;
  overflow: hidden;
  border-radius: 4px;
  background: var(--theme-soft);
}

.paw-custom-task-progress i {
  display: block;
  height: 100%;
  background: var(--theme-accent);
}

.paw-custom-task-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(64px, auto));
  gap: 6px;
}

.paw-custom-task-actions button,
.paw-custom-task-actions a {
  white-space: nowrap;
}

.paw-custom-task-empty {
  margin: 0;
  padding: 16px;
  border: 1px dashed var(--line);
  border-radius: 8px;
  color: var(--muted);
  font-size: 12px;
  text-align: center;
}

.paw-special-workspace {
  margin-top: 16px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
}

.paw-special-summary {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  padding: 17px 20px;
  cursor: pointer;
  list-style: none;
}

.paw-special-summary::-webkit-details-marker {
  display: none;
}

.paw-special-summary:focus-visible {
  outline: 3px solid rgba(var(--theme-rgb), 0.22);
  outline-offset: -3px;
}

.paw-special-summary-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.paw-special-summary-copy b {
  color: var(--ink);
  font-size: 17px;
}

.paw-special-summary-copy small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.paw-special-summary-action {
  flex: 0 0 auto;
  color: var(--accent-strong);
  font-size: 13px;
  font-weight: 850;
}

.paw-special-content {
  border-top: 1px solid var(--line);
}

.paw-special-grid {
  display: grid;
  grid-template-columns: minmax(300px, 0.78fr) minmax(420px, 1.22fr);
}

.paw-special-input-panel,
.paw-custom-effect-panel {
  min-width: 0;
  padding: 22px;
}

.paw-special-input-panel {
  display: grid;
  align-content: start;
  gap: 12px;
}

.paw-special-input-panel h3,
.paw-special-input-panel p {
  margin: 0;
}

.paw-special-input-panel h3 {
  color: var(--ink);
  font-size: 18px;
}

.paw-special-input-panel > p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.65;
}

.paw-special-section-label {
  color: var(--accent-strong);
  font-size: 11px;
  font-weight: 900;
}

.paw-special-input-panel textarea,
.paw-custom-correction textarea {
  resize: vertical;
}

.paw-special-workspace .paw-custom-effect-panel {
  display: grid;
  gap: 12px;
  padding-top: 22px;
  border-top: 0;
  border-left: 1px solid var(--line);
  background: #fbfdfe;
}

.paw-special-workspace .paw-custom-effect-head {
  align-items: flex-start;
}

.paw-special-workspace .paw-custom-effect-head h4 {
  margin-top: 4px;
  font-size: 18px;
}

.paw-special-workspace .paw-custom-effect-preview {
  min-height: 320px;
  max-height: 580px;
  background: #f3f7f9;
}

.paw-special-workspace .paw-custom-effect-preview img {
  width: 100%;
  height: 100%;
  max-height: 580px;
  object-fit: contain;
}

.paw-custom-correction {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: end;
  padding-top: 4px;
}

.paw-custom-correction button {
  min-height: 44px;
  white-space: nowrap;
}

.paw-special-workspace .paw-custom-history-panel {
  gap: 14px;
  margin: 0;
  padding: 20px 22px 22px;
  border-top: 1px solid var(--line);
}

.paw-special-workspace .paw-custom-history-head {
  align-items: flex-end;
}

.paw-special-workspace .paw-custom-history-head h4 {
  margin-top: 4px;
  font-size: 18px;
}

.paw-special-workspace .paw-custom-task-list {
  gap: 10px;
}

.paw-special-workspace .paw-custom-task-card {
  grid-template-columns: 104px minmax(0, 1fr) minmax(118px, auto);
  gap: 14px;
  align-items: stretch;
  padding: 12px;
  background: #fff;
}

.paw-special-workspace .paw-custom-task-thumb {
  width: 104px;
  height: 88px;
}

.paw-special-workspace .paw-custom-task-thumb img {
  object-fit: contain;
  background: #fff;
}

.paw-special-workspace .paw-custom-task-main {
  align-content: center;
  gap: 7px;
}

.paw-special-workspace .paw-custom-task-title {
  align-items: flex-start;
}

.paw-special-workspace .paw-custom-task-title > div {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 10px;
  align-items: baseline;
}

.paw-special-workspace .paw-custom-task-title b {
  color: var(--ink);
  font-size: 14px;
}

.paw-special-workspace .paw-custom-task-title span {
  font-size: 12px;
}

.paw-task-status {
  flex: 0 0 auto;
  color: #536273;
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
}

.paw-task-status.completed {
  color: #16845b;
}

.paw-task-status.failed {
  color: #b42318;
}

.paw-custom-task-requirement {
  line-height: 1.5;
}

.paw-special-workspace .paw-custom-task-actions {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
}

.paw-special-workspace .paw-custom-task-actions > * {
  width: 100%;
  text-align: center;
}

@media (max-width: 980px) {
  .paw-special-grid {
    grid-template-columns: 1fr;
  }

  .paw-special-workspace .paw-custom-effect-panel {
    border-top: 1px solid var(--line);
    border-left: 0;
  }
}

@media (max-width: 720px) {
  .paw-special-summary,
  .paw-special-input-panel,
  .paw-custom-effect-panel,
  .paw-special-workspace .paw-custom-history-panel {
    padding-right: 14px;
    padding-left: 14px;
  }

  .paw-special-summary {
    align-items: flex-start;
  }

  .paw-custom-correction {
    grid-template-columns: 1fr;
  }

  .paw-special-workspace .paw-custom-task-card {
    grid-template-columns: 72px minmax(0, 1fr);
  }

  .paw-special-workspace .paw-custom-task-thumb {
    width: 72px;
    height: 72px;
  }

  .paw-special-workspace .paw-custom-task-actions {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.storybook-workspace {
  display: grid;
  gap: 18px;
}

.storybook-workspace.hidden {
  display: none;
}

.storybook-topbar,
.storybook-section-head,
.storybook-result-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
}

.storybook-section-head {
  min-height: 36px;
}

.storybook-topbar h2,
.storybook-section-head h3,
.storybook-section-head p,
.storybook-topbar p {
  margin: 0;
}

.storybook-topbar h2 {
  margin-top: 4px;
  font-size: 26px;
}

.storybook-topbar p,
.storybook-section-head p {
  margin-top: 5px;
  color: var(--muted);
  font-size: 13px;
}

.storybook-topbar-actions,
.storybook-history-meta {
  display: flex;
  align-items: center;
  gap: 9px;
  flex-wrap: wrap;
}

.storybook-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border: 1px solid var(--line);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}
.storybook-delivery-type-field { margin: 14px 18px 0; }
.storybook-steps.is-promo { grid-template-columns: minmax(0, 1fr); }
.storybook-steps [data-full-story-step].hidden { display: none; }

.storybook-steps button {
  display: flex;
  justify-content: center;
  gap: 9px;
  align-items: center;
  min-height: 52px;
  border: 0;
  border-right: 1px solid var(--line);
  border-radius: 0;
  background: #fff;
  color: var(--muted);
}

.storybook-steps button:last-child { border-right: 0; }
.storybook-steps button.active { background: var(--theme-softer); color: var(--theme-strong); }
.storybook-steps b { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--theme-soft); }
.storybook-steps button.active b { background: var(--theme-accent); color: var(--theme-on-accent); }

.storybook-screen,
.storybook-history-section {
  display: grid;
  gap: 14px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}

.storybook-screen.hidden { display: none; }
.storybook-section-head > div:first-child > span,
.workspace-kicker { color: var(--theme-strong); font-size: 12px; font-weight: 900; }
.storybook-section-head h3 { margin-top: 3px; font-size: 20px; }
.storybook-section-head.compact h3 { font-size: 17px; }
.storybook-head-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.storybook-head-actions label { cursor: pointer; }

.storybook-cover-layout { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr); gap: 16px; align-items: start; }
.storybook-form-stack,
.storybook-result-pane { display: grid; gap: 14px; min-width: 0; }
.storybook-mode-field { min-width: 0; margin: 0; padding: 12px; border: 1px solid #c8dbe1; border-radius: 8px; background: #f8fbfc; }
.storybook-mode-field legend { padding: 0 5px; color: #315e6a; font-size: 13px; font-weight: 800; }
.storybook-mode-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.storybook-mode-options label { min-width: 0; cursor: pointer; }
.storybook-mode-options input { position: absolute; width: 1px; height: 1px; margin: 0; opacity: 0; pointer-events: none; }
.storybook-mode-options span { display: grid; gap: 3px; min-height: 62px; padding: 10px 12px; border: 1px solid #b9ccd3; border-radius: 7px; background: #fff; color: #315e6a; }
.storybook-mode-options small { color: var(--muted); font-size: 11px; line-height: 1.4; }
.storybook-mode-options input:checked + span { border-color: var(--theme-accent); box-shadow: inset 0 0 0 1px var(--theme-accent); background: var(--theme-softer); color: var(--theme-strong); }
.storybook-mode-options input:disabled + span { cursor: default; opacity: .72; }
.storybook-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.storybook-character-editor { display: grid; gap: 8px; padding: 12px; border: 1px solid #c8dbe1; border-radius: 8px; background: #f8fbfc; }
.storybook-character-editor-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.storybook-character-editor-head > div { display: grid; gap: 3px; }
.storybook-character-editor-head span { color: var(--muted); font-size: 12px; }
.storybook-character-columns,
.storybook-character-row { display: grid; grid-template-columns: minmax(112px, .85fr) minmax(120px, 1fr) minmax(120px, 1fr) minmax(112px, .85fr) 34px; gap: 8px; align-items: center; }
.storybook-character-columns { padding: 0 4px; color: var(--muted); font-size: 11px; }
.storybook-character-list { display: grid; gap: 7px; }
.storybook-character-row { padding: 8px; border: 1px solid #d7e4e8; border-radius: 7px; background: #fff; }
.storybook-character-row input,
.storybook-character-row select { width: 100%; min-width: 0; height: 38px; padding: 0 9px; border: 1px solid #b9ccd3; border-radius: 6px; background: #fff; color: var(--ink); }
.storybook-character-row input:disabled,
.storybook-character-row select:disabled { background: #eef3f5; color: #63747c; }
.storybook-character-note { grid-column: 1 / 4; }
.storybook-character-photo { grid-column: 4 / 6; display: flex; align-items: center; gap: 9px; min-height: 44px; padding: 6px 9px; border: 1px dashed #a9c2cb; border-radius: 6px; background: #f8fbfc; color: #315e6a; cursor: pointer; }
.storybook-character-photo img { width: 38px; height: 38px; flex: 0 0 auto; object-fit: cover; border-radius: 5px; }
.storybook-character-photo span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
.storybook-character-photo.is-ready { border-style: solid; border-color: #6da9b8; background: #edf8fa; }
.storybook-character-remove { width: 34px; height: 34px; padding: 0; border: 1px solid #d8a7a0; border-radius: 6px; background: #fff; color: #a93d31; font-size: 18px; line-height: 1; }
.storybook-upload-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.storybook-upload-grid-single { grid-template-columns: minmax(0, 1fr); }
.storybook-upload-box { display: grid; gap: 6px; min-height: 188px; padding: 14px; border: 1px dashed #aac2cc; border-radius: 8px; background: #f8fbfc; cursor: pointer; }
.storybook-upload-trigger { display: grid; gap: 6px; color: inherit; cursor: pointer; }
.storybook-upload-trigger > span { color: var(--muted); font-size: 12px; }
.storybook-upload-box > div { display: flex; gap: 6px; align-items: center; min-height: 110px; overflow: hidden; color: var(--muted); font-size: 12px; }
.storybook-upload-box img { width: 72px; height: 96px; object-fit: cover; border-radius: 5px; }
.storybook-cover-preview-list { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); width: 100%; gap: 8px !important; overflow: visible !important; }
.storybook-cover-preview-list figure { min-width: 0; margin: 0; }
.storybook-cover-preview-list img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; }
.storybook-cover-preview-list figcaption { margin-top: 3px; overflow: hidden; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.storybook-cover-name-card { display: grid; align-content: start; gap: 5px; padding: 7px; border: 1px solid #d4e1e6; border-radius: 7px; background: #fff; }
.storybook-cover-name-card[draggable="true"] { cursor: grab; }
.storybook-cover-name-card[draggable="true"]:active { cursor: grabbing; }
.storybook-cover-name-card.is-dragging { opacity: .45; }
.storybook-cover-name-card.is-drop-target { border-color: var(--theme-accent); box-shadow: inset 0 0 0 2px rgba(var(--theme-rgb), 0.13); }
.storybook-cover-card-head { display: flex; align-items: center; justify-content: space-between; gap: 6px; min-width: 0; }
.storybook-cover-card-head figcaption { min-width: 0; flex: 1 1 auto; }
.storybook-cover-order-actions { display: flex; flex: 0 0 auto; gap: 3px; }
.storybook-cover-order-actions button { display: grid; place-items: center; width: 26px; height: 26px; padding: 0; border: 1px solid #c6d8de; border-radius: 5px; background: #f7fafb; color: #315e6a; font-size: 13px; line-height: 1; }
.storybook-cover-order-actions button:hover:not(:disabled) { border-color: var(--theme-accent); background: var(--theme-softer); color: var(--theme-strong); }
.storybook-cover-order-actions button:disabled { cursor: default; opacity: .32; }
.storybook-cover-order-actions button.is-delete { border-color: #ebd0cc; color: #a23d32; }
.storybook-cover-order-actions button.is-delete:hover:not(:disabled) { border-color: #cb6c60; background: #fff4f2; color: #8b2f26; }
.storybook-cover-name-status { min-height: 28px; color: #2a7468; font-size: 10px; line-height: 1.35; }
.storybook-cover-name-status.recognizing { color: #8a6616; }
.storybook-cover-name-status.failed,
.storybook-cover-name-status.needs_review { color: #a34439; }
.storybook-cover-role-names { display: grid; gap: 5px; }
.storybook-cover-role-names label { display: grid; gap: 3px; min-width: 0; }
.storybook-cover-role-names label > span { color: #516770; font-size: 10px; }
.storybook-cover-role-names input { width: 100%; min-width: 0; height: 34px; padding: 0 7px; border: 1px solid #b9ccd3; border-radius: 6px; background: #fff; color: var(--ink); font-size: 12px; }
.storybook-cover-role-names input:focus { border-color: var(--theme-accent); outline: 2px solid rgba(var(--theme-rgb), 0.12); }
.storybook-character-auto-name { display: flex; align-items: center; min-height: 38px; padding: 0 9px; border: 1px solid #d4e1e6; border-radius: 6px; background: #eef5f7; color: #4f6d77; font-size: 12px; }
.storybook-result-pane { padding: 14px; border: 1px solid var(--line); border-radius: 8px; background: #fbfdfe; }
.storybook-result-head > div { display: grid; gap: 3px; }
.storybook-result-head span { color: var(--muted); font-size: 12px; }
.storybook-progress { height: 9px; overflow: hidden; border-radius: 5px; background: var(--theme-soft); }
.storybook-progress i { display: block; width: 0; height: 100%; background: var(--theme-accent); transition: width .3s ease; }
.storybook-cover-result { display: grid; place-items: center; min-height: 390px; overflow: hidden; border: 1px solid var(--line); border-radius: 7px; background: #fff; color: var(--muted); font-size: 12px; }
.storybook-cover-result img { display: block; width: 100%; height: auto; max-height: 620px; object-fit: contain; }
.storybook-cover-result-stack { display: grid; width: 100%; gap: 9px; padding: 9px; }
.storybook-cover-result-stack > img { border-radius: 6px; }
.storybook-cover-refine { display: grid; gap: 9px; padding: 11px; border: 1px solid #c8dbe1; border-radius: 7px; background: #f5fafb; }
.storybook-cover-refine textarea { min-height: 78px; resize: vertical; }
.storybook-cover-result.is-multi { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; align-items: start; padding: 9px; max-height: 650px; overflow: auto; }
.storybook-promo-cover-card { display: grid; gap: 6px; min-width: 0; padding: 7px; border: 1px solid var(--line); border-radius: 6px; background: #fff; }
.storybook-promo-cover-card img { width: 100%; max-height: none; aspect-ratio: 1; object-fit: contain; }
.storybook-promo-cover-card span { color: var(--muted); font-size: 10px; }
.storybook-promo-cover-card.is-failed { border-color: #e3a198; background: #fff8f7; }
.storybook-promo-long-preview { grid-column: 1 / -1; min-height: 220px; max-height: 390px; }
.storybook-promo-long-preview img { max-height: 370px; object-fit: contain; }
.storybook-notice { padding: 10px 12px; border: 1px solid #cee0e6; border-radius: 7px; background: #f3fafb; color: #315e6a; font-size: 13px; }
.storybook-gender-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px; margin-bottom: 12px; border: 1px solid #c8dbe1; border-radius: 8px; background: #f8fbfc; }
.storybook-gender-row > div:first-child { display: grid; gap: 3px; }
.storybook-gender-row > div:first-child > span { color: var(--muted); font-size: 12px; }
.storybook-gender-options { display: grid; grid-template-columns: repeat(2, 86px); gap: 6px; }
.storybook-gender-options label { cursor: pointer; }
.storybook-gender-options input { position: absolute; opacity: 0; pointer-events: none; }
.storybook-gender-options span { display: grid; place-items: center; min-height: 38px; border: 1px solid #b9ccd3; border-radius: 7px; background: #fff; color: #315e6a; font-weight: 700; }
.storybook-gender-options input:checked + span { border-color: var(--theme-accent); background: var(--theme-accent); color: var(--theme-on-accent); }

.storybook-pages-grid,
.storybook-review-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.storybook-page-card { display: grid; gap: 9px; min-width: 0; padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.storybook-page-card.is-confirmed { border-color: #79b695; background: #f7fcf9; }
.storybook-page-card.is-failed { border-color: #e3a198; background: #fff8f7; }
.storybook-page-card.is-name-review { border-color: #dc9b47; background: #fffaf2; }
.storybook-page-head { display: flex; justify-content: space-between; gap: 8px; align-items: center; }
.storybook-page-head span { color: var(--muted); font-size: 11px; }
.storybook-page-images { display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px; }
.storybook-page-image { position: relative; min-height: 190px; overflow: hidden; display: grid; place-items: center; border-radius: 6px; background: #edf3f5; color: var(--muted); font-size: 11px; }
.storybook-page-image img { display: block; width: 100%; height: auto; max-height: 360px; object-fit: contain; }
.storybook-page-image em { position: absolute; left: 5px; bottom: 5px; padding: 3px 6px; border-radius: 4px; background: rgba(21, 34, 42, .78); color: #fff; font-size: 10px; font-style: normal; }
.storybook-page-preview { position: relative; display: grid; width: 100%; min-height: 190px; padding: 0; overflow: hidden; place-items: center; border: 0; border-radius: 6px; background: #edf3f5; color: #fff; cursor: zoom-in; }
.storybook-page-preview span { position: absolute; right: 7px; bottom: 7px; padding: 4px 7px; border-radius: 4px; background: rgba(21, 34, 42, .78); font-size: 10px; font-weight: 700; }
.storybook-image-dialog { width: min(96vw, 1500px); max-width: none; height: min(94vh, 1050px); max-height: none; padding: 0; overflow: hidden; border: 0; border-radius: 8px; background: #172127; color: #fff; }
.storybook-image-dialog::backdrop { background: rgba(12, 20, 24, .82); }
.storybook-image-dialog-head { display: flex; min-height: 52px; padding: 8px 12px 8px 18px; align-items: center; justify-content: space-between; gap: 12px; background: #fff; color: #172127; }
.storybook-image-dialog-head button { min-height: 36px; padding: 7px 14px; }
.storybook-image-dialog-body { display: grid; height: calc(100% - 52px); padding: 14px; overflow: auto; place-items: center; }
.storybook-image-dialog-body img { display: block; width: auto; max-width: 100%; height: auto; max-height: 100%; object-fit: contain; }
.storybook-page-progress { height: 7px; overflow: hidden; border-radius: 4px; background: var(--theme-soft); }
.storybook-page-progress i { display: block; height: 100%; background: var(--theme-accent); }
.storybook-name-audit { display: grid; gap: 3px; padding: 8px 9px; border: 1px solid #a7d5bd; border-radius: 6px; background: #f2fbf6; color: #245f46; font-size: 11px; line-height: 1.45; }
.storybook-name-audit b { font-size: 12px; }
.storybook-name-audit span { color: inherit; }
.storybook-name-audit.is-blocking { border-color: #e1ad65; background: #fff6e8; color: #8a4e09; }
.storybook-page-actions { display: flex; gap: 6px; flex-wrap: wrap; }
.storybook-page-actions button { flex: 1 1 auto; }
.storybook-page-card textarea { min-height: 66px; }
.storybook-page-name-toggle { display: flex; align-items: center; gap: 8px; padding: 8px 9px; border: 1px solid #c8dbe1; border-radius: 7px; background: #f8fbfc; color: #315e6a; font-size: 12px; font-weight: 700; cursor: pointer; }
.storybook-page-name-toggle input { width: 17px; height: 17px; margin: 0; accent-color: var(--theme-accent); }
.storybook-page-name-toggle small { margin-left: auto; color: var(--muted); font-weight: 500; }
.storybook-history-list { display: grid; gap: 8px; }
.storybook-history-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 11px 12px; border: 1px solid var(--line); border-radius: 8px; background: #fbfdfe; }
.storybook-history-item p { margin: 4px 0 0; color: var(--muted); font-size: 12px; }
.storybook-history-meta { margin-top: 6px; }
.storybook-history-meta .history-run-time { margin-top: 0; }
.history-run-time { display: block; margin-top: 5px; color: var(--muted); font-size: 12px; line-height: 1.45; }
.required { color: #c64032; font-size: 10px; }

@media (max-width: 1100px) {
  .storybook-cover-layout { grid-template-columns: 1fr; }
  .storybook-pages-grid, .storybook-review-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .storybook-topbar-actions { width: 100%; justify-content: space-between; }
}

@media (max-width: 720px) {
  .storybook-topbar, .storybook-section-head { align-items: flex-start; flex-direction: column; }
  .storybook-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .storybook-steps button { border-bottom: 1px solid var(--line); }
  .storybook-steps button:nth-child(2n) { border-right: 0; }
  .storybook-steps button:nth-last-child(-n + 2) { border-bottom: 0; }
  .storybook-gender-row { align-items: stretch; flex-direction: column; }
  .storybook-gender-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .storybook-mode-options, .storybook-field-grid, .storybook-upload-grid, .storybook-pages-grid, .storybook-review-grid { grid-template-columns: 1fr; }
  .storybook-character-columns { display: none; }
  .storybook-character-row { grid-template-columns: 1fr 1fr; }
  .storybook-character-row > :nth-child(3),
  .storybook-character-row > :nth-child(4) { grid-column: auto; }
  .storybook-character-remove { grid-column: 2; justify-self: end; }
  .storybook-character-note,
  .storybook-character-photo { grid-column: 1 / -1; }
  .storybook-steps span { font-size: 11px; }
}

@media (max-width: 720px) {
  .paw-custom-task-card {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .paw-custom-task-actions {
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, 1fr);
  }
}

.history-load-more {
  width: 100%;
  margin-top: 12px;
}

.mode-option {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  align-items: start;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbfd;
  cursor: pointer;
}

.mode-option:has(input:checked) {
  border-color: #79aeba;
  background: var(--accent-soft);
}

.mode-option input {
  width: 16px;
  height: 16px;
  margin-top: 2px;
}

.mode-option span {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.mode-option strong {
  color: var(--ink);
  font-size: 13px;
}

.mode-option small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.prompt-field {
  margin-top: 0;
}

.prompt-field textarea {
  min-height: 94px;
}

.prompt-field:first-child textarea {
  min-height: 150px;
}

.prompt-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.prompt-actions {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.optimize-btn {
  white-space: nowrap;
}

.optimize-btn:disabled,
#extractStyleBtn:disabled,
#extractProductBtn:disabled,
#extractDimensionsBtn:disabled {
  cursor: wait;
  opacity: 0.65;
}

.checkbox-line {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 13px;
}

.checkbox-line input {
  width: 16px;
  height: 16px;
}

.api-pool-disclosure {
  margin-top: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f7fafb;
}

.api-pool-disclosure summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 40px;
  padding: 0 11px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}

.api-pool-disclosure summary small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 500;
}

.api-pool-disclosure[open] summary {
  border-bottom: 1px solid var(--line);
}

.api-pool-disclosure .field {
  padding: 11px;
}

.api-pool-disclosure textarea {
  min-height: 82px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
  line-height: 1.35;
}

.workspace {
  min-width: 0;
  padding: 28px;
}

.hero-surface,
.task-section {
  max-width: 1180px;
  margin: 0 auto;
}

.input-area,
.task-section {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
}

.input-area {
  display: flex;
  flex-direction: column;
  padding: 22px;
}

.input-area > .topline {
  order: 0;
}

#assetBlock {
  order: 1;
}

#dimensionPanel {
  order: 2;
}

#promptStack {
  order: 3;
}

#settingsBlock {
  order: 4;
}

.input-area > .actions {
  order: 5;
}

.input-area > [data-step-label]::before {
  content: attr(data-step-label);
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 28px;
  margin-bottom: 12px;
  padding: 0 11px;
  border-radius: 999px;
  background: var(--accent);
  color: var(--theme-on-accent);
  font-size: 13px;
  font-weight: 900;
}

#promptStack[data-step-label]::before {
  grid-column: 1 / -1;
}

.input-area > .actions[data-step-label] {
  flex-wrap: wrap;
}

.input-area > .actions[data-step-label]::before {
  flex-basis: 100%;
}

.workflow-block {
  display: grid;
  gap: 14px;
  margin-top: 16px;
  padding: 16px;
  border: 1px solid #d5e4ea;
  border-radius: 8px;
  background: #fbfdff;
}

.competitor-mode-switch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 16px;
  border: 1px solid #cbdce2;
  border-radius: 8px;
  overflow: hidden;
  background: #eef4f6;
}

.competitor-mode-switch button {
  display: grid;
  gap: 2px;
  min-height: 62px;
  padding: 10px 18px;
  border: 0;
  border-right: 1px solid #cbdce2;
  background: transparent;
  color: #526771;
  text-align: left;
}

.competitor-mode-switch button:last-child { border-right: 0; }
.competitor-mode-switch button.active { background: #fff; color: var(--theme-strong); box-shadow: inset 0 -4px var(--theme-accent); }
.competitor-mode-switch strong { font-size: 15px; }
.competitor-mode-switch span { font-size: 11px; color: #73858e; }

.competitor-shop-intro-head { padding-bottom: 12px; border-bottom: 1px solid #dce7ea; }
.competitor-shop-intro-head h3 { margin: 3px 0 4px; }
.competitor-shop-intro-head p { margin: 0; color: var(--muted); font-size: 13px; }
.competitor-shop-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid #d6e3e7; border-radius: 8px; overflow: hidden; background: #fff; }
.competitor-shop-steps article { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 10px; min-height: 112px; padding: 15px; border-right: 1px solid #dce7ea; }
.competitor-shop-steps article:last-child { border-right: 0; }
.competitor-shop-steps article > b { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 4px; background: var(--theme-soft); color: var(--theme-strong); font-size: 12px; }
.competitor-shop-steps strong, .competitor-shop-steps span { display: block; }
.competitor-shop-steps strong { margin-bottom: 5px; font-size: 13px; }
.competitor-shop-steps span { color: var(--muted); font-size: 12px; line-height: 1.55; }
.competitor-shop-boundary { display: flex; gap: 12px; align-items: baseline; padding: 11px 13px; border-left: 4px solid #c58b2b; background: #fff8ea; color: #69522d; font-size: 12px; }

.competitor-shop-task-section { display: grid; gap: 16px; }
.competitor-shop-task-heading { align-items: center; }
.competitor-shop-task-heading h2, .competitor-shop-task-heading p { margin: 0; }
.competitor-shop-task-heading p { margin-top: 5px; color: var(--muted); font-size: 13px; }
.competitor-shop-tasks { display: grid; gap: 12px; }
.competitor-shop-task-card { padding: 18px; border: 1px solid #d5e2e6; border-radius: 8px; background: #fff; }
.competitor-shop-task-card > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.competitor-shop-task-identity { display: flex; gap: 12px; align-items: center; min-width: 0; }
.competitor-shop-mark { display: grid; flex: 0 0 38px; width: 38px; height: 38px; place-items: center; border-radius: 6px; background: #163f48; color: #fff; font-weight: 800; }
.competitor-shop-task-identity h3 { margin: 0; font-size: 17px; }
.competitor-shop-task-identity p { margin: 4px 0 0; color: var(--muted); font-size: 12px; }
.competitor-shop-metrics { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin-top: 16px; border-block: 1px solid #e0e8eb; background: #f8fbfb; }
.competitor-shop-metrics span { display: grid; gap: 2px; padding: 11px 13px; border-right: 1px solid #e0e8eb; }
.competitor-shop-metrics span:last-child { border-right: 0; }
.competitor-shop-metrics b { color: #183d46; font-size: 19px; }
.competitor-shop-metrics small { color: #6d7f87; font-size: 11px; }
.competitor-shop-metrics .has-risk b { color: #ad5a25; }
.competitor-shop-progress { height: 7px; margin-top: 14px; overflow: hidden; border-radius: 4px; background: var(--theme-soft); }
.competitor-shop-progress i { display: block; height: 100%; border-radius: inherit; background: var(--theme-accent); }
.competitor-shop-progress-text { margin: 7px 0 0; color: #61757e; font-size: 12px; }
.competitor-shop-fields { margin-top: 11px; }
.competitor-shop-fields summary { color: #44616c; font-size: 12px; font-weight: 700; cursor: pointer; }
.competitor-shop-fields div { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.competitor-shop-fields span { padding: 4px 7px; border-radius: 4px; background: #eef4f5; color: #526871; font-size: 11px; }
.competitor-shop-analysis-note { margin: 12px 0 0; padding: 9px 10px; border-left: 3px solid #c58b2b; background: #fff8ea; color: #735829; font-size: 12px; }
.competitor-shop-task-card footer { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.competitor-shop-task-card footer a { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.competitor-batch-status.is-ready { background: #e7f2f5; color: #1c6978; }

@media (max-width: 900px) {
  .competitor-shop-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .competitor-shop-steps article:nth-child(2) { border-right: 0; }
  .competitor-shop-steps article:nth-child(-n+2) { border-bottom: 1px solid #dce7ea; }
  .competitor-shop-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .competitor-shop-metrics span { border-bottom: 1px solid #e0e8eb; }
}

@media (max-width: 620px) {
  .competitor-mode-switch { grid-template-columns: 1fr; }
  .competitor-mode-switch button { border-right: 0; border-bottom: 1px solid #cbdce2; }
  .competitor-shop-steps { grid-template-columns: 1fr; }
  .competitor-shop-steps article { min-height: 0; border-right: 0; border-bottom: 1px solid #dce7ea; }
  .competitor-shop-task-card > header { align-items: stretch; flex-direction: column; }
}

.competitor-plugin-install {
  border-color: #9fc4cf;
  background: #f5fbfd;
}

.competitor-plugin-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid #dbe9ee;
}

.competitor-plugin-head .block-heading {
  display: grid;
  flex: 1;
  gap: 6px;
  padding: 0;
  border: 0;
}

.competitor-plugin-head .block-heading p {
  margin: 0;
  max-width: none;
  text-align: left;
}

.competitor-plugin-download {
  display: grid;
  flex: 0 0 220px;
  align-content: center;
  justify-items: center;
  min-height: 58px;
  text-decoration: none;
}

.competitor-plugin-download small {
  margin-top: 3px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 11px;
}

.plugin-install-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.plugin-install-step {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  min-height: 132px;
  padding: 14px;
  border: 1px solid #d7e6ec;
  border-radius: 8px;
  background: #fff;
}

.plugin-install-step.important {
  border-color: #e3bd65;
  background: #fffaf0;
}

.plugin-install-step > strong {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--accent);
  color: var(--theme-on-accent);
  font-size: 14px;
}

.plugin-install-step b {
  display: block;
  margin-bottom: 6px;
  font-size: 14px;
}

.plugin-install-step span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.plugin-install-step code {
  color: var(--theme-strong);
  font-weight: 800;
}

.plugin-address-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  margin-top: 9px;
}

.plugin-address-row code {
  min-width: 0;
  padding: 7px 9px;
  border: 1px solid #c9dde5;
  border-radius: 6px;
  background: #f4f9fb;
  font-size: 11px;
  overflow-wrap: anywhere;
}

.plugin-address-row button {
  flex: 0 0 auto;
}

.plugin-copy-notice {
  display: block;
  margin-top: 7px;
  color: var(--green);
  font-size: 12px;
  font-weight: 800;
}

.block-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid #e4ebf2;
}

.block-heading h3 {
  margin: 0;
  color: var(--ink);
  font-size: 15px;
}

.block-heading p {
  max-width: 620px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  text-align: right;
}

.simple-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.simple-step {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  min-height: 112px;
  padding: 14px;
  border: 1px solid #dbe8ef;
  border-radius: 8px;
  background: #fff;
}

.simple-step > strong {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--accent);
  color: var(--theme-on-accent);
  font-size: 14px;
}

.simple-step b {
  display: block;
  margin-bottom: 6px;
  color: var(--ink);
  font-size: 14px;
}

.simple-step span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.compact-note {
  font-size: 12px;
}

.compact-import {
  padding: 0;
}

.compact-import summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 16px;
  cursor: pointer;
  list-style: none;
}

.compact-import summary::-webkit-details-marker {
  display: none;
}

.compact-import summary span {
  color: var(--ink);
  font-size: 15px;
  font-weight: 700;
}

.compact-import summary small {
  color: var(--muted);
  font-size: 12px;
}

.compact-import summary::after {
  content: "+";
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border: 1px solid #c9d9e2;
  border-radius: 50%;
  color: var(--theme-strong);
  font-weight: 800;
}

.compact-import[open] summary {
  border-bottom: 1px solid #e4ebf2;
}

.compact-import[open] summary::after {
  content: "-";
}

.compact-import-body {
  display: grid;
  gap: 12px;
  padding: 14px 16px 16px;
}

.reference-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.reference-row.single {
  grid-template-columns: minmax(0, 1fr);
}

.hidden {
  display: none !important;
}

.asset-slot {
  display: grid;
  grid-template-columns: minmax(190px, 0.9fr) minmax(0, 1.1fr);
  gap: 12px;
  align-items: stretch;
  min-width: 0;
}

.upload-box {
  display: grid;
  place-items: center;
  gap: 6px;
  min-height: 176px;
  border: 1px dashed #a9b8c8;
  border-radius: 8px;
  background: #f7fafc;
  color: var(--muted);
  text-align: center;
  cursor: pointer;
}

.upload-box input {
  display: none;
}

.upload-title {
  color: var(--ink);
  font-weight: 700;
}

.upload-copy {
  font-size: 12px;
}

.reference-preview {
  display: grid;
  place-items: center;
  min-height: 176px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f4f7fa;
}

.reference-preview img {
  width: 100%;
  height: 100%;
  max-height: 240px;
  object-fit: contain;
}

.reference-preview.empty {
  color: var(--muted);
}

.dimension-panel {
  display: grid;
  gap: 16px;
  margin-top: 16px;
  padding: 16px;
  border: 1px solid #d5e4ea;
  border-radius: 8px;
  background: #f7fbfc;
}

.dimension-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.dimension-heading h3 {
  margin: 0;
  font-size: 16px;
}

.dimension-heading p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.dimension-case-slot {
  max-width: 760px;
}

.dimension-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  gap: 12px;
}

.dimension-notes-field textarea {
  min-height: 88px;
}

.extract-options {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.extract-options label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  font-size: 13px;
}

.extract-options input {
  width: 16px;
  height: 16px;
}

.studio-shell {
  max-width: 1180px;
  margin: 0 auto;
}

.studio-topbar {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 16px;
  padding: 18px;
  border: 1px solid rgba(216, 222, 232, 0.9);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 18px 50px rgba(16, 34, 45, 0.08);
}

.studio-kicker {
  color: var(--theme-strong);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.studio-topbar h2 {
  margin-top: 4px;
  font-size: 28px;
  letter-spacing: 0;
}

.studio-topbar p:last-child {
  margin-top: 6px;
  color: var(--muted);
  font-size: 14px;
}

.studio-top-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

#studioHistoryJumpBtn.has-history {
  border-color: rgba(48, 132, 89, 0.28);
  background: var(--theme-softer);
  color: #17643c;
}

.studio-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 16px;
}

.studio-steps span {
  min-height: 38px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  font-size: 13px;
  font-weight: 900;
  text-align: center;
}

.studio-steps span.active {
  border-color: var(--theme-border);
  background: var(--accent);
  color: var(--theme-on-accent);
}

.studio-screen {
  display: none;
}

.studio-screen.active {
  display: block;
  animation: studioFade 280ms ease both;
}

@keyframes studioFade {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.studio-hero,
.studio-section-head,
.studio-focus-card {
  border: 1px solid rgba(216, 222, 232, 0.9);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(16, 34, 45, 0.1);
}

.studio-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(360px, 1.05fr);
  gap: 28px;
  min-height: 560px;
  padding: 34px;
  align-items: center;
}

.studio-pill {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  padding: 0 12px;
  border-radius: 999px;
  background: var(--theme-softer);
  color: var(--accent-strong);
  font-size: 12px;
  font-weight: 900;
}

.studio-hero h1 {
  margin-top: 18px;
  max-width: 620px;
  font-size: 44px;
  line-height: 1.05;
  letter-spacing: 0;
}

.studio-hero p {
  margin-top: 16px;
  max-width: 580px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.65;
}

.studio-hero-actions,
.studio-footer-actions,
.studio-result-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.studio-hero-board {
  display: grid;
  grid-template-columns: 1fr 0.82fr;
  grid-template-rows: 1fr 1fr 1fr;
  gap: 12px;
  min-height: 480px;
}

.studio-photo-card,
.studio-result-image {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  background:
    radial-gradient(circle at 35% 28%, rgba(255,255,255,0.85), transparent 20%),
    linear-gradient(135deg, #d6b594, #865f43);
}

.studio-photo-card.large {
  grid-row: span 3;
}

.studio-photo-card.warm {
  background: linear-gradient(135deg, #f3d7b8, #b9865f);
}

.studio-photo-card.clean {
  background: linear-gradient(135deg, #f7fafc, #b8cad5);
}

.studio-photo-card.dark {
  background: linear-gradient(135deg, #27323c, #9f846c);
}

.studio-photo-card span,
.studio-result-image span {
  position: absolute;
  left: 14px;
  bottom: 14px;
  min-height: 28px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  color: #17202a;
  font-size: 12px;
  font-weight: 900;
}

.studio-section-head {
  margin-bottom: 16px;
  padding: 20px;
}

.studio-section-head.split {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

.studio-section-head span {
  color: var(--theme-strong);
  font-size: 12px;
  font-weight: 900;
}

.studio-section-head h3 {
  margin: 6px 0 6px;
  font-size: 24px;
}

.studio-section-head p {
  color: var(--muted);
  line-height: 1.55;
}

.studio-upload-grid,
.studio-truth-grid,
.studio-result-grid {
  display: grid;
  gap: 14px;
}

.studio-upload-grid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.studio-upload-card {
  display: grid;
  gap: 8px;
  align-content: center;
  min-height: 180px;
  padding: 18px;
  border: 1px dashed #a9bcc8;
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.studio-upload-card:hover {
  transform: translateY(-2px);
  border-color: var(--accent);
  box-shadow: 0 16px 36px rgba(16, 34, 45, 0.08);
}

.studio-upload-card input {
  display: none;
}

.studio-upload-card b {
  font-size: 18px;
}

.studio-upload-card span {
  color: var(--muted);
  font-size: 13px;
}

.studio-upload-card em {
  overflow: hidden;
  color: var(--accent-strong);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.studio-preview-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 12px;
  margin-top: 16px;
}

.studio-preview-grid figure {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.studio-preview-grid img {
  width: 100%;
  aspect-ratio: 1;
  border-radius: 6px;
  object-fit: cover;
}

.studio-preview-grid figcaption,
.studio-empty {
  color: var(--muted);
  font-size: 12px;
}

.studio-delivery-settings {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  margin-top: 20px;
}

.studio-generation-methods {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #dbe8ef;
}

.studio-generation-methods-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: end;
  margin-bottom: 12px;
}

.studio-generation-methods-head span {
  color: var(--theme-strong);
  font-size: 12px;
  font-weight: 900;
}

.studio-generation-methods-head h4 {
  margin: 4px 0 0;
  font-size: 20px;
}

.studio-generation-methods-head p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}

.studio-generation-method-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.85fr);
  gap: 12px;
}

.studio-generation-method {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  min-width: 0;
  padding: 16px;
  border: 1px solid #cbdde5;
  border-radius: 8px;
  background: #fff;
}

.studio-generation-method.api {
  border-color: #9ac7d3;
  background: #f2fafb;
}

.studio-generation-method-copy {
  min-width: 0;
}

.studio-method-badge {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
  padding: 3px 8px;
  border-radius: 999px;
  background: #eef3f6;
  color: #496370;
  font-size: 11px;
  font-weight: 900;
}

.studio-generation-method.api .studio-method-badge {
  background: #dceff3;
  color: #17627a;
}

.studio-generation-method h5 {
  margin: 10px 0 5px;
  font-size: 17px;
}

.studio-generation-method p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.studio-generation-method-actions {
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
  align-items: center;
}

.studio-generation-method-actions button {
  white-space: nowrap;
}

.studio-generation-method-actions button > span {
  display: inline-grid;
  width: 20px;
  height: 20px;
  place-items: center;
  margin-right: 6px;
  border-radius: 50%;
  background: rgba(var(--theme-rgb), 0.1);
  font-size: 11px;
  font-weight: 900;
}

#studioChatGptCopyBtn.is-submitting,
#studioChatGptPackBtn.is-submitting {
  cursor: wait;
}

@media (max-width: 1180px) {
  .studio-generation-method-grid {
    grid-template-columns: 1fr;
  }

  .studio-generation-method-actions {
    flex-wrap: wrap;
    justify-content: flex-end;
  }
}

.studio-focus-card {
  display: grid;
  place-items: center;
  gap: 14px;
  min-height: 520px;
  padding: 34px;
  text-align: center;
}

.studio-orbit {
  position: relative;
  width: 88px;
  height: 88px;
  border: 1px solid #d4e5eb;
  border-radius: 50%;
  animation: studioSpin 1.5s linear infinite;
}

.studio-orbit span {
  position: absolute;
  top: -6px;
  left: 38px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--accent);
}

@keyframes studioSpin {
  to {
    transform: rotate(360deg);
  }
}

.studio-progress-track {
  width: min(520px, 100%);
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--theme-soft);
}

.studio-progress-fill {
  width: 0%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--accent), var(--theme-accent));
  transition: width 260ms ease;
}

.studio-review-time {
  flex: 0 0 auto;
  min-width: 110px;
  padding: 12px;
  border: 1px solid #d5e4ea;
  border-radius: 8px;
  background: #f7fbfc;
  text-align: center;
}

.studio-review-time b {
  display: block;
  font-size: 18px;
}

.studio-review-time small {
  color: var(--muted);
}

.studio-truth-grid {
  grid-template-columns: minmax(0, 1fr);
}

.studio-truth-card {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid #dbe8ef;
  border-radius: 8px;
  background: #fff;
}

.studio-truth-card.needs-review {
  border-color: #e6be6b;
  background: #fffaf0;
}

.studio-truth-card > span {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
}

.studio-truth-card b {
  font-size: 13px;
}

.studio-truth-card em {
  min-height: 24px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #e8f5ef;
  color: var(--green);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.studio-truth-card.needs-review em {
  background: #fff1ce;
  color: var(--amber);
}

.studio-truth-card input {
  min-height: 42px;
}

.studio-truth-card textarea {
  width: 100%;
  min-height: 88px;
  resize: vertical;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 11px 12px;
  background: #fbfdfe;
}

.studio-info-card {
  grid-column: span 1;
}

.studio-info-card textarea {
  width: 100%;
  min-height: 96px;
  resize: vertical;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 11px 12px;
  font: inherit;
  color: var(--text);
  background: #fbfdfe;
  outline: none;
}

.studio-info-card textarea:focus {
  border-color: var(--theme-border);
  box-shadow: 0 0 0 4px rgba(91, 139, 154, 0.12);
}

.studio-info-card textarea:disabled {
  color: var(--muted);
  background: #eef4f7;
  cursor: not-allowed;
}

.studio-scene-unlock {
  justify-self: start;
}

.studio-scene-warning {
  color: var(--amber);
  font-size: 12px;
}

.hidden {
  display: none !important;
}

.studio-truth-card small {
  color: var(--muted);
  font-size: 12px;
}

.studio-options-panel {
  display: grid;
  gap: 14px;
  margin-top: 14px;
}

.studio-count-control,
.studio-required-types {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  border: 1px solid #dbe8ef;
  border-radius: 8px;
  background: #fff;
  padding: 14px;
}

.studio-count-control b,
.studio-required-types b {
  display: block;
  font-size: 14px;
}

.studio-count-control span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
}

.studio-stepper {
  display: flex;
  align-items: center;
  gap: 8px;
}

.studio-stepper button {
  width: 38px;
  height: 38px;
  padding: 0;
}

.studio-stepper input {
  width: 72px;
  min-height: 38px;
  text-align: center;
}

.studio-size-select {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 8px 10px;
  border: 1px solid #dbe8ef;
  border-radius: 8px;
  background: #fff;
}

.studio-size-select span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.studio-size-select select {
  min-height: 32px;
  border: 0;
  background: transparent;
  color: var(--text);
  font: inherit;
  font-weight: 800;
  outline: none;
}

.studio-type-plan {
  display: grid;
  gap: 10px;
}

.studio-type-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  border: 1px solid #dbe8ef;
  border-radius: 8px;
  background: #fff;
  padding: 12px 14px;
}

.studio-type-row b {
  display: block;
  font-size: 14px;
}

.studio-type-row span {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
}

.studio-total-control strong {
  color: var(--accent-strong);
  font-size: 18px;
}

.studio-submit-notice {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 14px;
  padding: 12px 14px;
  border: 1px solid #9abdc8;
  border-radius: 8px;
  background: #edf7f9;
  color: #164f61;
  font-size: 14px;
  font-weight: 800;
}

.studio-submit-notice::before {
  content: "";
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
  border-radius: 50%;
  background: #27809b;
  box-shadow: 0 0 0 5px rgba(39, 128, 155, 0.12);
}

.studio-submit-notice.is-success {
  border-color: rgba(48, 132, 89, 0.3);
  background: #ecf9f2;
  color: #17643c;
}

.studio-submit-notice.is-success::before {
  background: #308459;
  box-shadow: 0 0 0 5px rgba(48, 132, 89, 0.12);
}

.studio-submit-notice.is-error {
  border-color: rgba(175, 60, 60, 0.3);
  background: #fff1f1;
  color: #8f2f2f;
}

.studio-submit-notice.is-error::before {
  background: #af3c3c;
  box-shadow: 0 0 0 5px rgba(175, 60, 60, 0.12);
}

#studioGenerateBtn.is-submitting,
#studioFullGenerateBtn.is-submitting {
  cursor: wait;
}

#studioGenerateBtn.is-submitting::before,
#studioFullGenerateBtn.is-submitting::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 8px;
  border: 2px solid rgba(255, 255, 255, 0.45);
  border-top-color: #fff;
  border-radius: 50%;
  vertical-align: -2px;
  animation: studioSubmitSpin 0.75s linear infinite;
}

@keyframes studioSubmitSpin {
  to {
    transform: rotate(360deg);
  }
}

.studio-required-types {
  align-items: flex-start;
}

.studio-required-types > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.studio-required-types label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid #dbe8ef;
  border-radius: 999px;
  background: #f7fbfc;
  font-size: 13px;
  font-weight: 800;
}

.studio-generate-preview {
  display: flex;
  gap: 10px;
  align-items: end;
}

.studio-generate-preview div {
  width: 86px;
  height: 116px;
  border-radius: 8px;
  background: linear-gradient(135deg, #f6eee5, #b9865f);
  animation: studioFloat 1.8s ease-in-out infinite;
}

.studio-generate-preview div:nth-child(2) {
  height: 142px;
  animation-delay: 0.16s;
}

.studio-generate-preview div:nth-child(3) {
  animation-delay: 0.32s;
}

@keyframes studioFloat {
  50% {
    transform: translateY(-8px);
  }
}

.studio-generate-steps {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  max-width: 680px;
}

.studio-generate-steps span {
  min-height: 30px;
  padding: 7px 10px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.studio-generate-steps span.active {
  border-color: var(--theme-border);
  background: var(--theme-softer);
  color: var(--accent-strong);
}

.studio-result-grid {
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
}

.studio-plan-summary {
  grid-column: 1 / -1;
  display: grid;
  gap: 6px;
  border: 1px solid rgba(91, 139, 154, 0.22);
  background: linear-gradient(135deg, rgba(237, 247, 249, 0.95), rgba(255, 255, 255, 0.96));
  color: #16323d;
  border-radius: 8px;
  padding: 14px 16px;
}

.studio-plan-summary b {
  font-size: 15px;
}

.studio-plan-summary span,
.studio-plan-summary p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.studio-result-notice {
  grid-column: 1 / -1;
  border: 1px solid rgba(210, 140, 35, 0.28);
  background: rgba(255, 247, 237, 0.88);
  color: #8a4b12;
  border-radius: 8px;
  padding: 12px 14px;
  font-size: 13px;
}

.studio-result-card {
  display: grid;
  gap: 12px;
  padding: 10px;
  border: 1px solid #dbe8ef;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(16, 34, 45, 0.08);
}

.studio-result-image {
  min-height: 220px;
  background: linear-gradient(135deg, #f4f7fa, #b7cad2);
}

.studio-card-b .studio-result-image {
  background: linear-gradient(135deg, #f7e6d4, #b9865f);
}

.studio-card-c .studio-result-image {
  background: linear-gradient(135deg, #ebf3f7, #6f98a8);
}

.studio-card-d .studio-result-image {
  background: linear-gradient(135deg, #252d35, #9d816a);
}

.studio-result-image img {
  position: absolute;
  inset: 18%;
  width: 64%;
  height: 64%;
  border-radius: 8px;
  object-fit: contain;
  filter: drop-shadow(0 18px 18px rgba(0,0,0,0.2));
}

.studio-result-card h4 {
  margin: 0;
  font-size: 15px;
}

.studio-result-card p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.studio-result-card small {
  color: var(--accent-strong);
  font-size: 12px;
  font-weight: 900;
}

.studio-regenerate-editor {
  display: grid;
  gap: 8px;
  padding-top: 10px;
  border-top: 1px solid #e5eef2;
}

.studio-regenerate-editor label {
  display: grid;
  gap: 6px;
}

.studio-regenerate-editor label > span {
  color: #294956;
  font-size: 12px;
  font-weight: 800;
}

.studio-regenerate-prompt {
  width: 100%;
  min-height: 76px;
  resize: vertical;
  border: 1px solid #c9dce3;
  border-radius: 6px;
  padding: 9px 10px;
  background: #fbfdfe;
  color: var(--ink);
  font: inherit;
  line-height: 1.45;
}

.studio-regenerate-prompt:focus {
  outline: 2px solid rgba(var(--theme-rgb), 0.16);
  border-color: #4e91a4;
}

.studio-regenerate-editor .studio-regenerate-btn {
  width: 100%;
}

.studio-listing-copy {
  grid-column: 1 / -1;
  display: grid;
  gap: 14px;
  margin-top: 8px;
  padding: 16px;
  border: 1px solid #dbe8ef;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(16, 34, 45, 0.08);
}

.studio-listing-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.studio-listing-head b {
  display: block;
  font-size: 16px;
}

.studio-listing-head span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
}

.studio-copy-block {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid #eef4f7;
  border-radius: 8px;
  background: #fbfdfe;
}

.studio-copy-block h4 {
  margin: 0;
  font-size: 13px;
  letter-spacing: 0;
}

.studio-copy-block p,
.studio-copy-block pre,
.studio-copy-block ol {
  margin: 0;
  color: var(--text);
  line-height: 1.65;
}

.studio-copy-block pre {
  white-space: pre-wrap;
  font-family: inherit;
}

.studio-copy-block ol {
  padding-left: 20px;
}

.studio-copy-block small {
  color: var(--muted);
}

.studio-task-panel {
  margin-top: 18px;
  padding: 18px;
  border: 1px solid #dbe8ef;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 18px 42px rgba(16, 34, 45, 0.08);
}

.studio-task-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin-bottom: 14px;
}

.studio-task-head span {
  color: var(--accent-strong);
  font-size: 12px;
  font-weight: 900;
}

.studio-task-head h3 {
  margin: 4px 0;
}

.studio-task-head p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}

.studio-task-list {
  display: grid;
  gap: 12px;
}

.studio-done-notice {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 14px;
  padding: 12px 14px;
  border: 1px solid rgba(48, 132, 89, 0.28);
  border-radius: 8px;
  background: linear-gradient(135deg, #ecf9f2, #ffffff);
  color: #17643c;
  box-shadow: 0 12px 28px rgba(48, 132, 89, 0.12);
}

.studio-done-notice b {
  font-size: 15px;
}

.studio-done-notice span {
  color: #2d7650;
  font-size: 13px;
}

.studio-task-card {
  position: relative;
  display: grid;
  grid-template-columns: auto 74px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid #e5eef2;
  border-radius: 8px;
  background: #fbfdfe;
  padding: 12px;
}

.studio-task-card.is-finished {
  border-color: #c9ddd3;
  background: #f8fcfa;
}

.studio-task-card.is-unread {
  border-width: 2px;
  border-color: #2f9b61;
  box-shadow: 0 10px 24px rgba(48, 132, 89, 0.14);
}

.studio-task-card.is-preview-ready {
  border-color: #d7b55f;
  background: #fffaf0;
}

.studio-task-card.is-partial {
  border-color: #d9853f;
  background: #fff7ef;
}

.studio-task-card.is-preview-ready .studio-finished-badge {
  background: #9a6a12;
}

.studio-task-card.is-partial .studio-finished-badge {
  background: #b85c20;
}

.studio-task-card.is-failed {
  border-color: rgba(190, 78, 65, 0.28);
  background: #fff7f5;
}

.studio-finished-badge {
  position: absolute;
  top: -10px;
  right: 12px;
  min-height: 24px;
  padding: 4px 10px;
  border-radius: 999px;
  background: #2f9b61;
  color: #fff;
  font-size: 12px;
  box-shadow: 0 8px 18px rgba(48, 132, 89, 0.25);
}

.studio-task-check {
  display: flex;
  align-items: center;
}

.studio-task-thumb {
  width: 74px;
  height: 74px;
  border-radius: 8px;
  overflow: hidden;
  display: grid;
  place-items: center;
  background: #edf7f9;
  color: var(--muted);
  font-size: 12px;
}

.studio-task-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.studio-task-main {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.studio-task-title {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.studio-task-title b {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.studio-task-title span,
.studio-task-main p {
  color: var(--muted);
  font-size: 13px;
}

.studio-task-main p {
  margin: 0;
}

.task-cost-details {
  width: fit-content;
  max-width: 100%;
  color: #34505a;
  font-size: 12px;
}

.task-cost-details summary,
.task-cost-pill,
.task-cost-missing {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  width: fit-content;
  padding: 4px 8px;
  border: 1px solid #cddce2;
  border-radius: 6px;
  background: #fff;
  color: #24586a;
  font-size: 12px;
  font-weight: 800;
}

.task-cost-details summary {
  cursor: pointer;
}

.task-cost-details ul {
  display: grid;
  gap: 5px;
  min-width: 300px;
  margin: 7px 0 5px;
  padding: 8px 10px;
  border: 1px solid #dce6ea;
  border-radius: 6px;
  background: #fff;
  list-style: none;
}

.task-cost-details li {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.task-cost-details small,
.task-cost-missing {
  color: #73828a;
}

.studio-task-progress {
  height: 8px;
  border-radius: 999px;
  overflow: hidden;
  background: var(--theme-soft);
}

.studio-task-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #5b8b9a, #9bc7b2);
}

.studio-task-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.modeling-shell {
  max-width: 1180px;
  margin: 0 auto;
}

.modeling-topbar,
.modeling-panel {
  border: 1px solid rgba(216, 222, 232, 0.9);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 18px 50px rgba(16, 34, 45, 0.08);
}

.modeling-topbar {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  padding: 18px;
}

.modeling-topbar h2 {
  margin-top: 4px;
  font-size: 28px;
  letter-spacing: 0;
}

.modeling-topbar p:last-child {
  margin-top: 6px;
  color: var(--muted);
  font-size: 14px;
}

.modeling-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.modeling-steps span {
  min-height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid #d8e4ea;
  border-radius: 8px;
  background: #f7fbfc;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.modeling-steps span.active {
  border-color: rgba(var(--theme-rgb), 0.35);
  background: var(--theme-softer);
  color: var(--theme-strong);
}

.modeling-panel {
  display: grid;
  gap: 16px;
  padding: 18px;
}

.modeling-upload-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 14px;
}

.studio-truth-review {
  grid-column: 1 / -1;
  border: 1px solid #d8ddd9;
  background: #f8faf8;
  padding: 14px;
}

.studio-review-guide {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 20px;
  border: 1px solid #b9d7e0;
  border-left: 5px solid var(--accent);
  border-radius: 8px;
  background: var(--theme-softer);
}

.studio-review-guide strong {
  display: block;
  margin-bottom: 5px;
  font-size: 16px;
}

.studio-review-guide p,
.studio-review-block-head p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.studio-review-guide-badges {
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
}

.studio-review-guide-badges span {
  padding: 7px 10px;
  border-radius: 6px;
  background: #fff;
  color: #38505a;
  font-size: 12px;
  font-weight: 800;
}

.studio-review-guide-badges .attention {
  background: #fff1ce;
  color: #805511;
}

.studio-review-guide-badges .complete {
  background: #e8f5ef;
  color: var(--green);
}

.studio-review-block {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid #d8e2e8;
  border-radius: 8px;
  background: #fff;
}

.studio-review-block-head {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding-bottom: 14px;
  border-bottom: 1px solid #e7edf1;
}

.studio-review-number {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--accent);
  color: var(--theme-on-accent);
  font-weight: 900;
}

.studio-review-block-head h4 {
  margin: 0 0 4px;
  font-size: 16px;
}

.studio-review-block-head > strong {
  padding: 7px 10px;
  border-radius: 6px;
  background: #fff1ce;
  color: #805511;
  font-size: 12px;
  white-space: nowrap;
}

.studio-review-block-head > strong.is-complete {
  background: #e8f5ef;
  color: var(--green);
}

.studio-info-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.studio-confirm-check {
  display: flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  color: #704b10;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.studio-confirm-check input {
  width: 17px;
  min-height: 17px;
  height: 17px;
  margin: 0;
  accent-color: var(--green);
}

.studio-truth-card.truth-clear em {
  background: #e8f5ef;
  color: var(--green);
}

.studio-truth-card.low-confidence em {
  background: #fff1ce;
  color: #805511;
}

.studio-truth-card small,
.studio-review-empty {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.studio-review-empty {
  padding: 14px;
  border: 1px dashed #d2dde3;
  border-radius: 8px;
  background: #f8fafb;
}

.studio-truth-review summary {
  cursor: pointer;
  font-weight: 700;
  color: #26332d;
}

.studio-truth-review summary small {
  margin-left: 10px;
  color: #8a641f;
  font-weight: 500;
}

.studio-truth-review-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.studio-truth-card.low-confidence {
  border-color: #e3bd65;
  background: #fffaf0;
}

.studio-quality-badge {
  display: inline-flex;
  width: fit-content;
  margin-top: 8px;
  padding: 4px 7px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 700;
}

.studio-quality-badge.pass {
  color: #21633f;
  background: #e8f5ed;
}

.studio-quality-badge.fail {
  color: #8a4b16;
  background: #fff1df;
}

.modeling-upload-card {
  position: relative;
  display: grid;
  gap: 9px;
  min-height: 190px;
  padding: 14px;
  border: 1px dashed #b9d0da;
  border-radius: 8px;
  background: #fbfdff;
  color: var(--ink);
}

.modeling-upload-card input {
  display: none;
}

.modeling-upload-card.add {
  place-items: center;
  text-align: center;
  cursor: pointer;
}

.modeling-upload-card.add strong {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 999px;
  background: var(--accent);
  color: var(--theme-on-accent);
  font-size: 30px;
  line-height: 1;
}

.modeling-upload-card span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.modeling-upload-card.has-image {
  border-style: solid;
  background: #fff;
}

.modeling-upload-card img {
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 8px;
  object-fit: cover;
  background: #eef5f7;
}

.modeling-upload-card .modeling-remove-photo {
  justify-self: start;
}

.modeling-measure-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
  gap: 16px;
}

.modeling-blueprint,
.modeling-measure-card,
.modeling-export-card {
  border: 1px solid #d8e4ea;
  border-radius: 8px;
  background: #fbfdff;
}

.modeling-blueprint {
  display: grid;
  gap: 10px;
  padding: 14px;
}

.modeling-blueprint svg {
  width: 100%;
  min-height: 360px;
}

.modeling-blueprint-image {
  display: grid;
  gap: 10px;
}

.modeling-blueprint-image img {
  width: 100%;
  max-height: 720px;
  border: 1px solid #e3edf2;
  border-radius: 8px;
  background: #fff;
  object-fit: contain;
}

.modeling-blueprint-image a {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}

.modeling-blueprint rect,
.modeling-blueprint path,
.modeling-blueprint line {
  fill: none;
  stroke: var(--theme-strong);
  stroke-width: 6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.modeling-blueprint line {
  stroke: #7aa9b7;
  stroke-dasharray: 10 10;
}

.modeling-blueprint text {
  fill: #c36b2c;
  font-size: 28px;
  font-weight: 900;
}

.modeling-blueprint-note {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.modeling-measure-card {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.modeling-measure-card textarea {
  resize: vertical;
}

.modeling-export-card {
  display: grid;
  justify-items: center;
  gap: 14px;
  min-height: 420px;
  padding: 44px 18px;
  text-align: center;
}

.modeling-export-card .studio-progress-track {
  width: min(560px, 100%);
}

.modeling-download {
  display: grid;
  justify-items: center;
  gap: 10px;
  width: min(520px, 100%);
  padding: 16px;
  border: 1px solid rgba(48, 132, 89, 0.28);
  border-radius: 8px;
  background: #f0fbf5;
  color: #17643c;
}

.modeling-download span {
  color: #2d7650;
  font-size: 13px;
}

.modeling-download a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.competitor-actions {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.competitor-progress {
  display: grid;
  gap: 8px;
  margin-top: 14px;
  padding: 12px;
  border: 1px solid #b8d6e2;
  border-radius: 8px;
  background: #f5fbfd;
}

.competitor-progress.hidden {
  display: none;
}

.competitor-progress-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: var(--ink);
}

.competitor-progress-top strong {
  font-size: 14px;
}

.competitor-progress-top span {
  flex: 0 0 auto;
  color: var(--theme-strong);
  font-weight: 800;
}

.competitor-progress-track {
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--theme-soft);
}

.competitor-progress-fill {
  width: 0%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--theme-accent), var(--theme-accent));
  transition: width 0.25s ease;
}

.competitor-batch-history-section {
  display: grid;
  gap: 16px;
}

.competitor-batch-history-heading {
  align-items: center;
}

.competitor-batch-history-heading h2,
.competitor-batch-history-heading p {
  margin: 0;
}

.competitor-batch-history-heading p {
  margin-top: 5px;
  color: var(--muted);
  font-size: 13px;
}

.competitor-batch-overview {
  display: grid;
  grid-template-columns: repeat(4, minmax(110px, 1fr));
  border-top: 1px solid #dce7eb;
  border-bottom: 1px solid #dce7eb;
  background: #f8fbfc;
}

.competitor-batch-overview span {
  display: grid;
  gap: 2px;
  padding: 13px 16px;
  border-right: 1px solid #dce7eb;
}

.competitor-batch-overview span:last-child {
  border-right: 0;
}

.competitor-batch-overview b {
  color: #173844;
  font-size: 21px;
  line-height: 1.15;
}

.competitor-batch-overview small {
  color: #667b84;
  font-size: 11px;
}

.competitor-batch-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) minmax(150px, 0.55fr) minmax(150px, 0.55fr) auto;
  gap: 10px;
  align-items: end;
}

.competitor-batch-toolbar label {
  display: grid;
  gap: 5px;
}

.competitor-batch-toolbar label > span {
  color: #526872;
  font-size: 11px;
  font-weight: 700;
}

.competitor-batch-toolbar input,
.competitor-batch-toolbar select {
  min-width: 0;
  height: 38px;
  padding: 0 11px;
  border: 1px solid #cbdbe1;
  border-radius: 6px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  font-size: 13px;
}

.competitor-batch-toolbar input:focus,
.competitor-batch-toolbar select:focus {
  border-color: var(--theme-accent);
  outline: 2px solid rgb(35 132 154 / 14%);
}

.competitor-batch-toolbar > button {
  height: 38px;
}

.competitor-batch-toolbar > p {
  grid-column: 1 / -1;
  margin: 0;
  color: var(--muted);
  font-size: 12px;
}

.competitor-batch-history {
  display: grid;
  gap: 8px;
}

.competitor-batch-card {
  overflow: hidden;
  border: 1px solid #d7e3e8;
  border-radius: 8px;
  background: #fff;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.competitor-batch-card:hover,
.competitor-batch-card.is-expanded {
  border-color: #a9c7d1;
  box-shadow: 0 6px 18px rgb(31 73 88 / 7%);
}

.competitor-batch-row {
  display: grid;
  grid-template-columns: 4px minmax(260px, 1fr) minmax(120px, auto) minmax(210px, auto);
  gap: 16px;
  align-items: center;
  min-height: 78px;
  padding: 12px 14px 12px 0;
}

.competitor-batch-status-bar {
  align-self: stretch;
  border-radius: 0 4px 4px 0;
  background: #b8c8ce;
}

.competitor-batch-status-bar.is-running {
  background: #2493aa;
}

.competitor-batch-status-bar.is-done {
  background: #3d8d63;
}

.competitor-batch-status-bar.is-warning {
  background: #d98928;
}

.competitor-batch-status-bar.is-error {
  background: #c54a4a;
}

.competitor-batch-title-line {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.competitor-batch-main h3 {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  color: var(--ink);
  font-size: 16px;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.competitor-batch-main p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.competitor-batch-fields {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
  margin-top: 8px;
}

.competitor-batch-fields > span:not(.competitor-batch-fields-label) {
  padding: 2px 6px;
  border: 1px solid #d8e5e9;
  border-radius: 4px;
  background: #f4f8f9;
  color: #456471;
  font-size: 10px;
  line-height: 1.4;
}

.competitor-batch-fields .competitor-batch-fields-label {
  color: #78909a;
  font-size: 10px;
  font-weight: 700;
}

.competitor-batch-fields .competitor-batch-fields-more {
  border-color: #c7dce3;
  background: #eaf3f6;
  color: var(--theme-strong);
  font-weight: 750;
}

.competitor-batch-fields .is-empty {
  color: #8a979d;
}

.competitor-batch-status {
  flex: 0 0 auto;
  padding: 3px 7px;
  border-radius: 5px;
  background: #e8f1f5;
  color: #456471;
  font-size: 11px;
  font-weight: 750;
}

.competitor-batch-status.is-running {
  background: #e3f3f7;
  color: #0c6d82;
}

.competitor-batch-status.is-done {
  background: #e6f5eb;
  color: #227044;
}

.competitor-batch-status.is-warning {
  background: #fff0dc;
  color: #9a570a;
}

.competitor-batch-status.is-error {
  background: #fde9e9;
  color: #a73535;
}

.competitor-batch-result {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 12px;
  white-space: nowrap;
}

.competitor-batch-result strong {
  color: #173844;
  font-size: 20px;
}

.competitor-batch-result strong small {
  margin-left: 4px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 600;
}

.competitor-batch-result > span {
  color: var(--muted);
  font-size: 11px;
}

.competitor-batch-result .has-failures {
  color: #b14535;
  font-weight: 700;
}

.competitor-batch-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.competitor-batch-actions a,
.competitor-batch-actions button {
  min-width: 92px;
  white-space: nowrap;
}

.competitor-batch-expanded {
  display: grid;
  gap: 0;
  padding: 0 18px 14px 20px;
  border-top: 1px solid #e3ebee;
  background: #fbfdfe;
}

.competitor-batch-meta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
  padding: 13px 0;
}

.competitor-batch-meta p {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  color: #425d68;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.competitor-batch-meta span {
  margin-right: 8px;
  color: #78909a;
  font-size: 11px;
}

.competitor-batch-product-list {
  border-top: 1px solid #e3ebee;
}

.competitor-batch-completeness {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  padding: 12px 0;
  border-bottom: 1px solid #e3ebee;
}

.competitor-batch-completeness > div:first-child {
  display: grid;
  gap: 2px;
}

.competitor-batch-completeness > div:first-child > strong {
  color: #28444f;
  font-size: 12px;
}

.competitor-batch-completeness > div:first-child > small {
  color: #82959d;
  font-size: 10px;
}

.competitor-batch-completeness-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.competitor-batch-completeness-item {
  padding: 3px 7px;
  border: 1px solid #d7e5df;
  border-radius: 4px;
  background: #edf7f1;
  color: #34704f;
  font-size: 10px;
}

.competitor-batch-completeness-item strong {
  margin-left: 2px;
}

.competitor-batch-completeness-item.has-missing {
  border-color: #eed8b7;
  background: #fff6e8;
  color: #9a5c16;
}

.competitor-batch-product-row {
  display: grid;
  grid-template-columns: 32px 54px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 70px;
  padding: 8px 0;
  border-bottom: 1px solid #e7eef1;
}

.competitor-batch-product-index {
  color: #78909a;
  font-size: 11px;
  text-align: center;
}

.competitor-batch-product-row img,
.competitor-batch-product-placeholder {
  width: 54px;
  height: 54px;
  border: 1px solid #d8e3e7;
  border-radius: 6px;
  background: #edf3f5;
  object-fit: cover;
}

.competitor-batch-product-placeholder {
  display: grid;
  place-items: center;
  color: #82979f;
  font-size: 10px;
}

.competitor-batch-product-copy {
  min-width: 0;
}

.competitor-batch-product-copy strong {
  display: block;
  overflow: hidden;
  color: #203842;
  font-size: 13px;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.competitor-batch-product-copy p {
  margin: 4px 0 0;
  color: #6f858e;
  font-size: 11px;
}

.competitor-batch-product-row > a {
  color: var(--theme-strong);
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}

.competitor-batch-items-state,
.competitor-batch-items-more {
  margin: 0;
  padding: 18px 0;
  color: #6f858e;
  font-size: 12px;
  text-align: center;
}

.competitor-batch-items-state.is-error {
  color: #a73535;
}

.competitor-batch-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-top: 12px;
}

.competitor-batch-footer small {
  color: #78909a;
  font-size: 11px;
}

.competitor-batch-footer .text-danger {
  padding: 4px 0;
  border: 0;
  background: transparent;
  color: #a73d3d;
  font: inherit;
  font-size: 12px;
  cursor: pointer;
}

.competitor-batch-empty {
  margin: 0;
  padding: 28px 18px;
  border: 1px dashed #cadbe1;
  border-radius: 8px;
  background: #fbfdfe;
  text-align: center;
}

@media (max-width: 1050px) {
  .competitor-batch-toolbar {
    grid-template-columns: minmax(220px, 1fr) repeat(2, minmax(140px, 0.55fr));
  }

  .competitor-batch-toolbar > button {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .competitor-batch-row {
    grid-template-columns: 4px minmax(230px, 1fr) minmax(105px, auto) minmax(200px, auto);
  }
}

@media (max-width: 640px) {
  .competitor-batch-overview {
    grid-template-columns: repeat(2, 1fr);
  }

  .competitor-batch-overview span:nth-child(2) {
    border-right: 0;
  }

  .competitor-batch-overview span:nth-child(-n + 2) {
    border-bottom: 1px solid #dce7eb;
  }

  .competitor-batch-toolbar {
    grid-template-columns: 1fr;
  }

  .competitor-batch-toolbar > button,
  .competitor-batch-toolbar > p {
    grid-column: auto;
  }

  .competitor-batch-row {
    grid-template-columns: 4px minmax(0, 1fr);
    gap: 10px;
    padding-right: 12px;
  }

  .competitor-batch-result,
  .competitor-batch-actions {
    grid-column: 2;
    justify-content: flex-start;
  }

  .competitor-batch-actions a,
  .competitor-batch-actions button {
    flex: 1 1 0;
  }

  .competitor-batch-meta {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .competitor-batch-completeness {
    grid-template-columns: 1fr;
  }

  .competitor-batch-product-row {
    grid-template-columns: 24px 48px minmax(0, 1fr);
  }

  .competitor-batch-product-row img,
  .competitor-batch-product-placeholder {
    width: 48px;
    height: 48px;
  }

  .competitor-batch-product-row > a {
    grid-column: 3;
  }

  .competitor-batch-footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .competitor-batch-footer .text-danger {
    width: 100%;
    text-align: left;
  }
}

.competitor-progress p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.competitor-progress.is-error {
  border-color: #efb8b8;
  background: #fff7f7;
}

.competitor-progress.is-error .competitor-progress-fill {
  background: #c93c3c;
}

.competitor-progress.is-done {
  border-color: #b8dcbf;
  background: #f6fff7;
}

.competitor-progress.is-done .competitor-progress-fill {
  background: #27965f;
}

.competitor-results {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.competitor-bulk-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.select-all-row,
.competitor-select {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.select-all-row input,
.competitor-select input {
  width: 16px;
  height: 16px;
}

.batch-analyze-preview {
  margin-top: 12px;
  padding: 12px;
  border: 1px solid #b8d6e2;
  border-radius: 8px;
  background: #f5fbfd;
}

.batch-analyze-preview.hidden {
  display: none;
}

.batch-analyze-preview strong {
  color: var(--ink);
}

.batch-analyze-preview .error-text {
  color: #b42318;
}

.batch-analyze-preview ul {
  margin: 8px 0 0;
  padding-left: 18px;
  color: var(--muted);
  font-size: 13px;
}

.competitor-reports {
  display: grid;
  gap: 14px;
}

.report-card {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #d5e4ea;
  border-radius: 8px;
  background: #fff;
}

.report-card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.report-card h3 {
  margin: 0 0 4px;
  color: var(--ink);
  font-size: 16px;
}

.report-card small {
  color: var(--muted);
}

.report-actions {
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
}

.report-body {
  overflow: auto;
  max-height: 520px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfdff;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.6;
  white-space: pre-wrap;
}

.competitor-card {
  display: grid;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.competitor-card-tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.danger-text {
  border: 0;
  background: transparent;
  color: #b42318;
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
}

.danger-text:hover {
  text-decoration: underline;
}

.competitor-summary {
  display: grid;
  grid-template-columns: 128px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}

.competitor-image {
  display: grid;
  place-items: center;
  width: 128px;
  aspect-ratio: 1;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f4f7fa;
  color: var(--muted);
  font-size: 12px;
}

.competitor-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.competitor-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(88px, 1fr));
  gap: 8px;
  max-width: 620px;
}

.competitor-gallery-item {
  display: block;
  aspect-ratio: 1;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f4f7fa;
}

.competitor-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.18s ease;
}

.competitor-gallery-item:hover img {
  transform: scale(1.04);
}

.competitor-summary h3 {
  margin: 0;
  color: var(--ink);
  font-size: 15px;
  line-height: 1.35;
}

.competitor-summary p {
  margin-top: 8px;
  color: var(--accent-strong);
  font-size: 18px;
  font-weight: 900;
}

.competitor-summary small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
}

.competitor-summary a,
.competitor-detail a {
  color: var(--accent-strong);
  font-weight: 700;
}

.competitor-card summary {
  cursor: pointer;
  color: var(--accent-strong);
  font-weight: 800;
}

.competitor-detail {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 10px 14px;
  margin: 12px 0 0;
  padding-top: 12px;
  border-top: 1px solid #e4ebf2;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.competitor-detail dt {
  color: var(--ink);
  font-weight: 800;
}

.competitor-detail dd {
  margin: 0;
  min-width: 0;
  word-break: break-word;
}

.competitor-detail ul {
  margin: 0;
  padding-left: 18px;
}

.competitor-table-toolbar {
  display: grid;
  gap: 10px;
  margin-top: 14px;
  padding: 11px 12px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #f8fafb;
}

.competitor-table-toolbar-main {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: end;
}

.competitor-table-toolbar label {
  display: grid;
  gap: 4px;
  min-width: 150px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.competitor-table-toolbar label.competitor-table-search {
  min-width: 270px;
  flex: 1 1 300px;
}

.competitor-table-toolbar input,
.competitor-table-toolbar select {
  min-height: 36px;
  border: 1px solid #cbd6df;
  border-radius: 4px;
  background: #fff;
  color: var(--ink);
  padding: 7px 9px;
}

.competitor-table-toolbar-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 16px;
  color: var(--muted);
  font-size: 12px;
}

.competitor-results {
  display: grid;
  gap: 12px;
  margin-top: 12px;
  min-width: 0;
}

.competitor-table-shell {
  min-width: 0;
  max-height: min(70vh, 760px);
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
}

.competitor-data-table {
  width: 100%;
  min-width: 1380px;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 12px;
}

.competitor-data-table th,
.competitor-data-table td {
  padding: 9px 10px;
  border-right: 1px solid #e4ebf0;
  border-bottom: 1px solid #e4ebf0;
  text-align: left;
  vertical-align: middle;
}

.competitor-data-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: #eef4f7;
  color: #405364;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.competitor-data-table th:first-child,
.competitor-data-table td:first-child {
  position: sticky;
  left: 0;
  z-index: 3;
  width: 42px;
  min-width: 42px;
  text-align: center;
  background: #fff;
}

.competitor-data-table th:first-child {
  z-index: 5;
  background: #eef4f7;
}

.competitor-data-table tr:last-child td {
  border-bottom: 0;
}

.competitor-data-table tr td:last-child,
.competitor-data-table tr th:last-child {
  border-right: 0;
}

.competitor-table-row {
  cursor: pointer;
  transition: background 120ms ease;
}

.competitor-table-row:hover td,
.competitor-table-row.is-detail-selected td {
  background: #f2fafb;
}

.competitor-table-row:hover td:first-child,
.competitor-table-row.is-detail-selected td:first-child {
  background: var(--theme-softer);
}

.competitor-table-row:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: -2px;
}

.competitor-table-check input {
  width: 16px;
  height: 16px;
}

.competitor-table-image {
  width: 58px;
  min-width: 58px;
}

.competitor-table-image img {
  display: block;
  width: 48px;
  height: 48px;
  object-fit: cover;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: #f4f7fa;
}

.competitor-table-image span {
  color: var(--muted);
  font-size: 11px;
}

.competitor-table-title {
  width: 270px;
  min-width: 270px;
}

.competitor-table-title strong,
.competitor-table-title small {
  display: block;
}

.competitor-table-title strong {
  max-width: 330px;
  overflow: hidden;
  color: var(--ink);
  line-height: 1.45;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.competitor-table-title small,
.competitor-table-time {
  margin-top: 4px;
  color: var(--muted);
  font-size: 11px;
}

.competitor-table-price {
  min-width: 100px;
  color: var(--accent-strong);
  font-weight: 900;
  white-space: nowrap;
}

.competitor-table-options {
  width: 230px;
  min-width: 230px;
  max-width: 230px;
  overflow: hidden;
  color: #465668;
  line-height: 1.45;
  text-overflow: ellipsis;
}

.competitor-table-reviews {
  min-width: 70px;
  color: #465668;
  white-space: nowrap;
}

.competitor-table-shipping {
  width: 170px;
  min-width: 170px;
  max-width: 170px;
  overflow: hidden;
  color: #465668;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.competitor-table-tags {
  display: table-cell;
  width: 190px;
  min-width: 190px;
}

.competitor-table-tags span {
  display: inline-block;
  max-width: 170px;
  margin: 2px 4px 2px 0;
  overflow: hidden;
  padding: 2px 5px;
  border-radius: 3px;
  background: #edf3f5;
  color: #526577;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.competitor-table-time {
  width: 145px;
  min-width: 145px;
}

.competitor-table-actions {
  display: table-cell;
  width: 170px;
  min-width: 170px;
  white-space: nowrap;
}

.competitor-table-actions a {
  display: inline-block;
  margin-right: 8px;
  color: var(--accent-strong);
  font-weight: 800;
}

.competitor-table-actions button {
  margin-right: 8px;
  padding: 0;
  border: 0;
  background: transparent;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.competitor-table-actions button:last-child {
  margin-right: 0;
}

.competitor-table-actions .secondary-text,
.competitor-detail-head-actions .secondary {
  color: var(--accent-strong);
}

.competitor-detail-head-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.competitor-row-detail {
  min-width: 0;
  padding: 16px;
  border: 1px solid #b8d6e2;
  border-left: 4px solid var(--accent);
  border-radius: 7px;
  background: #fbfdfe;
}

.competitor-row-detail-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}

.competitor-row-detail-head span {
  color: var(--accent-strong);
  font-size: 11px;
  font-weight: 900;
}

.competitor-row-detail-head h3 {
  margin: 3px 0 2px;
  color: var(--ink);
  font-size: 17px;
  line-height: 1.4;
}

.competitor-row-detail-head p {
  margin: 0;
  overflow-wrap: anywhere;
  color: var(--muted);
  font-size: 12px;
}

.competitor-row-detail .competitor-detail {
  margin-top: 14px;
  padding-top: 0;
  border-top: 0;
}

.competitor-table-empty {
  padding: 26px 16px;
  color: var(--muted);
  text-align: center;
}

@media (max-width: 720px) {
  .competitor-table-toolbar-main {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .competitor-table-toolbar label.competitor-table-search {
    min-width: 0;
    grid-column: 1 / -1;
  }

  .competitor-table-toolbar label,
  .competitor-table-toolbar select,
  .competitor-table-toolbar button {
    width: 100%;
    min-width: 0;
  }

  .competitor-row-detail-head {
    flex-direction: column;
  }

  .competitor-detail-head-actions,
  .competitor-row-detail-head button {
    width: 100%;
  }

  .competitor-detail-head-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}

.valuable-review-list {
  display: grid;
  gap: 10px;
  padding-left: 0 !important;
  list-style: none;
}

.valuable-review {
  display: grid;
  gap: 6px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fafc;
}

.valuable-review strong {
  color: var(--accent-strong);
  font-size: 13px;
}

.valuable-review p {
  margin: 0;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.55;
}

.review-images {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.review-image {
  display: block;
  width: 56px;
  aspect-ratio: 1;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
}

.review-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.tag-list span {
  padding: 4px 8px;
  border-radius: 999px;
  background: #eef5f7;
  color: var(--accent-strong);
  font-size: 12px;
  font-weight: 700;
}

.controls {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px 16px;
  align-items: start;
}

.controls .field {
  min-width: 0;
}

.setting-mode {
  grid-column: 1 / -1;
  margin-top: 0;
}

.controls .field span {
  color: var(--muted);
  font-weight: 700;
}

.controls select {
  min-height: 42px;
}

.actions {
  justify-content: flex-end;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid #e4ebf2;
}

.primary,
.secondary,
.ghost {
  min-height: 40px;
  padding: 0 16px;
  border-radius: 8px;
  font-weight: 700;
}

.primary {
  background: var(--accent);
  color: var(--theme-on-accent);
}

.primary:hover {
  background: var(--accent-strong);
  color: #fff;
}

.primary:disabled,
.secondary:disabled,
.ghost:disabled {
  cursor: not-allowed;
  opacity: 0.68;
}

.secondary {
  border: 1px solid #99bdc8;
  background: var(--accent-soft);
  color: var(--theme-strong);
}

.ghost {
  border: 1px solid var(--line);
  background: #fff;
  color: var(--ink);
}

.small {
  min-height: 32px;
  padding: 0 10px;
  font-size: 12px;
}

.task-section {
  margin-top: 20px;
  padding: 20px;
}

.overall-progress {
  display: grid;
  gap: 8px;
  margin-top: 16px;
  padding: 12px;
  border: 1px solid #d5e4ea;
  border-radius: 8px;
  background: #f7fbfc;
}

.progress-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: var(--muted);
  font-size: 12px;
}

.progress-meta span:first-child {
  color: var(--ink);
  font-weight: 700;
}

.progress-track {
  width: 100%;
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--theme-soft);
}

.progress-fill {
  width: 0%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--accent), var(--theme-accent));
  transition: width 280ms ease;
}

.progress-done {
  background: linear-gradient(90deg, var(--green), #43a47e);
}

.progress-error {
  background: linear-gradient(90deg, var(--red), #d66b5f);
}

.task-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 14px;
  margin-top: 16px;
}

.task-card {
  display: grid;
  gap: 10px;
  min-height: 260px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  background: #e8edf3;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.status-running {
  background: #fff2d7;
  color: var(--amber);
}

.status-done {
  background: #dff3eb;
  color: var(--green);
}

.status-failed {
  background: #f7e0df;
  color: var(--red);
}

.task-time {
  color: var(--muted);
  font-size: 12px;
}

.task-images {
  display: grid;
  place-items: center;
  min-height: 180px;
  overflow: hidden;
  border-radius: 8px;
  background: #f4f7fa;
}

.task-images img {
  width: 100%;
  height: 100%;
  max-height: 360px;
  object-fit: contain;
}

.task-images a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  margin-top: 8px;
  padding: 0 10px;
  border-radius: 8px;
  background: var(--accent);
  color: var(--theme-on-accent);
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}

.task-progress {
  display: grid;
  gap: 7px;
}

.task-assets {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.task-assets figure {
  display: grid;
  gap: 4px;
  margin: 0;
  min-width: 0;
}

.task-assets img {
  width: 100%;
  height: 72px;
  border: 1px solid var(--line);
  border-radius: 8px;
  object-fit: cover;
}

.task-assets figcaption {
  overflow: hidden;
  color: var(--muted);
  font-size: 12px;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.task-prompt {
  display: -webkit-box;
  overflow: hidden;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.task-error {
  color: var(--red);
  font-size: 13px;
  line-height: 1.4;
}

@media (max-width: 980px) {
  .app-shell {
    grid-template-columns: 1fr;
  }

  .sidebar {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .reference-row,
  .simple-steps,
  .plugin-install-steps,
  .studio-hero,
  .studio-steps,
  .studio-upload-grid,
  .studio-truth-grid,
  .controls,
  .asset-slot,
  .dimension-grid,
  .extract-options,
  .report-card-header,
  .report-actions,
  .competitor-summary,
  .competitor-detail,
  .block-heading,
  .mode-switch {
    grid-template-columns: 1fr;
  }

  .competitor-plugin-head {
    display: grid;
  }

  .competitor-plugin-download {
    width: 100%;
  }

  .report-card-header,
  .report-actions {
    flex-direction: column;
  }

  .studio-topbar,
  .modeling-topbar,
  .studio-section-head.split,
  .paw-order-layout,
  .paw-step-content,
  .paw-field-grid {
    display: grid;
    grid-template-columns: 1fr;
  }

  .paw-preview-panel {
    position: static;
  }

  .paw-preview-head {
    align-items: stretch;
    flex-direction: column;
  }

  .paw-preview-actions {
    width: 100%;
  }

  .paw-preview-actions button {
    flex: 1;
  }

  .studio-review-guide {
    align-items: flex-start;
    flex-direction: column;
  }

  .studio-review-guide-badges {
    flex-wrap: wrap;
  }

  .studio-truth-review-grid,
  .studio-info-grid {
    grid-template-columns: 1fr;
  }

  .studio-review-block-head {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .studio-review-block-head > strong {
    grid-column: 2;
    width: fit-content;
  }

  .modeling-steps,
  .modeling-measure-layout {
    grid-template-columns: 1fr;
  }

  .modeling-blueprint svg {
    min-height: 260px;
  }

  .studio-hero {
    min-height: auto;
    padding: 22px;
  }

  .studio-hero h1 {
    font-size: 32px;
  }

  .studio-hero-board {
    grid-template-columns: 1fr;
    min-height: 560px;
  }

  .competitor-image {
    width: 100%;
    max-width: 220px;
  }

  .block-heading {
    display: grid;
  }

  .block-heading p {
    max-width: none;
    text-align: left;
  }

  .compact-import summary {
    align-items: flex-start;
  }

  .dimension-heading {
    display: grid;
  }

  .page-tab {
    min-height: 50px;
    text-align: left;
  }
}

/* Unified production workflow: shared shell for the first three pilot tools. */
.app-shell {
  grid-template-columns: 264px minmax(0, 1fr);
}

.sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  padding: 16px 14px;
  overflow: auto;
  background: #f7f9fb;
}

.brand {
  gap: 11px;
  margin-bottom: 14px;
  padding: 0 4px;
}

.brand-mark {
  width: 44px;
  height: 44px;
}

.nav-group {
  border-color: #dde4e9;
  border-radius: 6px;
  box-shadow: none;
}

.workspace {
  padding: 24px;
  background: #f2f5f7;
}

.production-workspace {
  width: min(1280px, 100%);
  max-width: 1280px;
  margin: 0 auto;
}

.production-page-head {
  min-height: 84px;
  margin: 0 0 12px;
  padding: 0 0 17px;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.production-page-head h2 {
  margin-top: 3px;
  color: #17232c;
  font-size: 24px;
  line-height: 1.25;
}

.production-page-head p {
  max-width: 760px;
  margin-top: 6px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.production-page-eyebrow,
.production-workspace .studio-kicker {
  display: block;
  color: var(--theme-strong);
  font-size: 11px;
  font-weight: 850;
}

.production-stage-strip,
.production-workspace .studio-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: 0 0 14px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
}

.production-stage-strip > span,
.production-workspace .studio-steps > span {
  display: flex;
  min-height: 46px;
  align-items: center;
  justify-content: flex-start;
  gap: 9px;
  padding: 9px 14px;
  border: 0;
  border-right: 1px solid #e4eaee;
  border-radius: 0;
  background: #fff;
  color: #667683;
  font-size: 12px;
  font-weight: 750;
  text-align: left;
}

.production-stage-strip > span:last-child,
.production-workspace .studio-steps > span:last-child {
  border-right: 0;
}

.production-stage-strip b,
.production-workspace .studio-steps b {
  display: grid;
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  place-items: center;
  border: 1px solid #bdcbd3;
  border-radius: 50%;
  color: #526673;
  font-size: 10px;
}

.production-stage-strip em,
.production-workspace .studio-steps em {
  overflow: hidden;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-workspace .studio-steps > span.active {
  box-shadow: inset 0 -3px 0 var(--accent);
  background: #f0f7f9;
  color: var(--accent-strong);
}

.production-workspace .studio-steps > span.active b {
  border-color: var(--accent);
  background: var(--accent);
  color: var(--theme-on-accent);
}

.production-scene-workspace .input-area {
  padding: 20px;
  border-color: #d7e0e5;
  box-shadow: 0 8px 28px rgba(30, 51, 64, 0.045);
}

.production-scene-workspace .production-stage-strip {
  order: 0;
}

.production-block-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.production-block-heading h3 {
  margin: 0;
  color: #1c2932;
  font-size: 16px;
}

.production-block-heading p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.production-scene-workspace .workflow-block,
.production-scene-workspace .prompt-stack {
  margin-top: 12px;
  padding: 17px;
  border-color: #dbe3e8;
  background: #fff;
}

.production-prompt-essential {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.production-prompt-essential .field + .field,
.production-advanced-body .field + .field {
  margin-top: 0;
}

.production-prompt-essential textarea {
  min-height: 96px;
}

.production-advanced {
  overflow: hidden;
  border: 1px solid #dce4e9;
  border-radius: 6px;
  background: var(--surface-quiet);
}

.production-advanced summary {
  display: flex;
  min-height: 46px;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 13px;
  cursor: pointer;
  color: #314550;
  font-size: 13px;
  font-weight: 800;
  list-style: none;
}

.production-advanced summary::-webkit-details-marker {
  display: none;
}

.production-advanced summary::after {
  content: "+";
  color: var(--theme-strong);
  font-size: 20px;
  font-weight: 500;
}

.production-advanced[open] summary::after {
  content: "−";
}

.production-advanced summary small {
  flex: 1;
  color: var(--muted);
  font-size: 11px;
  font-weight: 500;
  text-align: right;
}

.production-advanced-body {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 13px;
  border-top: 1px solid #e0e7eb;
  background: #fff;
}

.production-scene-workspace .controls {
  grid-template-columns: minmax(260px, 1.6fr) repeat(3, minmax(130px, 1fr));
  gap: 12px;
}

.production-scene-workspace .setting-mode {
  grid-column: 1 / -1;
}

.production-action-bar {
  position: static;
  align-items: center;
  margin: 14px -8px -8px;
  padding: 12px;
  border: 1px solid #cedbe1;
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}

.production-action-copy strong,
.production-action-copy small {
  display: block;
}

.production-action-copy strong {
  color: #263640;
  font-size: 13px;
}

.production-action-copy small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
}

.production-action-buttons {
  display: flex;
  gap: 9px;
}

.production-task-center,
.production-workspace .studio-task-panel {
  border-color: #d7e0e5;
  box-shadow: none;
}

.production-workspace .studio-screen.active {
  padding: 18px;
  border: 1px solid #d7e0e5;
  border-radius: 7px;
  background: #fff;
}

.production-workspace .studio-section-head {
  padding: 0 0 14px;
  border-bottom: 1px solid #e2e8ec;
}

@media (max-width: 1100px) {
  .app-shell {
    grid-template-columns: 230px minmax(0, 1fr);
  }

  .production-prompt-essential,
  .production-advanced-body {
    grid-template-columns: 1fr;
  }

  .production-scene-workspace .controls {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .app-shell {
    grid-template-columns: 1fr;
  }

  .sidebar {
    position: static;
    width: 100%;
    height: auto;
    max-height: none;
  }

  .workspace {
    padding: 12px;
  }

  .production-page-head {
    align-items: stretch;
    flex-direction: column;
  }

  .production-stage-strip,
  .production-workspace .studio-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .production-stage-strip > span:nth-child(2),
  .production-workspace .studio-steps > span:nth-child(2) {
    border-right: 0;
  }

  .production-stage-strip > span:nth-child(-n + 2),
  .production-workspace .studio-steps > span:nth-child(-n + 2) {
    border-bottom: 1px solid #e4eaee;
  }

  .production-action-bar {
    position: static;
    align-items: stretch;
    flex-direction: column;
  }

  .production-action-buttons,
  .production-action-buttons button {
    width: 100%;
  }
}

/* 压缩包图片去重：先看清楚，再确认清理。 */
.duplicate-file-workspace {
  max-width: 1180px;
  margin: 0 auto;
  padding: 24px;
  color: #22313a;
}

.duplicate-file-topbar,
.duplicate-file-result-head,
.duplicate-file-panel-head,
.duplicate-file-clean-panel {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.duplicate-file-topbar {
  padding: 22px 24px;
  border: 1px solid #d7e3e8;
  border-radius: 12px;
  background: linear-gradient(135deg, #f9fcfd, #eef6f8);
}

.duplicate-file-eyebrow,
.duplicate-file-panel-head > div > span {
  color: var(--theme-strong);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
}

.duplicate-file-topbar h2,
.duplicate-file-panel-head h3 {
  margin: 5px 0 0;
  color: #1d3039;
}

.duplicate-file-topbar h2 { font-size: 24px; }
.duplicate-file-panel-head h3 { font-size: 17px; }

.duplicate-file-topbar p,
.duplicate-file-panel-head p,
.duplicate-file-clean-panel p {
  margin: 7px 0 0;
  color: #667982;
  font-size: 13px;
  line-height: 1.6;
}

.duplicate-file-flow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 17px 0;
  color: #647780;
}

.duplicate-file-flow-step {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 7px;
  background: #f1f5f6;
  font-size: 12px;
  font-weight: 700;
}

.duplicate-file-flow-step b {
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  border-radius: 50%;
  background: var(--theme-soft);
  color: #42616b;
}

.duplicate-file-flow-step.is-active {
  background: var(--theme-soft);
  color: var(--theme-strong);
}

.duplicate-file-flow-step.is-active b { background: var(--theme-accent); color: var(--theme-on-accent); }
.duplicate-file-flow-line { width: 28px; height: 1px; background: var(--theme-soft); }

.duplicate-file-panel,
.duplicate-file-results {
  margin-top: 14px;
  padding: 20px;
  border: 1px solid #dbe5e9;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 7px 24px rgba(28, 54, 65, .045);
}

.duplicate-file-dropzone {
  display: grid;
  min-height: 130px;
  margin-top: 17px;
  place-items: center;
  border: 1px dashed var(--theme-border);
  border-radius: 9px;
  background: #f5fbfc;
  color: var(--theme-strong);
  cursor: pointer;
  text-align: center;
}

.duplicate-file-dropzone strong,
.duplicate-file-dropzone small { display: block; }
.duplicate-file-dropzone strong { font-size: 16px; }
.duplicate-file-dropzone small { margin-top: 6px; color: #70858d; font-size: 12px; }

.duplicate-file-selected-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-height: 30px;
  margin-top: 14px;
}

.duplicate-file-selected {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 9px;
  border: 1px solid #dce6e9;
  border-radius: 6px;
  background: #f8fafb;
  font-size: 12px;
}

.duplicate-file-selected small { color: #778991; }
.duplicate-file-selected button { border: 0; background: transparent; color: #9a5d5d; cursor: pointer; font-size: 18px; line-height: 1; }

.duplicate-file-action-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
}

.duplicate-file-action-row [role="status"] { color: #657980; font-size: 12px; }

.duplicate-file-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 15px;
}

.duplicate-file-summary span {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  padding: 9px 11px;
  border: 1px solid #dce6e9;
  border-radius: 6px;
  background: #f8fafb;
  color: #5f737c;
  font-size: 12px;
}

.duplicate-file-summary b { color: #22343c; font-size: 16px; }
.duplicate-file-summary .is-warning { border-color: #f1d6b8; background: #fff8ef; }
.duplicate-file-summary .is-warning b { color: #a65c16; }

.duplicate-file-groups { display: grid; gap: 12px; margin-top: 16px; }

.duplicate-file-group {
  overflow: hidden;
  border: 1px solid #dbe5e9;
  border-radius: 8px;
  background: #fbfdfe;
}

.duplicate-file-group > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid #e2eaed;
}

.duplicate-file-group > header div { display: flex; align-items: center; gap: 9px; }
.duplicate-file-group > header strong { color: #233942; font-size: 13px; }
.duplicate-file-group > header span { color: #b26722; font-size: 11px; }
.duplicate-file-group > header small { color: #70838a; font-size: 11px; }

.duplicate-file-group-items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(215px, 1fr));
  gap: 10px;
  padding: 12px;
}

.duplicate-file-item {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 9px;
  border: 1px solid #dfe8eb;
  border-radius: 7px;
  background: #fff;
  cursor: pointer;
}

.duplicate-file-item.is-keep { border-color: #75b7c4; background: #f0fafb; }
.duplicate-file-item.is-remove { opacity: .8; }
.duplicate-file-item input { position: absolute; opacity: 0; pointer-events: none; }

.duplicate-file-thumb {
  display: grid;
  width: 70px;
  height: 70px;
  place-items: center;
  overflow: hidden;
  border: 1px solid #e0e7e9;
  border-radius: 5px;
  background: #f4f6f6;
}

.duplicate-file-thumb img { width: 100%; height: 100%; object-fit: contain; }
.duplicate-file-thumb b { color: #87969b; font-size: 10px; }

.duplicate-file-item-copy { display: grid; gap: 3px; min-width: 0; }
.duplicate-file-item-copy strong { color: var(--theme-strong); font-size: 12px; }
.duplicate-file-item.is-remove .duplicate-file-item-copy strong { color: #9b6666; }
.duplicate-file-item-copy b,
.duplicate-file-item-copy small,
.duplicate-file-item-copy em { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.duplicate-file-item-copy b { color: #2d424a; font-size: 12px; }
.duplicate-file-item-copy small,
.duplicate-file-item-copy em { color: #74868c; font-size: 10px; font-style: normal; }

.duplicate-file-clean-panel {
  align-items: center;
  margin-top: 16px;
  padding-top: 15px;
  border-top: 1px solid #e1e9eb;
}

.duplicate-file-clean-panel strong { color: #2c4149; font-size: 13px; }
.duplicate-file-clean-panel p { margin-top: 4px; }

.duplicate-file-outputs {
  display: grid;
  gap: 9px;
  margin-top: 16px;
  padding-top: 15px;
  border-top: 1px solid #e1e9eb;
}

.duplicate-file-outputs > div { display: grid; gap: 3px; }
.duplicate-file-outputs > div strong { color: var(--theme-strong); font-size: 13px; }
.duplicate-file-outputs > div span { color: #6b7d84; font-size: 11px; }

.duplicate-file-output {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 11px 12px;
  border: 1px solid #d6e4e7;
  border-radius: 7px;
  color: inherit;
  text-decoration: none;
}

.duplicate-file-output:hover { border-color: var(--theme-border); background: #f6fbfc; }
.duplicate-file-output-combined {
  padding: 14px;
  border-color: #59a9b8;
  background: #edf9fb;
  box-shadow: 0 5px 14px rgba(var(--theme-rgb), 0.08);
}
.duplicate-file-output-combined b { color: var(--theme-strong); font-size: 13px; }
.duplicate-file-output-combined > strong { font-size: 13px; }
.duplicate-file-output span { display: grid; gap: 3px; min-width: 0; }
.duplicate-file-output b { overflow: hidden; color: #2c424a; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.duplicate-file-output small { color: #708289; font-size: 11px; }
.duplicate-file-output > strong { flex: 0 0 auto; color: var(--theme-strong); font-size: 12px; }
.duplicate-file-no-duplicates { display: grid; gap: 6px; padding: 22px; color: #657980; text-align: center; }
.duplicate-file-no-duplicates strong { color: var(--theme-strong); }

@media (max-width: 760px) {
  .duplicate-file-workspace { padding: 12px; }
  .duplicate-file-topbar,
  .duplicate-file-result-head,
  .duplicate-file-panel-head,
  .duplicate-file-clean-panel { flex-direction: column; align-items: stretch; }
  .duplicate-file-flow { align-items: stretch; flex-direction: column; }
  .duplicate-file-flow-line { width: 1px; height: 14px; margin-left: 20px; }
  .duplicate-file-action-row { align-items: stretch; flex-direction: column; }
  .duplicate-file-action-row button { width: 100%; }
  .duplicate-file-group > header { align-items: flex-start; flex-direction: column; }
  .duplicate-file-output { align-items: flex-start; flex-direction: column; }
}

/* WORKBENCH_DARK_THEME: generated by scripts/build-workbench-dark-theme.mjs */
@media screen {
:root[data-theme="dark"] { color-scheme: dark; }
:where(:root[data-theme="dark"]) body { color: #f0f0f2; background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .operator-login-gate { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .operator-login-panel { border-color: #484b53; background-color: #222327; box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .operator-login-brand img { border-color: #484b53; }
:where(:root[data-theme="dark"]) .operator-login-brand p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .operator-login-field { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .operator-login-field b { color: hsl(4 53% 76%); }
:where(:root[data-theme="dark"]) .operator-login-field input { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .operator-login-field input:focus { border-color: #f1641e; box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .operator-login-error { color: hsl(0 49% 76%); }
:where(:root[data-theme="dark"]) .operator-login-error.success { color: hsl(161 50% 76%); }
:where(:root[data-theme="dark"]) .operator-login-secondary { border-color: #484b53; background-color: #222327; color: #ffad7a; }
:where(:root[data-theme="dark"]) .operator-login-secondary:hover { border-color: #f1641e; background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .operator-login-note { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .operator-session { border-color: #484b53; background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .operator-session span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .operator-session strong { color: #ffad7a; }
:where(:root[data-theme="dark"]) .managed-access-state { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .managed-access-state span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .managed-access-state strong { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .managed-access-state small { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-topbar p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-top-actions > span { border-color: #484b53; background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-tabs { border-color: #484b53; background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .admin-tabs button { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-tabs button.active { background-color: #222327; color: #ffad7a; box-shadow: 0 1px 5px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .admin-date-filter { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-date-heading span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-date-heading strong { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-date-heading small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-date-presets { border-color: #484b53; background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .admin-date-presets button { color: hsl(205 38% 76%); }
:where(:root[data-theme="dark"]) .admin-date-presets button.active { background-color: #222327; color: #ffad7a; box-shadow: 0 1px 4px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .admin-custom-date-fields label span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-custom-date-fields > span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-custom-date-fields input { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-login-panel { border-color: #484b53; background-color: #222327; box-shadow: 0 12px 34px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .admin-login-panel p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-lock-mark { color: #222222; background-color: #f1641e; }
:where(:root[data-theme="dark"]) .admin-login-error { color: hsl(0 49% 76%) !important; }
:where(:root[data-theme="dark"]) .admin-summary-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-summary-card span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-summary-card b { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-summary-card small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-panel { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-ai-image-auth-state { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-ai-image-auth-state strong { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-ai-image-auth-state.attention strong { color: hsl(0 49% 76%); }
:where(:root[data-theme="dark"]) .admin-ai-image-auth-actions p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-panel > header { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-panel > header span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-panel > header input,
:where(:root[data-theme="dark"]) .admin-panel > header select { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-list-row { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-list-row small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-list-row strong { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-list-row em { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-spend-details i { background-color: #27292e; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-cost-bar { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .admin-cost-bar i { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .admin-task-row { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-task-row:hover { background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-task-row small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-task-status { background-color: #1a1b1f; color: hsl(212 38% 76%); }
:where(:root[data-theme="dark"]) .admin-task-status.completed { background-color: #1a1b1f; color: hsl(149 61% 76%); }
:where(:root[data-theme="dark"]) .admin-task-status.failed { background-color: #27292e; color: hsl(4 68% 76%); }
:where(:root[data-theme="dark"]) .admin-task-actions button,
:where(:root[data-theme="dark"]) .admin-task-actions a { border-color: #484b53; background-color: #222327; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-task-actions button:hover,
:where(:root[data-theme="dark"]) .admin-task-actions a:hover { border-color: #f1641e; background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-asset-dialog { border-color: #484b53; box-shadow: 0 20px 65px rgba(0, 0, 0, 0.25); }
:where(:root[data-theme="dark"]) .admin-asset-dialog::backdrop { background-color: rgba(0, 0, 0, 0.48); }
:where(:root[data-theme="dark"]) .admin-asset-dialog header { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-asset-dialog header span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-asset-dialog header button { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-asset-dialog-body { background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-asset-preview-head span { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-asset-preview-head a { border-color: #484b53; background-color: #222327; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-asset-preview-content { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-asset-preview-content > iframe { background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-file-preview b { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-file-preview p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-asset-dialog-list { border-left-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-asset-list-title { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-asset-list-title small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-asset-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-asset-card.active { border-color: hsl(193 36% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-asset-card button > img,
:where(:root[data-theme="dark"]) .admin-asset-kind { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .admin-asset-kind { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-asset-card b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-asset-card small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-asset-card a { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-source-assets { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-source-assets summary { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-empty { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-registration-count { background-color: hsl(39 42% 18%); color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-registration-card > summary em.pending { background-color: hsl(39 42% 18%); color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-registration-help { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-selection-help { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-field-title { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-choice-grid label { border-color: #484b53; background-color: #222327; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-choice-grid label:has(input:checked) { border-color: hsl(191 32% 38%); background-color: #27292e; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-choice-empty { border-color: #484b53; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-form-actions p { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-account-card { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-account-card > summary b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-account-card > summary small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-account-card > summary em.active { background-color: #1a1b1f; color: hsl(149 61% 76%); }
:where(:root[data-theme="dark"]) .admin-account-card > summary em.disabled { background-color: #1a1b1f; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-account-editor { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-account-actions span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-account-actions .danger { border-color: hsl(5 48% 38%); color: hsl(3 57% 76%); background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-assignment-note { border-color: #484b53; background-color: #222327; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-api-usage { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-api-usage-head { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-api-usage-head b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-api-usage-head span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-api-usage-grid article { border-right-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-api-usage-grid span,
:where(:root[data-theme="dark"]) .admin-api-usage-grid small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-api-usage-grid b { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-api-usage-foot { border-top-color: #484b53; background-color: #27292e; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-api-usage-empty { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-api-usage-empty b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .employee-share-dialog { border-color: #484b53; box-shadow: 0 20px 65px rgba(0, 0, 0, 0.25); }
:where(:root[data-theme="dark"]) .employee-share-dialog::backdrop { background-color: rgba(0, 0, 0, 0.48); }
:where(:root[data-theme="dark"]) .employee-share-dialog > header { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .employee-share-dialog > header span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .employee-share-dialog > header button { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .employee-share-body { background-color: #27292e; }
:where(:root[data-theme="dark"]) .employee-share-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .employee-share-brand { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .employee-share-login > div { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .employee-share-login dt { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .employee-share-login dd { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .employee-share-login .employee-share-pin { color: #ffad7a; }
:where(:root[data-theme="dark"]) .employee-share-features article { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .employee-share-features article span,
:where(:root[data-theme="dark"]) .employee-share-features p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .employee-share-notice { background-color: #1a1b1f; color: hsl(203 38% 76%); }
:where(:root[data-theme="dark"]) .employee-share-message { color: #ffad7a; }
:where(:root[data-theme="dark"]) .api-key-reveal-body { background-color: #27292e; }
:where(:root[data-theme="dark"]) .api-key-reveal-notice { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .api-key-reveal-actions span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-audit-list article { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-audit-list time { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-audit-list small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-development-entry { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-development-entry time { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-development-heading h4 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-development-heading span { background-color: #27292e; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-development-meta span { background-color: #1a1b1f; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-development-details article { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-development-details article > span { background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-development-details article > span[data-change-type="新增"] { background-color: #1a1b1f; color: hsl(150 50% 76%); }
:where(:root[data-theme="dark"]) .admin-development-details article > span[data-change-type="修复"] { background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-development-details article > span[data-change-type="优化"] { background-color: #1a1b1f; color: hsl(228 38% 76%); }
:where(:root[data-theme="dark"]) .admin-development-details article > span[data-change-type="测试"] { background-color: #1a1b1f; color: hsl(272 38% 76%); }
:where(:root[data-theme="dark"]) .admin-development-details b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-development-details small { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-development-details p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-development-files { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-development-files summary { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-development-files ul { background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-deployment-rule { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-deployment-rule b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-deployment-rule span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-deployment-message { border-left-color: #f1641e; background-color: #27292e; color: hsl(197 38% 76%); }
:where(:root[data-theme="dark"]) .admin-manual-toolbar { border-bottom-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-manual-toolbar strong { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-manual-toolbar span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-manual-toolbar input { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-manual-list { background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-manual-group { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-manual-group > header { border-bottom-color: #484b53; background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .admin-manual-group > header span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-manual-group > header b { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-manual-entry { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-manual-entry summary > span { background-color: #27292e; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-manual-entry summary b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .admin-manual-entry summary small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-manual-entry summary i { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-manual-entry[open] summary i { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-manual-entry-body { border-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-manual-entry-body > section + section { border-left-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-manual-entry-body ul,
:where(:root[data-theme="dark"]) .admin-manual-entry-body ol { color: hsl(205 38% 76%); }
:where(:root[data-theme="dark"]) .admin-manual-entry-body footer { border-top-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-manual-entry-body footer b { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-manual-entry-body footer span { color: hsl(205 38% 76%); }
:where(:root[data-theme="dark"]) .admin-menu-help { border-bottom-color: #484b53; background-color: #27292e; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-menu-workbench > aside { border-left-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-menu-column-title span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-menu-column-title span.changed { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-menu-tree { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .admin-menu-row { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-menu-handle { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-menu-kind { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-menu-row input[data-menu-label],
:where(:root[data-theme="dark"]) .admin-menu-icon-input { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-menu-visible { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-menu-lock { background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-menu-row-actions button { border-color: #484b53; background-color: #222327; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-menu-node.drag-over-before::before,
:where(:root[data-theme="dark"]) .admin-menu-node.drag-over-after::after { background-color: #f1641e; }
:where(:root[data-theme="dark"]) .admin-menu-node.drag-over-inside > .admin-menu-row { border-color: #f1641e; outline-color: rgba(241, 100, 30, 0.12); }
:where(:root[data-theme="dark"]) .admin-menu-preview-group { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .admin-menu-preview-group > header { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .admin-menu-preview-icon { background-color: #222327; color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-menu-preview-group > header small { color: #ffad7a; }
:where(:root[data-theme="dark"]) .admin-menu-preview-feature { border-color: #484b53; color: #c0c3cc; }
@media (max-width: 900px) {
:where(:root[data-theme="dark"]) .admin-task-row > span:nth-child(4),
:where(:root[data-theme="dark"]) .admin-task-row > span:nth-child(5),
:where(:root[data-theme="dark"]) .admin-task-row > span:nth-child(6) { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .admin-asset-dialog-list { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .admin-api-usage-grid article:nth-child(-n+2) { border-bottom-color: #484b53; }
}
@media (max-width: 900px) {
:where(:root[data-theme="dark"]) .admin-menu-workbench > aside { border-top-color: #484b53; }
}
:where(:root[data-theme="dark"]) .sidebar { border-right-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .brand-mark { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .brand p,
:where(:root[data-theme="dark"]) .topline p,
:where(:root[data-theme="dark"]) .section-heading p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .panel { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .panel-title span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .field { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .field small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) input,
:where(:root[data-theme="dark"]) select,
:where(:root[data-theme="dark"]) textarea { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .nav-group { border-color: #484b53; background-color: #222327; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .nav-group-toggle { background-color: #27292e; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .nav-group-toggle small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .nav-group-icon { color: #ffad7a; }
:where(:root[data-theme="dark"]) .nav-group.open > .nav-group-toggle { background-color: #a63b0b; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .nav-group.open > .nav-group-toggle .nav-group-icon { background-color: rgba(34, 35, 39, 0.14); color: #f0f0f2; }
:where(:root[data-theme="dark"]) .nav-group.open > .nav-group-toggle i { border-color: #484b53; }
:where(:root[data-theme="dark"]) .nav-group-icon-image { background-image: linear-gradient(145deg, #27292e, #1a1b1f); }
:where(:root[data-theme="dark"]) .nav-group-icon-market { background-image: linear-gradient(145deg, #1a1b1f, #27292e); }
:where(:root[data-theme="dark"]) .nav-group-icon-design { background-image: linear-gradient(145deg, #27292e, #1a1b1f); }
:where(:root[data-theme="dark"]) .nav-group-toggle i { border-right-color: #484b53; border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .nav-group-body { border-top-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .nav-submenu { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .nav-submenu-toggle { background-color: #1a1b1f; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .nav-submenu.open > .nav-submenu-toggle { background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .nav-submenu-toggle i { border-right-color: #484b53; border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .nav-submenu-body { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .page-tab { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .page-tab-icon { border-color: #484b53; background-color: #27292e; color: #ffad7a !important; }
:where(:root[data-theme="dark"]) .page-tab.active { background-color: #f1641e; border-color: #f1641e; color: #222222; box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .page-tab.active .page-tab-icon { border-color: #484b53; background-color: #222327; color: #ffad7a !important; }
:where(:root[data-theme="dark"]) .paw-order-form,
:where(:root[data-theme="dark"]) .paw-preview-panel { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .paw-review-note { border-color: hsl(193 47% 38%); background-color: #1a1b1f; color: hsl(200 44% 76%); }
:where(:root[data-theme="dark"]) .paw-review-note strong { color: #ffad7a; }
:where(:root[data-theme="dark"]) .paw-master-template { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .paw-master-template h3 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .paw-master-template p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-master-template-head > span { background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .paw-master-template img { border-top-color: #484b53; border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .paw-region-map span { border-color: #484b53; background-color: #27292e; color: hsl(209 38% 76%); }
:where(:root[data-theme="dark"]) .paw-region-map b { color: #ffad7a; }
:where(:root[data-theme="dark"]) .paw-step { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .paw-step::before { background-color: #a63b0b; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .paw-step-head b,
:where(:root[data-theme="dark"]) .paw-card-title { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .paw-required-badge { background-color: #27292e; color: hsl(4 68% 76%); }
:where(:root[data-theme="dark"]) .paw-step-head span,
:where(:root[data-theme="dark"]) .paw-part-card p,
:where(:root[data-theme="dark"]) .paw-validation { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-color-field input[type="color"]:disabled { background-color: #222327; }
:where(:root[data-theme="dark"]) .paw-palette-empty { border-color: #484b53; background-color: #222327; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-source-chart { border-top-color: #484b53; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-source-chart img { border-color: #484b53; }
:where(:root[data-theme="dark"]) .paw-swatch { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .paw-swatch span { border-color: #484b53; }
:where(:root[data-theme="dark"]) .paw-swatch:hover { border-color: #f1641e; background-color: #27292e; }
:where(:root[data-theme="dark"]) .paw-swatch.selected { border-color: hsl(19 48% 38%); box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.22); background-color: #27292e; }
:where(:root[data-theme="dark"]) .paw-part-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .paw-part-visual { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .paw-choice-field legend { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-choice-field label { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .paw-preview-head p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-download-custom-toggle { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .paw-download-custom-toggle:has(input:disabled) { color: #c0c3cc; }
:where(:root[data-theme="dark"]) #pawPreviewCanvas { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .paw-validation { border-color: hsl(39 48% 38%); background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .paw-validation.ok { border-color: hsl(149 36% 38%); background-color: #1a1b1f; color: hsl(161 50% 76%); }
:where(:root[data-theme="dark"]) .paw-custom-generate-row span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-custom-effect-panel { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .paw-custom-effect-head h4 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .paw-custom-effect-head p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-custom-effect-progress { border-color: hsl(22 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .paw-custom-effect-progress-meta { color: #ffad7a; }
:where(:root[data-theme="dark"]) .paw-custom-effect-progress-track { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .paw-custom-effect-progress-track i { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .paw-custom-effect-progress.is-done .paw-custom-effect-progress-track i { background-color: hsl(158 42% 22%); }
:where(:root[data-theme="dark"]) .paw-custom-effect-progress.is-error { border-color: hsl(6 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .paw-custom-effect-progress.is-error .paw-custom-effect-progress-meta { color: hsl(4 68% 76%); }
:where(:root[data-theme="dark"]) .paw-custom-effect-progress.is-error .paw-custom-effect-progress-track i { background-color: hsl(4 42% 22%); }
:where(:root[data-theme="dark"]) .paw-custom-effect-preview { border-color: #484b53; background-color: #27292e; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-custom-effect-message { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-custom-effect-message.error { color: hsl(4 68% 76%); }
:where(:root[data-theme="dark"]) .paw-custom-history-panel { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .paw-custom-history-head h4 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .paw-custom-history-head p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-custom-task-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .paw-custom-task-card.is-selected { border-color: hsl(158 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .paw-custom-task-card.is-failed { border-color: hsl(6 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .paw-custom-task-thumb { background-color: #1a1b1f; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-custom-task-title span,
:where(:root[data-theme="dark"]) .paw-custom-task-main p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-custom-task-progress { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .paw-custom-task-progress i { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .paw-custom-task-empty { border-color: #484b53; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-special-workspace { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .paw-special-summary:focus-visible { outline-color: rgba(241, 100, 30, 0.22); }
:where(:root[data-theme="dark"]) .paw-special-summary-copy b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .paw-special-summary-copy small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-special-summary-action { color: #ffad7a; }
:where(:root[data-theme="dark"]) .paw-special-content { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .paw-special-input-panel h3 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .paw-special-input-panel > p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .paw-special-section-label { color: #ffad7a; }
:where(:root[data-theme="dark"]) .paw-special-workspace .paw-custom-effect-panel { border-left-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .paw-special-workspace .paw-custom-effect-preview { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .paw-special-workspace .paw-custom-history-panel { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .paw-special-workspace .paw-custom-task-card { background-color: #222327; }
:where(:root[data-theme="dark"]) .paw-special-workspace .paw-custom-task-title b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .paw-task-status { color: hsl(212 38% 76%); }
:where(:root[data-theme="dark"]) .paw-task-status.completed { color: hsl(158 68% 76%); }
:where(:root[data-theme="dark"]) .paw-task-status.failed { color: hsl(4 68% 76%); }
@media (max-width: 980px) {
:where(:root[data-theme="dark"]) .paw-special-workspace .paw-custom-effect-panel { border-top-color: #484b53; }
}
:where(:root[data-theme="dark"]) .storybook-topbar p,
:where(:root[data-theme="dark"]) .storybook-section-head p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-steps { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .storybook-steps button { border-right-color: #484b53; background-color: #222327; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-steps button.active { background-color: #27292e; color: #ffad7a; }
:where(:root[data-theme="dark"]) .storybook-steps b { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .storybook-steps button.active b { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .storybook-screen,
:where(:root[data-theme="dark"]) .storybook-history-section { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .storybook-section-head > div:first-child > span,
:where(:root[data-theme="dark"]) .workspace-kicker { color: #ffad7a; }
:where(:root[data-theme="dark"]) .storybook-mode-field { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .storybook-mode-field legend { color: hsl(193 38% 76%); }
:where(:root[data-theme="dark"]) .storybook-mode-options span { border-color: #484b53; background-color: #222327; color: hsl(193 38% 76%); }
:where(:root[data-theme="dark"]) .storybook-mode-options small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-mode-options input:checked + span { border-color: #f1641e; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 1); background-color: #27292e; color: #ffad7a; }
:where(:root[data-theme="dark"]) .storybook-character-editor { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .storybook-character-editor-head span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-character-columns { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-character-row { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .storybook-character-row input,
:where(:root[data-theme="dark"]) .storybook-character-row select { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .storybook-character-row input:disabled,
:where(:root[data-theme="dark"]) .storybook-character-row select:disabled { background-color: #1a1b1f; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-character-photo { border-color: hsl(196 25% 38%); background-color: #27292e; color: hsl(193 38% 76%); }
:where(:root[data-theme="dark"]) .storybook-character-photo.is-ready { border-color: hsl(192 35% 38%); background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .storybook-character-remove { border-color: hsl(8 42% 38%); background-color: #222327; color: hsl(6 55% 76%); }
:where(:root[data-theme="dark"]) .storybook-upload-box { border-color: hsl(198 25% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .storybook-upload-trigger > span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-upload-box > div { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-cover-preview-list figcaption { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-cover-name-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .storybook-cover-name-card.is-drop-target { border-color: #f1641e; box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .storybook-cover-order-actions button { border-color: #484b53; background-color: #27292e; color: hsl(193 38% 76%); }
:where(:root[data-theme="dark"]) .storybook-cover-order-actions button:hover:not(:disabled) { border-color: #f1641e; background-color: #27292e; color: #ffad7a; }
:where(:root[data-theme="dark"]) .storybook-cover-order-actions button.is-delete { border-color: #484b53; color: hsl(6 53% 76%); }
:where(:root[data-theme="dark"]) .storybook-cover-order-actions button.is-delete:hover:not(:disabled) { border-color: hsl(7 48% 38%); background-color: #27292e; color: hsl(5 57% 76%); }
:where(:root[data-theme="dark"]) .storybook-cover-name-status { color: hsl(170 47% 76%); }
:where(:root[data-theme="dark"]) .storybook-cover-name-status.recognizing { color: #ffad7a; }
:where(:root[data-theme="dark"]) .storybook-cover-name-status.failed,
:where(:root[data-theme="dark"]) .storybook-cover-name-status.needs_review { color: hsl(6 48% 76%); }
:where(:root[data-theme="dark"]) .storybook-cover-role-names label > span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-cover-role-names input { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .storybook-cover-role-names input:focus { border-color: #f1641e; outline-color: rgba(241, 100, 30, 0.12); }
:where(:root[data-theme="dark"]) .storybook-character-auto-name { border-color: #484b53; background-color: #1a1b1f; color: hsl(195 38% 76%); }
:where(:root[data-theme="dark"]) .storybook-result-pane { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .storybook-result-head span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-progress { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .storybook-progress i { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .storybook-cover-result { border-color: #484b53; background-color: #222327; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-cover-refine { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .storybook-promo-cover-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .storybook-promo-cover-card span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-promo-cover-card.is-failed { border-color: hsl(7 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .storybook-notice { border-color: #484b53; background-color: #27292e; color: hsl(193 38% 76%); }
:where(:root[data-theme="dark"]) .storybook-gender-row { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .storybook-gender-row > div:first-child > span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-gender-options span { border-color: #484b53; background-color: #222327; color: hsl(193 38% 76%); }
:where(:root[data-theme="dark"]) .storybook-gender-options input:checked + span { border-color: #f1641e; background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .storybook-page-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .storybook-page-card.is-confirmed { border-color: hsl(148 29% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .storybook-page-card.is-failed { border-color: hsl(7 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .storybook-page-card.is-name-review { border-color: hsl(34 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .storybook-page-head span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-page-image { background-color: #1a1b1f; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-page-image em { background-color: rgba(0, 0, 0, 0.78); color: #f0f0f2; }
:where(:root[data-theme="dark"]) .storybook-page-preview { background-color: #1a1b1f; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .storybook-page-preview span { background-color: rgba(0, 0, 0, 0.78); }
:where(:root[data-theme="dark"]) .storybook-image-dialog { background-color: #15161a; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .storybook-image-dialog::backdrop { background-color: rgba(0, 0, 0, 0.82); }
:where(:root[data-theme="dark"]) .storybook-image-dialog-head { background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .storybook-page-progress { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .storybook-page-progress i { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .storybook-name-audit { border-color: hsl(149 35% 38%); background-color: #27292e; color: hsl(155 45% 76%); }
:where(:root[data-theme="dark"]) .storybook-name-audit.is-blocking { border-color: hsl(35 48% 38%); background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .storybook-page-name-toggle { border-color: #484b53; background-color: #27292e; color: hsl(193 38% 76%); }
:where(:root[data-theme="dark"]) .storybook-page-name-toggle small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .storybook-history-item { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .storybook-history-item p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .history-run-time { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .required { color: hsl(6 60% 76%); }
@media (max-width: 720px) {
:where(:root[data-theme="dark"]) .storybook-steps button { border-bottom-color: #484b53; }
}
:where(:root[data-theme="dark"]) .mode-option { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .mode-option:has(input:checked) { border-color: hsl(191 32% 38%); background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .mode-option strong { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .mode-option small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .checkbox-line { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .api-pool-disclosure { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .api-pool-disclosure summary { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .api-pool-disclosure summary small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .api-pool-disclosure[open] summary { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .input-area,
:where(:root[data-theme="dark"]) .task-section { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .input-area > [data-step-label]::before { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .workflow-block { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .competitor-mode-switch { border-color: #484b53; background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .competitor-mode-switch button { border-right-color: #484b53; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-mode-switch button.active { background-color: #222327; color: #ffad7a; box-shadow: inset 0 -4px rgba(0, 0, 0, 1); }
:where(:root[data-theme="dark"]) .competitor-mode-switch span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-shop-intro-head { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-shop-intro-head p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-shop-steps { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .competitor-shop-steps article { border-right-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-shop-steps article > b { background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-shop-steps span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-shop-boundary { border-left-color: hsl(37 48% 38%); background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-shop-task-heading p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-shop-task-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .competitor-shop-mark { background-color: hsl(191 42% 22%); color: #f0f0f2; }
:where(:root[data-theme="dark"]) .competitor-shop-task-identity p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-shop-metrics { border-block-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .competitor-shop-metrics span { border-right-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-shop-metrics b { color: hsl(192 49% 76%); }
:where(:root[data-theme="dark"]) .competitor-shop-metrics small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-shop-metrics .has-risk b { color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-shop-progress { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .competitor-shop-progress i { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .competitor-shop-progress-text { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-shop-fields summary { color: hsl(197 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-shop-fields span { background-color: #1a1b1f; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-shop-analysis-note { border-left-color: hsl(37 48% 38%); background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-batch-status.is-ready { background-color: #1a1b1f; color: hsl(190 62% 76%); }
@media (max-width: 900px) {
:where(:root[data-theme="dark"]) .competitor-shop-steps article:nth-child(-n+2) { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-shop-metrics span { border-bottom-color: #484b53; }
}
@media (max-width: 620px) {
:where(:root[data-theme="dark"]) .competitor-mode-switch button { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-shop-steps article { border-bottom-color: #484b53; }
}
:where(:root[data-theme="dark"]) .competitor-plugin-install { border-color: hsl(194 33% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .competitor-plugin-head { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-plugin-download small { color: rgba(240, 240, 242, 0.78); }
:where(:root[data-theme="dark"]) .plugin-install-step { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .plugin-install-step.important { border-color: hsl(42 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .plugin-install-step > strong { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .plugin-install-step span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .plugin-install-step code { color: #ffad7a; }
:where(:root[data-theme="dark"]) .plugin-address-row code { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .plugin-copy-notice { color: hsl(161 50% 76%); }
:where(:root[data-theme="dark"]) .block-heading { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .block-heading h3 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .block-heading p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .simple-step { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .simple-step > strong { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .simple-step b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .simple-step span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .compact-import summary span { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .compact-import summary small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .compact-import summary::after { border-color: #484b53; color: #ffad7a; }
:where(:root[data-theme="dark"]) .compact-import[open] summary { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .upload-box { border-color: #484b53; background-color: #27292e; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .upload-title { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .reference-preview { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .reference-preview.empty { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .dimension-panel { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .dimension-heading p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .extract-options label { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .studio-topbar { border-color: rgba(72, 75, 83, 0.9); background-color: rgba(34, 35, 39, 0.86); box-shadow: 0 18px 50px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .studio-kicker { color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-topbar p:last-child { color: #c0c3cc; }
:where(:root[data-theme="dark"]) #studioHistoryJumpBtn.has-history { border-color: hsl(149 47% 38% / 0.28); background-color: #27292e; color: hsl(149 63% 76%); }
:where(:root[data-theme="dark"]) .studio-steps span { border-color: #484b53; background-color: #222327; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-steps span.active { border-color: hsl(22 48% 38%); background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .studio-hero,
:where(:root[data-theme="dark"]) .studio-section-head,
:where(:root[data-theme="dark"]) .studio-focus-card { border-color: rgba(72, 75, 83, 0.9); background-color: #222327; box-shadow: 0 24px 70px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .studio-pill { background-color: #27292e; color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-hero p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-photo-card,
:where(:root[data-theme="dark"]) .studio-result-image { background-image: radial-gradient(circle at 35% 28%, rgba(34, 35, 39, 0.85), transparent 20%), linear-gradient(135deg, hsl(30 42% 18%), hsl(25 33% 22%)); }
:where(:root[data-theme="dark"]) .studio-photo-card.warm { background-image: linear-gradient(135deg, hsl(32 42% 18%), hsl(26 39% 22%)); }
:where(:root[data-theme="dark"]) .studio-photo-card.clean { background-image: linear-gradient(135deg, #27292e, #34363d); }
:where(:root[data-theme="dark"]) .studio-photo-card.dark { background-image: linear-gradient(135deg, #15161a, hsl(28 21% 22%)); }
:where(:root[data-theme="dark"]) .studio-photo-card span,
:where(:root[data-theme="dark"]) .studio-result-image span { background-color: rgba(34, 35, 39, 0.82); color: #f0f0f2; }
:where(:root[data-theme="dark"]) .studio-section-head span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-section-head p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-upload-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-upload-card:hover { border-color: #f1641e; box-shadow: 0 16px 36px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .studio-upload-card span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-upload-card em { color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-preview-grid figure { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-preview-grid figcaption,
:where(:root[data-theme="dark"]) .studio-empty { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-generation-methods { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .studio-generation-methods-head span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-generation-methods-head p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-generation-method { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-generation-method.api { border-color: hsl(193 39% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-method-badge { background-color: #1a1b1f; color: hsl(200 38% 76%); }
:where(:root[data-theme="dark"]) .studio-generation-method.api .studio-method-badge { background-color: #1a1b1f; color: hsl(195 68% 76%); }
:where(:root[data-theme="dark"]) .studio-generation-method p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-generation-method-actions button > span { background-color: rgba(241, 100, 30, 0.1); }
:where(:root[data-theme="dark"]) .studio-orbit { border-color: #484b53; }
:where(:root[data-theme="dark"]) .studio-orbit span { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .studio-progress-track { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .studio-progress-fill { background-image: linear-gradient(90deg, #f1641e, #f1641e); color: #222222; }
:where(:root[data-theme="dark"]) .studio-review-time { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-review-time small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-truth-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-truth-card.needs-review { border-color: hsl(40 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-truth-card em { background-color: #1a1b1f; color: hsl(161 50% 76%); }
:where(:root[data-theme="dark"]) .studio-truth-card.needs-review em { background-color: hsl(43 42% 18%); color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-truth-card textarea { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-info-card textarea { border-color: #484b53; color: #f0f0f2; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-info-card textarea:focus { border-color: hsl(22 48% 38%); box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .studio-info-card textarea:disabled { color: #c0c3cc; background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .studio-scene-warning { color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-truth-card small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-count-control,
:where(:root[data-theme="dark"]) .studio-required-types { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-count-control span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-size-select { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-size-select span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-size-select select { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .studio-type-row { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-type-row span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-total-control strong { color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-submit-notice { border-color: hsl(194 29% 38%); background-color: #1a1b1f; color: hsl(194 63% 76%); }
:where(:root[data-theme="dark"]) .studio-submit-notice::before { background-color: hsl(194 42% 22%); box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .studio-submit-notice.is-success { border-color: hsl(149 47% 38% / 0.3); background-color: #1a1b1f; color: hsl(149 63% 76%); }
:where(:root[data-theme="dark"]) .studio-submit-notice.is-success::before { background-color: hsl(149 42% 22%); box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .studio-submit-notice.is-error { border-color: hsl(0 48% 38% / 0.3); background-color: #27292e; color: hsl(0 51% 76%); }
:where(:root[data-theme="dark"]) .studio-submit-notice.is-error::before { background-color: hsl(0 42% 22%); box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) #studioGenerateBtn.is-submitting::before,
:where(:root[data-theme="dark"]) #studioFullGenerateBtn.is-submitting::before { border-color: rgba(72, 75, 83, 0.45); border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .studio-required-types label { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-generate-preview div { background-image: linear-gradient(135deg, #1a1b1f, hsl(26 39% 22%)); }
:where(:root[data-theme="dark"]) .studio-generate-steps span { border-color: #484b53; background-color: #222327; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-generate-steps span.active { border-color: hsl(22 48% 38%); background-color: #27292e; color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-plan-summary { border-color: hsl(194 26% 38% / 0.22); background-image: linear-gradient(135deg, rgba(26, 27, 31, 0.95), rgba(34, 35, 39, 0.96)); color: hsl(197 47% 76%); }
:where(:root[data-theme="dark"]) .studio-plan-summary span,
:where(:root[data-theme="dark"]) .studio-plan-summary p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-result-notice { border-color: hsl(36 48% 38% / 0.28); background-color: rgba(26, 27, 31, 0.88); color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-result-card { border-color: #484b53; background-color: #222327; box-shadow: 0 14px 34px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .studio-result-image { background-image: linear-gradient(135deg, #27292e, #34363d); }
:where(:root[data-theme="dark"]) .studio-card-b .studio-result-image { background-image: linear-gradient(135deg, hsl(31 42% 18%), hsl(26 39% 22%)); }
:where(:root[data-theme="dark"]) .studio-card-c .studio-result-image { background-image: linear-gradient(135deg, #1a1b1f, hsl(197 25% 22%)); }
:where(:root[data-theme="dark"]) .studio-card-d .studio-result-image { background-image: linear-gradient(135deg, #15161a, hsl(27 21% 22%)); }
:where(:root[data-theme="dark"]) .studio-result-card p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-result-card small { color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-regenerate-editor { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .studio-regenerate-editor label > span { color: hsl(197 38% 76%); }
:where(:root[data-theme="dark"]) .studio-regenerate-prompt { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .studio-regenerate-prompt:focus { outline-color: rgba(241, 100, 30, 0.16); border-color: hsl(193 36% 38%); }
:where(:root[data-theme="dark"]) .studio-listing-copy { border-color: #484b53; background-color: #222327; box-shadow: 0 14px 34px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .studio-listing-head span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-copy-block { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-copy-block p,
:where(:root[data-theme="dark"]) .studio-copy-block pre,
:where(:root[data-theme="dark"]) .studio-copy-block ol { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .studio-copy-block small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-task-panel { border-color: #484b53; background-color: rgba(34, 35, 39, 0.92); box-shadow: 0 18px 42px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .studio-task-head span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-task-head p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-done-notice { border-color: hsl(149 47% 38% / 0.28); background-image: linear-gradient(135deg, #1a1b1f, #222327); color: hsl(149 63% 76%); box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .studio-done-notice span { color: hsl(149 45% 76%); }
:where(:root[data-theme="dark"]) .studio-task-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-task-card.is-finished { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-task-card.is-unread { border-color: hsl(148 48% 38%); box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .studio-task-card.is-preview-ready { border-color: hsl(43 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-task-card.is-partial { border-color: hsl(27 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-task-card.is-preview-ready .studio-finished-badge { background-color: hsl(39 42% 22%); }
:where(:root[data-theme="dark"]) .studio-task-card.is-partial .studio-finished-badge { background-color: hsl(24 42% 22%); }
:where(:root[data-theme="dark"]) .studio-task-card.is-failed { border-color: hsl(6 48% 38% / 0.28); background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-finished-badge { background-color: hsl(148 42% 22%); color: #f0f0f2; box-shadow: 0 8px 18px rgba(0, 0, 0, 0.25); }
:where(:root[data-theme="dark"]) .studio-task-thumb { background-color: #1a1b1f; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-task-title span,
:where(:root[data-theme="dark"]) .studio-task-main p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .task-cost-details { color: hsl(196 38% 76%); }
:where(:root[data-theme="dark"]) .task-cost-details summary,
:where(:root[data-theme="dark"]) .task-cost-pill,
:where(:root[data-theme="dark"]) .task-cost-missing { border-color: #484b53; background-color: #222327; color: hsl(195 49% 76%); }
:where(:root[data-theme="dark"]) .task-cost-details ul { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .task-cost-details small,
:where(:root[data-theme="dark"]) .task-cost-missing { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-task-progress { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .studio-task-progress i { background-image: linear-gradient(90deg, hsl(194 26% 22%), hsl(151 28% 18%)); }
:where(:root[data-theme="dark"]) .modeling-topbar,
:where(:root[data-theme="dark"]) .modeling-panel { border-color: rgba(72, 75, 83, 0.9); background-color: rgba(34, 35, 39, 0.9); box-shadow: 0 18px 50px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .modeling-topbar p:last-child { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .modeling-steps span { border-color: #484b53; background-color: #27292e; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .modeling-steps span.active { border-color: rgba(241, 100, 30, 0.35); background-color: #27292e; color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-truth-review { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-review-guide { border-color: hsl(194 39% 38%); border-left-color: #f1641e; background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-review-guide p,
:where(:root[data-theme="dark"]) .studio-review-block-head p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-review-guide-badges span { background-color: #222327; color: hsl(198 38% 76%); }
:where(:root[data-theme="dark"]) .studio-review-guide-badges .attention { background-color: hsl(43 42% 18%); color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-review-guide-badges .complete { background-color: #1a1b1f; color: hsl(161 50% 76%); }
:where(:root[data-theme="dark"]) .studio-review-block { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .studio-review-block-head { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .studio-review-number { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .studio-review-block-head > strong { background-color: hsl(43 42% 18%); color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-review-block-head > strong.is-complete { background-color: #1a1b1f; color: hsl(161 50% 76%); }
:where(:root[data-theme="dark"]) .studio-confirm-check { color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-truth-card.truth-clear em { background-color: #1a1b1f; color: hsl(161 50% 76%); }
:where(:root[data-theme="dark"]) .studio-truth-card.low-confidence em { background-color: hsl(43 42% 18%); color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-truth-card small,
:where(:root[data-theme="dark"]) .studio-review-empty { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .studio-review-empty { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-truth-review summary { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .studio-truth-review summary small { color: #ffad7a; }
:where(:root[data-theme="dark"]) .studio-truth-card.low-confidence { border-color: hsl(42 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .studio-quality-badge.pass { color: hsl(147 50% 76%); background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .studio-quality-badge.fail { color: #ffad7a; background-color: hsl(34 42% 18%); }
:where(:root[data-theme="dark"]) .modeling-upload-card { border-color: hsl(198 31% 38%); background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .modeling-upload-card.add strong { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .modeling-upload-card span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .modeling-upload-card.has-image { background-color: #222327; }
:where(:root[data-theme="dark"]) .modeling-blueprint,
:where(:root[data-theme="dark"]) .modeling-measure-card,
:where(:root[data-theme="dark"]) .modeling-export-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .modeling-blueprint-image img { border-color: #484b53; }
:where(:root[data-theme="dark"]) .modeling-blueprint-note { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .modeling-download { border-color: hsl(149 47% 38% / 0.28); background-color: #1a1b1f; color: hsl(149 63% 76%); }
:where(:root[data-theme="dark"]) .modeling-download span { color: hsl(149 45% 76%); }
:where(:root[data-theme="dark"]) .competitor-progress { border-color: hsl(197 42% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .competitor-progress-top { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .competitor-progress-top span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-progress-track { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .competitor-progress-fill { background-image: linear-gradient(90deg, #f1641e, #f1641e); color: #222222; }
:where(:root[data-theme="dark"]) .competitor-batch-history-heading p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-batch-overview { border-top-color: #484b53; border-bottom-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .competitor-batch-overview span { border-right-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-batch-overview b { color: hsl(196 49% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-overview small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-batch-toolbar label > span { color: hsl(199 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-toolbar input,
:where(:root[data-theme="dark"]) .competitor-batch-toolbar select { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .competitor-batch-toolbar input:focus,
:where(:root[data-theme="dark"]) .competitor-batch-toolbar select:focus { border-color: #f1641e; outline-color: hsl(191 48% 38%); }
:where(:root[data-theme="dark"]) .competitor-batch-toolbar > p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-batch-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .competitor-batch-card:hover,
:where(:root[data-theme="dark"]) .competitor-batch-card.is-expanded { border-color: hsl(195 30% 38%); box-shadow: 0 6px 18px rgba(0, 0, 0, 7); }
:where(:root[data-theme="dark"]) .competitor-batch-status-bar { background-color: #34363d; }
:where(:root[data-theme="dark"]) .competitor-batch-status-bar.is-running { background-color: hsl(190 42% 22%); }
:where(:root[data-theme="dark"]) .competitor-batch-status-bar.is-done { background-color: hsl(149 40% 22%); }
:where(:root[data-theme="dark"]) .competitor-batch-status-bar.is-warning { background-color: hsl(33 42% 22%); }
:where(:root[data-theme="dark"]) .competitor-batch-status-bar.is-error { background-color: hsl(0 42% 22%); }
:where(:root[data-theme="dark"]) .competitor-batch-main h3 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .competitor-batch-main p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-batch-fields > span:not(.competitor-batch-fields-label) { border-color: #484b53; background-color: #27292e; color: hsl(198 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-fields .competitor-batch-fields-label { color: hsl(198 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-fields .competitor-batch-fields-more { border-color: #484b53; background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-batch-fields .is-empty { color: #aeb2bd; }
:where(:root[data-theme="dark"]) .competitor-batch-status { background-color: #1a1b1f; color: hsl(198 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-status.is-running { background-color: #1a1b1f; color: hsl(191 68% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-status.is-done { background-color: #1a1b1f; color: hsl(146 53% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-status.is-warning { background-color: hsl(34 42% 18%); color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-batch-status.is-error { background-color: #1a1b1f; color: hsl(0 52% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-result strong { color: hsl(196 49% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-result strong small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-batch-result > span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-batch-result .has-failures { color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-batch-expanded { border-top-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .competitor-batch-meta p { color: hsl(197 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-meta span { color: hsl(198 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-product-list { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-batch-completeness { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-batch-completeness > div:first-child > strong { color: hsl(197 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-completeness > div:first-child > small { color: #aeb2bd; }
:where(:root[data-theme="dark"]) .competitor-batch-completeness-item { border-color: #484b53; background-color: #1a1b1f; color: hsl(147 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-completeness-item.has-missing { border-color: hsl(36 48% 38%); background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-batch-product-row { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-batch-product-index { color: hsl(198 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-product-row img,
:where(:root[data-theme="dark"]) .competitor-batch-product-placeholder { border-color: #484b53; background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .competitor-batch-product-placeholder { color: #aeb2bd; }
:where(:root[data-theme="dark"]) .competitor-batch-product-copy strong { color: hsl(198 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-product-copy p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-batch-product-row > a { color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-batch-items-state,
:where(:root[data-theme="dark"]) .competitor-batch-items-more { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-batch-items-state.is-error { color: hsl(0 52% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-footer small { color: hsl(198 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-footer .text-danger { color: hsl(0 46% 76%); }
:where(:root[data-theme="dark"]) .competitor-batch-empty { border-color: #484b53; background-color: #222327; }
@media (max-width: 640px) {
:where(:root[data-theme="dark"]) .competitor-batch-overview span:nth-child(-n + 2) { border-bottom-color: #484b53; }
}
:where(:root[data-theme="dark"]) .competitor-progress p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-progress.is-error { border-color: hsl(0 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .competitor-progress.is-error .competitor-progress-fill { background-color: hsl(0 42% 22%); }
:where(:root[data-theme="dark"]) .competitor-progress.is-done { border-color: hsl(132 34% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .competitor-progress.is-done .competitor-progress-fill { background-color: hsl(150 42% 22%); }
:where(:root[data-theme="dark"]) .select-all-row,
:where(:root[data-theme="dark"]) .competitor-select { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .batch-analyze-preview { border-color: hsl(197 42% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .batch-analyze-preview strong { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .batch-analyze-preview .error-text { color: hsl(4 68% 76%); }
:where(:root[data-theme="dark"]) .batch-analyze-preview ul { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .report-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .report-card h3 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .report-card small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .report-body { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .competitor-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .danger-text { color: hsl(4 68% 76%); }
:where(:root[data-theme="dark"]) .competitor-image { border-color: #484b53; background-color: #27292e; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-gallery-item { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .competitor-summary h3 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .competitor-summary p { color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-summary small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-summary a,
:where(:root[data-theme="dark"]) .competitor-detail a { color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-card summary { color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-detail { border-top-color: #484b53; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-detail dt { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .competitor-table-toolbar { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .competitor-table-toolbar label { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-table-toolbar input,
:where(:root[data-theme="dark"]) .competitor-table-toolbar select { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .competitor-table-toolbar-meta { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-table-shell { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .competitor-data-table th,
:where(:root[data-theme="dark"]) .competitor-data-table td { border-right-color: #484b53; border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-data-table th { background-color: #1a1b1f; color: hsl(208 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-data-table th:first-child,
:where(:root[data-theme="dark"]) .competitor-data-table td:first-child { background-color: #222327; }
:where(:root[data-theme="dark"]) .competitor-data-table th:first-child { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .competitor-table-row:hover td,
:where(:root[data-theme="dark"]) .competitor-table-row.is-detail-selected td { background-color: #27292e; }
:where(:root[data-theme="dark"]) .competitor-table-row:hover td:first-child,
:where(:root[data-theme="dark"]) .competitor-table-row.is-detail-selected td:first-child { background-color: #27292e; }
:where(:root[data-theme="dark"]) .competitor-table-row:focus-visible { outline-color: #f1641e; }
:where(:root[data-theme="dark"]) .competitor-table-image img { border-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-table-image span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-table-title strong { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .competitor-table-title small,
:where(:root[data-theme="dark"]) .competitor-table-time { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-table-price { color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-table-options { color: hsl(212 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-table-reviews { color: hsl(212 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-table-shipping { color: hsl(212 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-table-tags span { background-color: #1a1b1f; color: hsl(209 38% 76%); }
:where(:root[data-theme="dark"]) .competitor-table-actions a { color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-table-actions .secondary-text,
:where(:root[data-theme="dark"]) .competitor-detail-head-actions .secondary { color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-row-detail { border-color: hsl(197 42% 38%); border-left-color: #f1641e; background-color: #222327; }
:where(:root[data-theme="dark"]) .competitor-row-detail-head { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .competitor-row-detail-head span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .competitor-row-detail-head h3 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .competitor-row-detail-head p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .competitor-table-empty { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .valuable-review { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .valuable-review strong { color: #ffad7a; }
:where(:root[data-theme="dark"]) .valuable-review p { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .review-image { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .tag-list span { background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .controls .field span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .actions { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .primary { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .primary:hover { background-color: #a63b0b; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .secondary { border-color: hsl(194 30% 38%); background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .ghost { border-color: #484b53; background-color: #222327; color: #f0f0f2; }
:where(:root[data-theme="dark"]) .overall-progress { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .progress-meta { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .progress-meta span:first-child { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .progress-track { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .progress-fill { background-image: linear-gradient(90deg, #f1641e, #f1641e); color: #222222; }
:where(:root[data-theme="dark"]) .progress-done { background-image: linear-gradient(90deg, hsl(161 42% 22%), hsl(156 42% 22%)); }
:where(:root[data-theme="dark"]) .progress-error { background-image: linear-gradient(90deg, hsl(0 42% 22%), hsl(6 42% 22%)); }
:where(:root[data-theme="dark"]) .task-card { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .status-pill { background-color: #1a1b1f; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .status-running { background-color: hsl(40 42% 18%); color: #ffad7a; }
:where(:root[data-theme="dark"]) .status-done { background-color: #1a1b1f; color: hsl(161 50% 76%); }
:where(:root[data-theme="dark"]) .status-failed { background-color: #1a1b1f; color: hsl(0 49% 76%); }
:where(:root[data-theme="dark"]) .task-time { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .task-images { background-color: #27292e; }
:where(:root[data-theme="dark"]) .task-images a { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .task-assets img { border-color: #484b53; }
:where(:root[data-theme="dark"]) .task-assets figcaption { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .task-prompt { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .task-error { color: hsl(0 49% 76%); }
@media (max-width: 980px) {
:where(:root[data-theme="dark"]) .sidebar { border-bottom-color: #484b53; }
}
:where(:root[data-theme="dark"]) .sidebar { background-color: #27292e; }
:where(:root[data-theme="dark"]) .nav-group { border-color: #484b53; }
:where(:root[data-theme="dark"]) .workspace { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .production-page-head { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .production-page-head h2 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .production-page-head p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .production-page-eyebrow,
:where(:root[data-theme="dark"]) .production-workspace .studio-kicker { color: #ffad7a; }
:where(:root[data-theme="dark"]) .production-stage-strip,
:where(:root[data-theme="dark"]) .production-workspace .studio-steps { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .production-stage-strip > span,
:where(:root[data-theme="dark"]) .production-workspace .studio-steps > span { border-right-color: #484b53; background-color: #222327; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .production-stage-strip b,
:where(:root[data-theme="dark"]) .production-workspace .studio-steps b { border-color: #484b53; color: hsl(204 38% 76%); }
:where(:root[data-theme="dark"]) .production-workspace .studio-steps > span.active { box-shadow: inset 0 -3px 0 rgba(0, 0, 0, 1); background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .production-workspace .studio-steps > span.active b { border-color: #f1641e; background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .production-scene-workspace .input-area { border-color: #484b53; box-shadow: 0 8px 28px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .production-block-heading h3 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .production-block-heading p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .production-scene-workspace .workflow-block,
:where(:root[data-theme="dark"]) .production-scene-workspace .prompt-stack { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .production-advanced { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .production-advanced summary { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .production-advanced summary::after { color: #ffad7a; }
:where(:root[data-theme="dark"]) .production-advanced summary small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .production-advanced-body { border-top-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .production-action-bar { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .production-action-copy strong { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .production-action-copy small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .production-task-center,
:where(:root[data-theme="dark"]) .production-workspace .studio-task-panel { border-color: #484b53; }
:where(:root[data-theme="dark"]) .production-workspace .studio-screen.active { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .production-workspace .studio-section-head { border-bottom-color: #484b53; }
@media (max-width: 760px) {
:where(:root[data-theme="dark"]) .production-stage-strip > span:nth-child(-n + 2),
:where(:root[data-theme="dark"]) .production-workspace .studio-steps > span:nth-child(-n + 2) { border-bottom-color: #484b53; }
}
:where(:root[data-theme="dark"]) .duplicate-file-workspace { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .duplicate-file-topbar { border-color: #484b53; background-image: linear-gradient(135deg, #27292e, #1a1b1f); }
:where(:root[data-theme="dark"]) .duplicate-file-eyebrow,
:where(:root[data-theme="dark"]) .duplicate-file-panel-head > div > span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .duplicate-file-topbar h2,
:where(:root[data-theme="dark"]) .duplicate-file-panel-head h3 { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .duplicate-file-topbar p,
:where(:root[data-theme="dark"]) .duplicate-file-panel-head p,
:where(:root[data-theme="dark"]) .duplicate-file-clean-panel p { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .duplicate-file-flow { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .duplicate-file-flow-step { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .duplicate-file-flow-step b { background-color: #1a1b1f; color: hsl(195 38% 76%); }
:where(:root[data-theme="dark"]) .duplicate-file-flow-step.is-active { background-color: #1a1b1f; color: #ffad7a; }
:where(:root[data-theme="dark"]) .duplicate-file-flow-step.is-active b { background-color: #f1641e; color: #222222; }
:where(:root[data-theme="dark"]) .duplicate-file-flow-line { background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .duplicate-file-panel,
:where(:root[data-theme="dark"]) .duplicate-file-results { border-color: #484b53; background-color: #222327; box-shadow: 0 7px 24px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .duplicate-file-dropzone { border-color: hsl(22 48% 38%); background-color: #27292e; color: #ffad7a; }
:where(:root[data-theme="dark"]) .duplicate-file-dropzone small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .duplicate-file-selected { border-color: #484b53; background-color: #27292e; }
:where(:root[data-theme="dark"]) .duplicate-file-selected small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .duplicate-file-selected button { color: hsl(0 38% 76%); }
:where(:root[data-theme="dark"]) .duplicate-file-action-row [role="status"] { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .duplicate-file-summary span { border-color: #484b53; background-color: #27292e; color: #c0c3cc; }
:where(:root[data-theme="dark"]) .duplicate-file-summary b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .duplicate-file-summary .is-warning { border-color: hsl(32 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .duplicate-file-summary .is-warning b { color: #ffad7a; }
:where(:root[data-theme="dark"]) .duplicate-file-group { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .duplicate-file-group > header { border-bottom-color: #484b53; }
:where(:root[data-theme="dark"]) .duplicate-file-group > header strong { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .duplicate-file-group > header span { color: #ffad7a; }
:where(:root[data-theme="dark"]) .duplicate-file-group > header small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .duplicate-file-item { border-color: #484b53; background-color: #222327; }
:where(:root[data-theme="dark"]) .duplicate-file-item.is-keep { border-color: hsl(190 40% 38%); background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .duplicate-file-thumb { border-color: #484b53; background-color: #1a1b1f; }
:where(:root[data-theme="dark"]) .duplicate-file-thumb b { color: #aeb2bd; }
:where(:root[data-theme="dark"]) .duplicate-file-item-copy strong { color: #ffad7a; }
:where(:root[data-theme="dark"]) .duplicate-file-item.is-remove .duplicate-file-item-copy strong { color: hsl(0 38% 76%); }
:where(:root[data-theme="dark"]) .duplicate-file-item-copy b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .duplicate-file-item-copy small,
:where(:root[data-theme="dark"]) .duplicate-file-item-copy em { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .duplicate-file-clean-panel { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .duplicate-file-clean-panel strong { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .duplicate-file-outputs { border-top-color: #484b53; }
:where(:root[data-theme="dark"]) .duplicate-file-outputs > div strong { color: #ffad7a; }
:where(:root[data-theme="dark"]) .duplicate-file-outputs > div span { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .duplicate-file-output { border-color: #484b53; }
:where(:root[data-theme="dark"]) .duplicate-file-output:hover { border-color: hsl(22 48% 38%); background-color: #27292e; }
:where(:root[data-theme="dark"]) .duplicate-file-output-combined { border-color: hsl(189 40% 38%); background-color: #1a1b1f; box-shadow: 0 5px 14px rgba(0, 0, 0, 0.22); }
:where(:root[data-theme="dark"]) .duplicate-file-output-combined b { color: #ffad7a; }
:where(:root[data-theme="dark"]) .duplicate-file-output b { color: #f0f0f2; }
:where(:root[data-theme="dark"]) .duplicate-file-output small { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .duplicate-file-output > strong { color: #ffad7a; }
:where(:root[data-theme="dark"]) .duplicate-file-no-duplicates { color: #c0c3cc; }
:where(:root[data-theme="dark"]) .duplicate-file-no-duplicates strong { color: #ffad7a; }
}
/* WORKBENCH_DARK_THEME_END */
