:root {
  --bg: #0b0f14;
  --bg-2: #0f141b;
  --panel: #121823;
  --panel-2: #171f2b;
  --ink: #e6ecf3;
  --muted: #9aa4b2;
  --accent: #f5b11b;
  --primary: #4f8cff;
  --secondary: #2a7a6f;
  --danger: #e05555;
  --ring: rgba(79,140,255,0.35);
}

body {
  font-family: "Segoe UI", Tahoma, sans-serif;
  margin: 0;
  color: var(--ink);
  background: var(--bg);
}

header {
  height: 64px;
  display:grid;
  grid-template-columns: auto 1fr auto;
  align-items:center;
  padding:0 18px;
  background: linear-gradient(90deg, #0a0f15, #0f151d);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.navToggle {
  width:32px;
  height:32px;
  border-radius:8px;
  border:none;
  background:transparent;
  display:flex;
  flex-direction:column;
  gap:4px;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.navToggle span {
  width:16px;
  height:2px;
  background:rgba(255,255,255,0.7);
  border-radius:2px;
}
.navToggle:hover { background:rgba(255,255,255,0.06); }
.brandTop { display:flex; align-items:center; gap:12px; text-decoration:none; color:inherit; justify-self:center; }
.brandTop:hover { opacity:0.9; }
.brandTopText { font-size:18px; font-weight:700; letter-spacing:0.4px; }
.logo-mini {
  width:34px;
  height:34px;
  background:transparent url('/static/favicon.svg') center/contain no-repeat;
  position:relative;
  filter:drop-shadow(0 0 0 rgba(245,177,27,0.2));
}
.logo-mini::after { content:none; }
.topActions { position:relative; display:flex; align-items:center; gap:10px; justify-self:end; }
.topVersionChip {
  height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.04);
  color: rgba(255,255,255,0.84);
  font-family: "IBM Plex Mono", "JetBrains Mono", "Consolas", monospace;
  font-size: 11px;
  letter-spacing: 0.3px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}
.notifyBtn {
  width:36px;
  height:36px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,0.10);
  background:rgba(255,255,255,0.04);
  color:var(--ink);
  cursor:pointer;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
}
.notifyBtn:hover { background:rgba(255,255,255,0.07); }
.topUserAvatar {
  width: 22px;
  height: 22px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.16);
  background: linear-gradient(140deg, rgba(79,140,255,0.86), rgba(42,122,111,0.86));
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.topUserAvatar.hasImage {
  color: transparent;
  text-indent: -9999px;
}
.topUserName {
  max-width: 132px;
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.notifyClearAll {
  margin-left:auto;
  background:transparent;
  border:none;
  color:rgba(255,255,255,0.6);
  font-size:11px;
  cursor:pointer;
}
.notifyClearAll:hover { color:#fff; }
.notifyItem {
  position:relative;
}
.notifyRemove {
  position:absolute;
  right:8px;
  top:10px;
  background:transparent;
  border:none;
  color:rgba(255,255,255,0.5);
  font-size:12px;
  cursor:pointer;
}
.notifyRemove:hover { color:#fff; }

.sideNav {
  position:fixed;
  inset:0;
  z-index:40;
}
.sideNavBackdrop {
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, rgba(8,12,18,0.72), rgba(8,12,18,0.4));
  backdrop-filter: blur(8px);
}
.sideNavPanel {
  position:absolute;
  top:0;
  left:0;
  width:min(280px, 78vw);
  height:100%;
  background:rgba(10,14,20,0.92);
  border-right:1px solid rgba(255,255,255,0.06);
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.sideNavTitle {
  font-size:12px;
  color:var(--muted);
  letter-spacing:0.4px;
  text-transform:uppercase;
  margin-bottom:6px;
}
.sideUserCard {
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.03);
  border-radius: 10px;
  padding: 8px 10px;
  display: block;
  margin-bottom: 8px;
}
.sideUserIdentity {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.sideUserAvatar {
  width: 24px;
  height: 24px;
}
.sideUserName {
  min-width: 0;
  font-size: 12px;
  font-weight: 600;
  color: rgba(255,255,255,0.88);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sideNavLogout {
  width: 100%;
  height: 34px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.04);
  color: rgba(255,255,255,0.92);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  margin-bottom: 10px;
}
.sideNavLogout:hover {
  background: rgba(224,85,85,0.14);
  border-color: rgba(224,85,85,0.44);
  color: #ffe1e1;
}
.sideNavLogoutIcon {
  font-size: 13px;
}
.sideNavLink {
  color:rgba(255,255,255,0.9);
  text-decoration:none;
  font-size:14px;
  padding:8px 6px;
  border-radius:10px;
  display:flex;
  align-items:center;
  gap:8px;
}
.sideNavLink:hover { color:#fff; background:rgba(255,255,255,0.06); }
.sideNavIcon {
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:rgba(255,255,255,0.6);
  font-size:12px;
}
.sideNavFooter {
  margin-top:auto;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,0.08);
  display:flex;
  flex-direction:column;
  gap:8px;
}
.sideNavVersionRow {
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.03);
  border-radius: 10px;
  min-height: 34px;
  padding: 7px 10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
}
.sideNavVersionLabel {
  font-size:10px;
  letter-spacing:0.6px;
  text-transform:uppercase;
  color:rgba(255,255,255,0.56);
}
.sideNavVersionValue {
  font-family: "IBM Plex Mono", "JetBrains Mono", "Consolas", monospace;
  font-size:12px;
  color:rgba(255,255,255,0.88);
  font-weight: 600;
  text-align: right;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 148px;
}

body[data-view="login"] header {
  display: none;
}
body[data-view="login"] .sideNav {
  display: none !important;
}
.loginPage {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  background:
    radial-gradient(1200px 540px at 12% -8%, rgba(79,140,255,0.26), transparent 60%),
    radial-gradient(980px 460px at 88% 2%, rgba(245,177,27,0.14), transparent 64%),
    radial-gradient(620px 360px at 50% 115%, rgba(79,140,255,0.11), transparent 68%),
    linear-gradient(180deg, #080d13 0%, #0b1119 52%, #0a1018 100%);
}
.loginCard {
  width: min(360px, 100%);
  background: linear-gradient(180deg, rgba(14, 20, 30, 0.92), rgba(11, 17, 26, 0.95));
  border: 1px solid rgba(79, 140, 255, 0.28);
  border-radius: 22px;
  padding: 28px 22px 24px;
  box-shadow:
    0 18px 56px rgba(0, 0, 0, 0.46),
    inset 0 0 0 1px rgba(245, 177, 27, 0.08);
}
.loginBrand {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 10px;
  margin-bottom: 18px;
}
.loginLogo {
  width: 52px;
  height: 52px;
}
.loginBrandText {
  text-align: center;
}
.loginBrandTitle {
  font-size: 18px;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.1px;
}
.loginBrandSub {
  font-size: 12px;
  color: rgba(255,255,255,0.66);
  margin-top: 4px;
}
.loginTitle {
  font-size: 24px;
  font-weight: 700;
  color: #fff;
  text-align: center;
}
.loginSub {
  margin: 10px auto 0;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.72);
  text-align: center;
  max-width: 28ch;
}
.loginVersion {
  margin-top: 8px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.62);
  font-family: "IBM Plex Mono", "JetBrains Mono", "Consolas", monospace;
  text-align: center;
}
.loginForm {
  margin-top: 22px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.loginStep {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.loginField {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.loginField > span {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.68);
}
.loginField > input {
  height: 40px;
  border: 1px solid rgba(79, 140, 255, 0.24);
  border-radius: 10px;
  background: rgba(79, 140, 255, 0.06);
  color: #fff;
  padding: 0 12px;
  outline: none;
}
.loginField > input:focus {
  border-color: rgba(79, 140, 255, 0.78);
  box-shadow:
    0 0 0 2px rgba(79, 140, 255, 0.2),
    inset 0 0 0 1px rgba(245, 177, 27, 0.16);
}
.loginBtn {
  width: 100%;
  margin-top: 8px;
}
.loginStepHead {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: center;
  text-align: center;
}
.loginStepTitle {
  font-size: 14px;
  font-weight: 600;
  color: #f3f7ff;
}
.loginStepPhone {
  font-size: 12px;
  color: rgba(255,255,255,0.68);
}
.loginCodeGrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(52px, 1fr));
  gap: 10px;
}
.loginCodeDigit {
  height: 48px;
  border: 1px solid rgba(79, 140, 255, 0.26);
  border-radius: 12px;
  background: rgba(79, 140, 255, 0.06);
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  outline: none;
  padding: 0;
}
.loginCodeDigit:focus {
  border-color: rgba(245, 177, 27, 0.84);
  box-shadow: 0 0 0 2px rgba(245, 177, 27, 0.22);
}
.loginCodeActions {
  margin-top: 6px;
  display: flex;
  gap: 10px;
}
.loginCodeActions .action {
  flex: 1;
}
.loginHelpActions {
  margin-top: 4px;
  display: flex;
  justify-content: flex-start;
}
.loginResetLink {
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  font-size: 12px;
  line-height: 1.2;
  color: #9fc6ff;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.loginResetLink:hover {
  color: #c7e0ff;
}
.loginResetLink:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(159, 198, 255, 0.28);
  border-radius: 4px;
}
.loginMsg {
  margin-top: 6px;
  font-size: 12px;
  color: #9fc6ff;
}
.loginMsg.isError {
  color: #ff9b9b;
}

@media (max-width: 560px) {
  .loginPage {
    align-items: center;
    justify-content: center;
    padding-top: 24px;
    padding-bottom: 24px;
  }
  .loginCard {
    width: min(356px, 100%);
    padding: 24px 18px 20px;
    border-radius: 20px;
  }
  .loginTitle {
    font-size: 22px;
  }
  .loginCodeActions {
    flex-direction: column-reverse;
  }
}

.pageWrap {
  max-width: 980px;
  margin: 24px auto;
  padding: 0 18px 40px;
}
.prefsHeader {
  margin-bottom: 18px;
}
.prefsSection {
  margin-bottom: 16px;
}
.prefsSectionTitle {
  font-size:11px;
  color:var(--muted);
  text-transform:none;
  letter-spacing:0.4px;
  margin-bottom:10px;
}
.prefsTitle {
  font-size: 22px;
  font-weight: 700;
  color: var(--ink);
}
.prefsSubtitle {
  font-size: 12px;
  color: var(--muted);
  margin-top: 4px;
}
.prefsGrid {
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap:16px;
  margin-bottom: 16px;
}
.prefsField {
  display:flex;
  flex-direction:column;
  gap:8px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:12px;
  padding:12px;
}
.prefsField label {
  font-size:12px;
  color:var(--muted);
  text-transform:none;
  letter-spacing:0.02em;
  font-weight:600;
  min-height:2.6em;
  line-height:1.3;
  display:flex;
  align-items:flex-end;
}
.prefsInputWrap {
  display:flex;
  align-items:center;
  gap:6px;
  min-height:40px;
  border-radius:12px;
  background:rgba(255,255,255,0.05);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08);
  padding:0 10px;
}
.prefsInputWrap:focus-within {
  box-shadow: inset 0 0 0 1px rgba(99,144,255,0.55), 0 0 0 2px rgba(99,144,255,0.16);
}
.prefsInputPrefix {
  font-size:11px;
  color:rgba(255,255,255,0.72);
  font-weight:700;
  line-height:1;
}
.prefsInput {
  width:100%;
  min-width:0;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:10px 0 !important;
  color:var(--ink);
  font-size:14px;
  text-align:right;
  outline:none;
}
.prefsInput.prefsInputLeft {
  text-align:left;
}
.prefsInputWrap select.prefsInput {
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  cursor:pointer;
  padding-right:18px !important;
}
.prefsValidateBtn {
  font-size:11px;
  line-height:1;
  padding:6px 10px;
  border-radius:9px;
  white-space:nowrap;
}
.prefsSwitchGrid {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  gap:10px;
  margin-top:-4px;
}
.prefsSwitchCard {
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  border-radius:12px;
  padding:10px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:var(--ink);
  font-size:12px;
  font-weight:600;
}
.prefsSwitchCard .switch {
  margin:0;
}
.prefsActions {
  display:flex;
  align-items:center;
  gap:12px;
}
.prefsAuthActions {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.prefsAuthList {
  display:flex;
  flex-direction:column;
  gap:8px;
}
.prefsAuthRow {
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  border-radius:12px;
  padding:10px 12px;
  display:grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap:8px;
  align-items:center;
}
.prefsAuthRowMain {
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.prefsAuthRowLine {
  font-size:12px;
  color:var(--muted);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.prefsAuthRowLine strong {
  color:var(--ink);
}
.prefsAuthRowActions {
  display:flex;
  align-items:center;
  gap:8px;
}
.prefsAuthBadge {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:72px;
  padding:2px 8px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.18);
  background:rgba(255,255,255,0.04);
  color:#c9d6ec;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:0.04em;
}
.prefsAuthBadge.isPending {
  border-color:rgba(255,191,120,0.45);
  background:rgba(255,191,120,0.15);
  color:#ffd89d;
}
.prefsAuthBadge.isResolved {
  border-color:rgba(133,209,150,0.5);
  background:rgba(133,209,150,0.16);
  color:#a9eab7;
}
.prefsAuthEmpty {
  border:1px dashed rgba(255,255,255,0.16);
  border-radius:12px;
  padding:12px;
  font-size:12px;
  color:var(--muted);
}
.prefsStatus {
  font-size:12px;
  color:var(--muted);
}
.prefsStatus.isOk {
  color:#9dd9a7;
}
.prefsStatus.isWarn {
  color:#ffd78a;
}
.prefsStatus.isErr {
  color:#ff9f9f;
}
.prefsMlGrid {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  gap:10px;
}
.prefsMlCard {
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  border-radius:12px;
  padding:10px 12px;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.prefsMlTitle {
  font-size:12px;
  font-weight:700;
  color:var(--ink);
}
.prefsMlLine {
  font-size:12px;
  color:var(--muted);
}
.prefsMlLine.isOk {
  color:#9dd9a7;
}
.prefsMlLine.isWarn {
  color:#ffd78a;
}
.prefsMlLine.isErr {
  color:#ff9f9f;
}
.prefsMlWarning {
  margin-top:8px;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(255, 191, 120, 0.3);
  background:rgba(255, 191, 120, 0.08);
  color:#ffd89d;
  font-size:12px;
}
.prefsMlWarning.hidden {
  display:none;
}
.prefsTemplatesHead {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
  flex-wrap:wrap;
}
.prefsTemplatesHint {
  font-size:12px;
  color:var(--muted);
}
.prefsTemplatesList {
  display:flex;
  flex-direction:column;
  gap:10px;
}
.prefsSwitchesTitle {
  margin: 2px 0 8px;
  font-size: 11px;
  color: var(--muted);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-weight: 700;
}
.prefsTemplateCardWrap {
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  border-radius:12px;
  overflow:hidden;
}
.prefsTemplateCardWrap.isLocked {
  border-color: rgba(116, 162, 255, 0.3);
  background: rgba(71, 107, 180, 0.08);
}
.prefsTemplateSummary {
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  cursor:pointer;
  user-select:none;
  background:rgba(255,255,255,0.01);
}
.prefsTemplateSummary:focus-visible {
  outline:none;
  box-shadow: inset 0 0 0 1px rgba(99,144,255,0.65), 0 0 0 2px rgba(99,144,255,0.18);
}
.prefsTemplateSummary::-webkit-details-marker {
  display:none;
}
.prefsTemplateSummaryMain {
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.prefsTemplateSummaryName {
  font-size:13px;
  font-weight:700;
  color:var(--ink);
}
.prefsTemplateSummaryType {
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:rgba(200,215,240,0.78);
  border:1px solid rgba(145,170,220,0.32);
  border-radius:999px;
  padding:2px 7px;
}
.prefsTemplateSummaryHint {
  font-size:11px;
  color:rgba(168,189,230,0.82);
  display:inline-flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
}
.prefsTemplateSummaryHint::before {
  content:'▸';
  font-size:10px;
  opacity:0.85;
  transition:transform 0.15s ease;
}
.prefsTemplateCardWrap[open] .prefsTemplateSummaryHint::before {
  transform:rotate(90deg);
}
.prefsTemplateCard {
  border-top:1px solid rgba(255,255,255,0.08);
  padding:10px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.prefsTemplateTop {
  display:flex;
  justify-content:space-between;
  gap:8px;
  align-items:flex-start;
}
.prefsTemplateFields {
  display:grid;
  grid-template-columns: minmax(220px, 2fr) minmax(160px, 1fr);
  gap:8px;
}
.prefsTemplateField {
  display:flex;
  flex-direction:column;
  gap:5px;
}
.prefsTemplateField label {
  min-height:0;
  font-size:11px;
  color:var(--muted);
}
.prefsTemplateBadge {
  display:inline-flex;
  margin-left:6px;
  padding:2px 6px;
  border-radius:999px;
  font-size:10px;
  color:#cfdfff;
  background:rgba(89,136,239,0.22);
  border:1px solid rgba(116,162,255,0.4);
}
.prefsTemplateInputWrap {
  display:flex;
  align-items:center;
  min-height:38px;
  border-radius:10px;
  background:rgba(10,14,18,0.42);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08);
  padding:0 10px;
}
.prefsTemplateInputWrap:focus-within {
  box-shadow: inset 0 0 0 1px rgba(99,144,255,0.55), 0 0 0 2px rgba(99,144,255,0.16);
}
.prefsTemplateInput {
  width:100%;
  border:0;
  background:transparent;
  color:var(--ink);
  font-size:13px;
  outline:none;
  text-align:left;
  padding:8px 0;
}
.prefsTemplateInput[readonly] {
  color: rgba(233,239,255,0.82);
}
.prefsTemplateLockedHint {
  font-size:11px;
  color: rgba(196,214,255,0.78);
  border:1px solid rgba(116,162,255,0.35);
  border-radius:999px;
  padding:4px 10px;
  background:rgba(89,136,239,0.12);
}
.prefsTemplatePrompt {
  min-height:130px;
  resize:vertical;
  border:1px solid rgba(255,255,255,0.1);
  border-radius:10px;
  background:rgba(10,14,18,0.42);
  color:var(--ink);
  padding:10px;
  font-size:12px;
  line-height:1.4;
}
.prefsTemplatePrompt:focus {
  outline:none;
  border-color:rgba(99,144,255,0.6);
  box-shadow:0 0 0 1px rgba(99,144,255,0.2);
}
@media (max-width: 760px) {
  .prefsTemplateFields {
    grid-template-columns: 1fr;
  }
  .prefsAuthRow {
    grid-template-columns: 1fr;
  }
  .prefsAuthRowActions {
    justify-content:space-between;
  }
}

.filtersHeader {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.filtersTitle {
  font-size:22px;
  font-weight:700;
  color:var(--ink);
}
.filtersSubtitle {
  font-size:12px;
  color:var(--muted);
  margin-top:4px;
}
.filtersLayout {
  display:grid;
  grid-template-columns: 280px 1fr;
  gap:18px;
}
.filtersList {
  display:flex;
  flex-direction:column;
  gap:10px;
  background:rgba(255,255,255,0.02);
  border:1px solid rgba(255,255,255,0.05);
  border-radius:12px;
  padding:12px;
  min-height:240px;
}
.filtersListItem {
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.06);
  background:rgba(255,255,255,0.02);
  color:var(--ink);
  cursor:pointer;
  text-align:left;
}
.filtersListItem.active {
  border-color:rgba(120,160,240,0.5);
  background:rgba(90,130,220,0.12);
}
.filtersListTitle { font-size:13px; font-weight:600; }
.filtersListMeta { font-size:10px; color:var(--muted); }
.filteredRunCard {
  cursor:default;
  gap:8px;
}
.filteredCardsHost {
  padding:10px 6px;
}
.filteredCardsList {
  display:flex;
  flex-direction:column;
  gap:10px;
}
.filteredCardsList.isExpanded .filteredRunCard:not(.isExpanded) {
  display:none;
}
.filteredCardsList.isExpanded .filteredRunGhost {
  display:none;
}
.tabPanel[data-tab-panel="filtrados"] .filteredRunCard .calcCardHead {
  cursor:pointer;
}
.filteredRunActions {
  display:flex;
  gap:8px;
}
.filteredRunBody {
  display:flex;
  flex-direction:column;
  gap:8px;
}
.filteredRunMetric {
  font-weight:600;
}
.filteredRunMetric.score-good { color:#7de4a1; }
.filteredRunMetric.score-warn { color:#ffd27a; }
.filteredRunMetric.score-bad { color:#ff8f8f; }
.filteredRunsEmpty {
  padding:4px 2px;
}
.filteredItemCard {
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  padding:8px;
  background:rgba(255,255,255,0.02);
}
.filteredItemHead {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:8px;
  align-items:center;
}
.filteredItemTitle {
  font-size:13px;
  font-weight:500;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.filteredItemActions {
  display:flex;
  gap:8px;
}
.filteredItemBody {
  margin-top:8px;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.filteredRunBody.isItemExpanded .filteredItemCard:not(.isExpanded) {
  display:none;
}
.filteredRulesTable {
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  overflow:auto;
  background:rgba(7,10,16,0.24);
}
.filteredRulesHead,
.filteredRulesRow {
  display:grid;
  grid-template-columns:minmax(120px,0.9fr) minmax(140px,1fr) minmax(200px,1.4fr) 92px;
  align-items:center;
  gap:8px;
  min-width:620px;
}
.filteredRulesHead {
  padding:8px 10px;
  font-size:11px;
  font-weight:600;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:var(--muted);
  background:rgba(255,255,255,0.03);
}
.filteredRulesRow {
  padding:8px 10px;
  border-top:1px solid rgba(255,255,255,0.06);
  font-size:12px;
}
.filteredRulesCellName {
  font-weight:600;
  color:var(--ink);
}
.filteredRulesCellExpected {
  color:#d4def0;
  font-weight:500;
}
.filteredRulesCellActual {
  color:#b8c7dd;
  white-space:normal;
  word-break:break-word;
}
.filteredRulesCellResult {
  display:flex;
  justify-content:flex-end;
}
.filteredRulesCellResult .filteredRuleScoreInput {
  width:86px;
}
.filtersEditor {
  background:rgba(255,255,255,0.02);
  border:1px solid rgba(255,255,255,0.05);
  border-radius:12px;
  padding:14px;
  min-height:240px;
}
.filteredApplyModal .batchBox.filteredApplyBox {
  max-width:420px;
}
.filteredApplyBody {
  display:flex;
  flex-direction:column;
  gap:10px;
}
.filteredApplyLabel {
  font-size:12px;
  color:var(--muted);
}
.filteredApplySelect {
  width:100%;
  height:34px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.04);
  color:var(--ink);
  font-size:13px;
  padding:0 10px;
}
.filteredApplySelect:focus {
  outline:none;
  border-color:rgba(120,160,240,0.55);
  box-shadow:0 0 0 1px rgba(120,160,240,0.2);
}
.filteredApplySelect option {
  color:#111827;
}
.filteredApplyActions {
  display:flex;
  justify-content:flex-end;
  gap:8px;
}
.filteredApplyStatus {
  font-size:12px;
  color:#9fd2ff;
  min-height:18px;
}
.filteredApplyStatus.isError {
  color:#ff9c9c;
}
.filtersEmpty {
  font-size:12px;
  color:var(--muted);
  padding:16px;
}
.filtersEditorHeader {
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:14px;
}
.filtersInput {
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  padding:10px 12px;
  color:var(--ink);
  font-size:14px;
}
.filtersTextarea {
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  padding:10px 12px;
  color:var(--ink);
  font-size:13px;
  min-height:74px;
  resize:vertical;
}
.filtersRulesHeader {
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:12px;
  color:var(--muted);
  margin-bottom:10px;
}
.filtersRulesBody {
  display:flex;
  flex-direction:column;
  gap:10px;
}
.filterRule {
  display:grid;
  grid-template-columns: minmax(160px, 1.2fr) minmax(110px, 0.6fr) minmax(200px, 1fr) 40px;
  grid-template-areas: "field op value remove";
  gap:10px;
  align-items:center;
}
.filterRuleField { grid-area: field; }
.filterRule .ruleOp { grid-area: op; }
.filterRuleValue { grid-area: value; min-width:0; }
.filterRule .ruleRemove { grid-area: remove; }
.filterRuleValue .ruleValue { width:100%; max-width:100%; box-sizing:border-box; }
.filterRuleField {
  display:flex;
  gap:6px;
  align-items:center;
}
.filterRule select,
.filterRule input {
  width:100%;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:8px;
  padding:8px 10px;
  color:var(--ink);
  font-size:12px;
}
.filterRule select option {
  color:#111;
}
.ruleRemove {
  border:1px solid rgba(255,120,120,0.4);
  color:#ffb1b1;
  background:rgba(255,120,120,0.08);
  border-radius:8px;
  width:40px;
  height:34px;
  cursor:pointer;
}
.filtersActions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  margin-top:14px;
}
.filtersStatus {
  font-size:12px;
  color:var(--muted);
  margin-top:10px;
}
.notifyIcon { font-size:16px; line-height:1; opacity:0.95; }
.notifyCount {
  position:absolute;
  right:-6px;
  top:-6px;
  min-width:18px;
  height:18px;
  padding:0 6px;
  border-radius:999px;
  background:rgba(224,85,85,0.92);
  color:#0a0f15;
  font-size:11px;
  font-weight:900;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 24px rgba(0,0,0,0.35);
}
.notifyCount.hidden { display:none; }
.notifyPanel {
  position:absolute;
  right:0;
  top:46px;
  width:min(420px, 92vw);
  max-height:60vh;
  overflow:auto;
  background:linear-gradient(180deg, rgba(20,27,36,0.98), rgba(12,17,24,0.98));
  border:1px solid rgba(255,255,255,0.08);
  border-radius:14px;
  box-shadow:0 20px 60px rgba(0,0,0,0.55);
  padding:10px;
  z-index:2000;
}
.notifyPanel.hidden { display:none; }
.notifyPanelTitle {
  color:var(--muted);
  font-size:12px;
  font-weight:700;
  padding:4px 6px 10px 6px;
}
.notifyList { display:flex; flex-direction:column; gap:8px; }
.notifyItem {
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px;
  border-radius:12px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.06);
  cursor:pointer;
}
.notifyItem:hover { background:rgba(255,255,255,0.06); }
.notifyDot {
  width:22px;
  height:22px;
  border-radius:9px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  font-size:12px;
  flex:0 0 auto;
}
.notifyDot.running { background:rgba(255,210,125,0.15); color:#ffd27d; }
.notifyDot.done { background:rgba(127,224,154,0.14); color:#7fe09a; }
.notifyDot.error { background:rgba(224,85,85,0.16); color:#f5b1b1; }
.notifyBody { min-width:0; flex:1; }
.notifyLine {
  font-size:13px;
  color:var(--ink);
  font-weight:700;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.notifyMeta {
  font-size:12px;
  color:var(--muted);
  margin-top:3px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.home {
  min-height: calc(100vh - 64px);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  padding:18px 0 28px;
  background:
    radial-gradient(1200px 600px at 15% -10%, rgba(79,140,255,0.18), transparent 60%),
    radial-gradient(1000px 500px at 85% 0%, rgba(245,177,27,0.12), transparent 55%),
    linear-gradient(180deg, var(--bg) 0%, var(--bg-2) 100%);
  background-size: 100% 100%;
  background-repeat: no-repeat;
}
.sectionTitle {
  width:min(1200px, 92vw);
  font-size:14px;
  font-weight:700;
  letter-spacing:0.4px;
  color:var(--muted);
  text-transform:none;
  border-bottom:1px solid rgba(255,255,255,0.06);
  padding-bottom:10px;
  position: sticky;
  top: 0;
  background: transparent;
  z-index: 5;
}
.catalogSearch {
  width:min(1200px, 92vw);
  margin: 10px auto 14px;
  padding-right: 0;
  box-sizing: border-box;
}
.catalogSearchInput {
  width: 100%;
  display: block;
  box-sizing: border-box;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  color: var(--ink);
  padding: 10px 12px;
  border-radius: 12px;
  font-size: 13px;
}
.catalogSearchResults {
  width:min(1200px, 92vw);
  margin: 0 auto 16px;
  padding-right: 0;
  box-sizing: border-box;
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap:12px;
}
.catalogSearchItem {
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px;
  border-radius:12px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.06);
  cursor:pointer;
}
.catalogSearchItem:hover {
  background:rgba(255,255,255,0.08);
}
.catalogSearchThumb {
  width:44px;
  height:44px;
  border-radius:8px;
  object-fit:cover;
  background:rgba(255,255,255,0.06);
}
.catalogSearchBody {
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}
.catalogSearchTitle {
  font-size:12px;
  color:var(--ink);
  font-weight:600;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.catalogSearchMeta {
  font-size:10px;
  color:var(--muted);
}
.brandWrap { display:flex; align-items:center; gap:16px; }
.logo {
  width:72px;
  height:72px;
  background:transparent url('/static/favicon.svg') center/contain no-repeat;
  position:relative;
  filter:drop-shadow(0 10px 28px rgba(0,0,0,0.45));
}
.logo::after { content:none; }
.brandText { font-size:28px; font-weight:700; letter-spacing:0.4px; }

.catalogs {
  width:min(1200px, 92vw);
  margin: 0 auto;
  box-sizing: border-box;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  column-gap:16px;
  row-gap:24px;
  flex:1 1 auto;
  --usable-h: calc(100vh - 64px - 18px - 28px - 46px);
  --row-gap: 24px;
  --card-h: calc((var(--usable-h) - var(--row-gap)) / 2);
  grid-auto-rows: calc(var(--card-h) + var(--row-gap));
  padding-right: 6px;
}
.catalogCard {
  background: linear-gradient(180deg, var(--panel), var(--panel-2));
  border:0;
  padding:0;
  border-radius:16px;
  box-shadow:0 14px 30px rgba(0,0,0,0.55);
  display:block;
  cursor:pointer;
  transition: transform .15s ease, box-shadow .15s ease;
  text-align:center;
  height: var(--card-h);
  overflow:visible;
  position: relative;
}
.catalogPreviewBtn {
  position:absolute;
  right:44px;
  top:8px;
  width:30px;
  height:30px;
  border-radius:999px;
  border:0;
  background: rgba(0,0,0,0.45);
  color:#fff;
  font-size:14px;
  cursor:pointer;
  z-index:3;
}
.catalogPreviewBtn:hover { background: rgba(0,0,0,0.6); }
.catalogCard.catalogNew {
  background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02));
  border:1px dashed rgba(255,255,255,0.25);
  box-shadow: none;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:10px;
}
.catalogCard.catalogNew:hover {
  transform: translateY(-4px) scale(1.01);
  box-shadow:0 16px 32px rgba(0,0,0,0.35);
}
.catalogNewInner {
  width:64px;
  height:64px;
  border-radius:999px;
  border:2px solid rgba(255,255,255,0.35);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:36px;
  color:rgba(255,255,255,0.9);
  background:rgba(255,255,255,0.05);
}
.catalogNewLabel {
  font-size:13px;
  letter-spacing:0.4px;
  color:rgba(255,255,255,0.7);
  text-transform:uppercase;
}
.catalogCard:hover { transform: translateY(-4px) scale(1.01); box-shadow:0 20px 46px rgba(0,0,0,0.65); }
.catalogCover {
  position:absolute;
  inset:0;
  overflow:hidden;
  background:transparent;
  border-radius:16px;
}
.catalogCover img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(1.05) contrast(1.03); transform: scale(1.03); border-radius:16px; }
.catalogCover::after {
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(120% 60% at 50% 100%, rgba(0,0,0,0.65), rgba(0,0,0,0.0) 70%),
    linear-gradient(180deg, rgba(0,0,0,0.0), rgba(0,0,0,0.55));
  pointer-events:none;
}
.catalogStatus {
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(8,10,14,0.62);
  color:#f6f6f6;
  font-size:14px;
  font-weight:600;
  letter-spacing:0.2px;
  text-shadow:0 2px 8px rgba(0,0,0,0.7);
  z-index:3;
  backdrop-filter: blur(2px);
  border-radius:16px;
}
.catalogTitle {
  position:absolute;
  left:12px;
  right:12px;
  bottom:26px;
  font-weight:700;
  font-size:15px;
  letter-spacing:0.3px;
  color:#fff;
  text-shadow:0 2px 6px rgba(0,0,0,0.7);
  z-index: 2;
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
  white-space:normal;
  max-height:2.9em;
}
.catalogMetaFake {
  position:absolute;
  left:12px;
  right:12px;
  bottom:10px;
  font-size:11px;
  color:rgba(255,255,255,0.75);
  text-shadow:0 2px 6px rgba(0,0,0,0.6);
  z-index: 2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  min-width:0;
}
.cardMenu {
  position:absolute;
  top:8px;
  right:8px;
  width:30px;
  height:30px;
  border-radius:999px;
  border:0;
  background: rgba(0,0,0,0.45);
  color:#fff;
  font-size:18px;
  cursor:pointer;
  z-index:3;
}
.cardNote {
  position:absolute;
  top:8px;
  left:8px;
  width:22px;
  height:22px;
  border-radius:50%;
  background: rgba(0,0,0,0.45);
  color:#fff;
  font-size:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:3;
}
.cardNote::after {
  content: attr(data-tip);
  position:absolute;
  top:120px;
  left:40px;
  background:#1a2230;
  color:#fff;
  padding:8px 10px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.1);
  box-shadow:0 10px 24px rgba(0,0,0,0.5);
  white-space:pre-wrap;
  min-width:200px;
  max-width:320px;
  z-index:4;
  opacity:0;
  visibility:hidden;
  transition: opacity .15s ease;
}
.cardNote:hover::after {
  opacity:1;
  visibility:visible;
}

.catalogPreviewModal.hidden { display:none; }
.catalogPreviewModal {
  position:fixed;
  inset:0;
  z-index:140;
  display:flex;
  align-items:center;
  justify-content:center;
}
.catalogPreviewBackdrop {
  position:absolute;
  inset:0;
  background:rgba(3,6,12,0.78);
  backdrop-filter: blur(6px);
}
.catalogPreviewBox {
  position:relative;
  width:min(760px, 92vw);
  height:min(88vh, 980px);
  background:linear-gradient(160deg, rgba(18,24,34,0.98), rgba(10,14,22,0.98));
  border:1px solid rgba(255,255,255,0.08);
  border-radius:18px;
  display:flex;
  flex-direction:column;
  z-index:2;
  overflow:hidden;
}
.catalogPreviewHeader {
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-bottom:1px solid rgba(255,255,255,0.06);
  justify-content:space-between;
}
.catalogPreviewTitle {
  font-size:14px;
  font-weight:800;
  color:var(--ink);
}
.catalogPreviewSep { opacity:0.6; }
.catalogPreviewClose {
  width:30px;
  height:30px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.06);
  color:var(--muted);
  cursor:pointer;
}
.catalogPreviewClose:hover { color:var(--ink); border-color:rgba(255,255,255,0.24); }
.catalogPreviewBody {
  flex:1;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:radial-gradient(circle at top, rgba(90,120,170,0.08), transparent 55%);
  position:relative;
}
.catalogPreviewBody img {
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  border-radius:6px;
  transform-origin: center center;
  cursor: grab;
}
.catalogPreviewBody img:active { cursor: grabbing; }
.catalogPreviewSide {
  position:absolute;
  right:10px;
  top:12px;
  bottom:12px;
  width:38px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  justify-content:flex-end;
}
.catalogPreviewInput {
  width:36px;
  padding:6px 4px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(12,18,28,0.55);
  color:#dbe7ff;
  font-size:11px;
  text-align:center;
}
.catalogPreviewSlider {
  flex:1;
  width:12px;
  -webkit-appearance: slider-vertical;
  writing-mode: bt-lr;
  background:transparent;
  transform: rotate(180deg);
}
.catalogPreviewSlider::-webkit-slider-thumb {
  -webkit-appearance:none;
  appearance:none;
  width:14px;
  height:14px;
  border-radius:999px;
  background:#6fa4ff;
  border:1px solid rgba(255,255,255,0.4);
  box-shadow:0 4px 10px rgba(0,0,0,0.35);
}
.catalogPreviewSlider::-webkit-slider-runnable-track {
  width:4px;
  background:rgba(111,164,255,0.28);
  border-radius:999px;
}
.catalogPreviewSlider::-moz-range-thumb {
  width:14px;
  height:14px;
  border-radius:999px;
  background:#6fa4ff;
  border:1px solid rgba(255,255,255,0.4);
}
.catalogPreviewSlider::-moz-range-track {
  width:4px;
  background:rgba(111,164,255,0.28);
  border-radius:999px;
}
.catalogPreviewTotal {
  font-size:11px;
  color:var(--muted);
  text-align:center;
}
.cardMenuList {
  position:absolute;
  top:38px;
  right:8px;
  display:flex;
  flex-direction:column;
  background: #121823;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  padding:6px;
  gap:4px;
  z-index:3;
  min-width:140px;
  box-shadow:0 10px 24px rgba(0,0,0,0.5);
}
.menuItem {
  border:0;
  background:transparent;
  color:#fff;
  text-align:left;
  padding:8px 10px;
  border-radius:8px;
  cursor:pointer;
  font-size:13px;
}
.menuItem:hover { background: rgba(255,255,255,0.06); }
.catalogEmpty {
  color:var(--muted);
  font-size:14px;
  text-align:center;
  padding:18px;
  background: linear-gradient(180deg, var(--panel), var(--panel-2));
  border-radius:12px;
  border:1px dashed rgba(255,255,255,0.1);
}

.fab {
  position:fixed;
  right:22px;
  bottom:22px;
  width:56px;
  height:56px;
  border-radius:50%;
  border:0;
  background:var(--accent);
  color:#121212;
  font-size:30px;
  box-shadow:0 10px 26px rgba(245,177,27,0.35);
  cursor:pointer;
}
@media (max-width: 720px) {
  header {
    padding: 0 12px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    column-gap: 10px;
  }
  .brandTop {
    justify-self: start;
    gap: 8px;
    min-width: 0;
  }
  .brandTopText {
    font-size: 14px;
    letter-spacing: 0.2px;
    white-space: nowrap;
  }
  .logo-mini {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
  }
  .topVersionChip {
    max-width: 110px;
    padding: 0 8px;
    font-size: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .sectionTitle,
  .catalogSearch,
  .catalogSearchResults,
  .catalogs {
    width: min(100vw - 24px, 100%);
  }
  .catalogSearch {
    padding-left: 0;
    padding-right: 0;
  }
  .catalogs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 12px;
    row-gap: 16px;
    padding-right: 0;
    grid-auto-rows: auto;
  }
  .catalogCard {
    height: 308px;
  }
  .catalogCard.catalogNew {
    min-height: 308px;
  }
  .catalogNewInner {
    width: 56px;
    height: 56px;
    font-size: 32px;
  }
  .catalogNewLabel {
    font-size: 12px;
    line-height: 1.2;
  }
}
.action { border:0; padding:10px 16px; border-radius:10px; cursor:pointer; font-weight:600; }
.action.primary { background:var(--accent); color:#1a1a1a; box-shadow:0 8px 18px rgba(245,177,27,0.35); }
.action.primary:hover { filter:brightness(1.05); }
.action.primary:active { transform: translateY(1px); }
.action.secondary { background:var(--secondary); color:#fff; }
.action.ghost { background:var(--panel); color:var(--ink); border:1px solid rgba(255,255,255,0.08); }
.action.danger { background:var(--danger); color:#fff; }

.hidden { display:none !important; }

.preview { position: fixed; inset: 64px 0 0 0; background: rgba(0,0,0,0.55); z-index: 998; display:flex; align-items:center; justify-content:center; }
.previewPanel { background:var(--panel); width: 90vw; height: 80vh; display:grid; grid-template-columns: 360px 1fr; gap:16px; padding:16px 24px 16px 24px; border-radius:12px; box-shadow:0 12px 30px rgba(0,0,0,0.45); border:1px solid rgba(255,255,255,0.06); }
.previewControlsBackdrop,
.previewControlsHeader,
.previewControlsClose,
.previewMobileControlsBtn { display:none; }
.previewLeft { display:flex; align-items:center; justify-content:center; background:var(--bg-2); border-radius:10px; overflow:auto; }
.previewLeft { position: relative; }
.previewLoading {
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  background: rgba(12, 17, 24, 0.92);
  z-index: 5;
  text-align: center;
}
.loadingLogo {
  width:56px;
  height:56px;
  background:transparent url('/static/favicon.svg') center/contain no-repeat;
  position:relative;
  animation: bounce 1.1s infinite ease-in-out;
}
.loadingLogo::after {
  content:none;
}
.loadingText { font-size:12px; color:var(--muted); letter-spacing:0.3px; max-width:220px; line-height:1.4; }
@keyframes bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
.previewRight { display:flex; flex-direction:column !important; gap:8px; padding-right:16px; overflow:auto; box-sizing:border-box; }
.previewRight > * { width:100%; }
.previewRight .padBox { display:block; min-height:140px; }
.previewRight * { box-sizing:border-box; }
.previewRight::-webkit-scrollbar { width:6px; }
.previewRight::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.12); border-radius:6px; }
.previewRight { scrollbar-color: rgba(255,255,255,0.12) transparent; scrollbar-width: thin; }
.previewRight .fieldGroup,
.previewRight .zoomRow,
.padBox,
.rcGrid,
.keepModeRow,
.pageRow { width:100%; }
.previewRight label { display:flex; justify-content:space-between; gap:6px; font-size:13px; color:var(--muted); }
.previewRight input { width:120px; background:#0c1118; color:var(--ink); border:1px solid rgba(255,255,255,0.08); border-radius:8px; padding:4px 6px; }
.previewRight #catalogName { width:100%; }
.previewRight .textArea {
  width:100%;
  min-height:80px;
  max-height:140px;
  resize:vertical;
  background:#0c1118;
  color:var(--ink);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  padding:8px 10px;
  font-size:13px;
}
.panelTitle { font-weight:700; margin-bottom:14px; }
.fieldGroup { display:flex; flex-direction:column; gap:6px; }
.fieldLabel { font-size:12px; color:var(--muted); letter-spacing:0.2px; }
.panelDivider {
  display:block;
  width:100%;
  height:0;
  border-top:1px solid #2a3342;
  margin:14px 0;
}
.panelSub { font-size:12px; color:var(--muted); letter-spacing:0.2px; margin-bottom:8px; }
.detectModeWrap {
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-bottom:10px;
}
.detectModeHeader {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  min-height:30px;
}
.detectModeToggle {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  order:-1;
}
.detectAutoSwitch {
  position:relative;
  display:inline-flex;
  width:38px;
  height:22px;
}
.detectAutoSwitch input {
  position:absolute;
  opacity:0;
  width:0;
  height:0;
}
.detectAutoSlider {
  position:relative;
  display:block;
  width:100%;
  height:100%;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.2);
  background:#0f151d;
  transition:all .18s ease;
  cursor:pointer;
}
.detectAutoSlider::before {
  content:"";
  position:absolute;
  top:2px;
  left:2px;
  width:16px;
  height:16px;
  border-radius:50%;
  background:#c7d7ef;
  transition:transform .18s ease;
}
.detectAutoSwitch input:checked + .detectAutoSlider {
  background:rgba(79,140,255,0.28);
  border-color:rgba(79,140,255,0.68);
}
.detectAutoSwitch input:checked + .detectAutoSlider::before {
  transform:translateX(16px);
  background:#edf4ff;
}
.detectExampleRow {
  display:grid;
  grid-template-columns: 1fr auto;
  gap:6px;
}
.detectExampleBtn {
  height:30px;
  border-radius:9px;
  border:1px solid rgba(126,200,255,0.35);
  background:rgba(126,200,255,0.12);
  color:#d8ebff;
  font-size:12px;
  font-weight:600;
  cursor:pointer;
  padding:0 10px;
}
.detectExampleBtn.ghost {
  border-color:rgba(255,255,255,0.14);
  background:#0f151d;
  color:#ced9eb;
}
.detectExampleBtn.active {
  border-color:rgba(245,177,27,0.6);
  background:rgba(245,177,27,0.18);
  color:#ffe7bc;
}
.detectExampleHint {
  min-height:15px;
  font-size:11px;
  color:#a8bddf;
  line-height:1.3;
}
.detectExampleWrap.hiddenByMode,
.previewManualControls.hiddenByMode {
  display:none !important;
}
.detectExampleHint.isWarn {
  color:#f5c07a;
}
.rangeGroup { display:flex; flex-direction:column; gap:10px; }
.rangeRow { display:grid; grid-template-columns: 70px 1fr; align-items:center; gap:8px; }
.rangeLabel { font-size:12px; color:var(--muted); }
.padBox {
  position: relative;
  background: #0c1118;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;
  height:140px;
  margin-bottom:12px;
}
.rcGrid {
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:6px 10px;
  margin-bottom:12px;
  align-items:center;
}
.rcGrid.disabled {
  opacity:0.48;
}
.rcTitle { font-size:12px; color:var(--muted); text-align:center; }
.rcControl {
  display:grid;
  grid-template-columns: 22px auto 22px;
  align-items:center;
  gap:6px;
  justify-items:center;
  justify-content:center;
}
.rcControl input {
  width:60px;
  background:#0f151d;
  color:#fff;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:8px;
  padding:4px 6px;
  font-size:12px;
  text-align:center;
}
.zoomRow {
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-bottom:12px;
}
.zoomRow input[type="range"] { width:100%; }
.pageRow { display:flex; flex-direction:column; gap:8px; margin-bottom:12px; }
.pageNavInline { display:flex; align-items:center; gap:8px; }
.pageCounts { font-size:12px; color:var(--muted); display:flex; gap:6px; align-items:center; }
.pageSep { opacity:0.6; }
.pageNavBtn {
  width: 28px;
  height: 28px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.05);
  color: var(--ink);
  cursor: pointer;
}
.pageNavBtn:hover { background: rgba(255,255,255,0.08); }
.keepLayout { display:grid; grid-template-columns: 1fr 1.4fr; gap:12px; margin-bottom:8px; align-items:start; }
.keepModes { display:flex; flex-direction:column; gap:8px; font-size:12px; color:var(--muted); align-items:flex-start; }
.keepModes label { display:flex; align-items:center; gap:4px; justify-content:flex-start; padding:0; margin:0; }
.keepModes input { margin:0; width:14px; height:14px; }
.keepModes span { line-height:1; display:inline-block; }
.keepExtra { display:flex; flex-direction:column; gap:6px; align-items:flex-start; }
.keepExtra { display:flex; flex-direction:column; gap:6px; }
.keepModeRow input { margin-right:4px; }
.pageRow input[type="range"] {
  -webkit-appearance:none;
  appearance:none;
  height:4px;
  border-radius:999px;
  background:rgba(255,255,255,0.12);
  outline:none;
  width:100%;
}
.pageRow input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance:none;
  width:12px;
  height:12px;
  border-radius:50%;
  background:var(--primary);
  box-shadow:0 0 0 4px rgba(79,140,255,0.25);
  cursor:pointer;
}
.pageRow input[type="range"]::-moz-range-thumb {
  width:12px;
  height:12px;
  border-radius:50%;
  background:var(--primary);
  border:0;
  cursor:pointer;
}
.zoomHeader { display:flex; justify-content:space-between; align-items:center; }
.zoomRow input[type="range"] {
  -webkit-appearance:none;
  appearance:none;
  height:4px;
  border-radius:999px;
  background:rgba(255,255,255,0.12);
  outline:none;
}
.zoomRow input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance:none;
  width:14px;
  height:14px;
  border-radius:50%;
  background:var(--primary);
  box-shadow:0 0 0 4px rgba(79,140,255,0.25);
  cursor:pointer;
}
.zoomRow input[type="range"]::-moz-range-thumb {
  width:14px;
  height:14px;
  border-radius:50%;
  background:var(--primary);
  border:0;
  cursor:pointer;
}
.zoomPct { font-size:12px; color:#fff; text-align:right; }
.rcControl input[type="number"]::-webkit-outer-spin-button,
.rcControl input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.rcControl input[type="number"] {
  -moz-appearance: textfield;
}
.padControl {
  display:grid;
  grid-template-columns: 20px 1fr 20px;
  align-items:center;
  gap:6px;
}
.padBtn {
  height:22px;
  border-radius:6px;
  border:1px solid rgba(255,255,255,0.1);
  background:#0c1118;
  color:#fff;
  font-size:12px;
  cursor:pointer;
}
.padVal input {
  width:54px;
  background:#0f151d;
  color:#fff;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:8px;
  padding:4px 6px;
  font-size:12px;
  text-align:center;
}
.padVal input[type="number"]::-webkit-outer-spin-button,
.padVal input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.padVal input[type="number"] {
  -moz-appearance: textfield;
}
.padTop { position:absolute; top:8px; left:50%; transform:translateX(-50%); }
.padBottom { position:absolute; bottom:8px; left:50%; transform:translateX(-50%); }
.padLeft { position:absolute; left:8px; top:50%; transform:translateY(-50%); }
.padRight { position:absolute; right:8px; top:50%; transform:translateY(-50%); }
.padCenter {
  position:absolute;
  inset:61px 61px 61px 61px;
  border-radius:8px;
  border:1px dashed rgba(255,255,255,0.08);
  pointer-events:none;
}
.padLink {
  position:absolute;
  inset:auto;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:28px;
  height:28px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.1);
  background:#121823;
  color:#fff;
  cursor:pointer;
  pointer-events:auto;
}
.panelActions { display:flex; flex-direction:column; gap:8px; margin-top:8px; }
.panelActions .action { width:100%; }
.panelSpacer { height:28px; flex:0 0 auto; }
#pickFile {
  width:100%;
  margin-bottom:6px;
  border:1px solid rgba(79,140,255,0.6);
  background:transparent;
  color:#cfe0ff;
}
#pickFile:hover { background: rgba(79,140,255,0.08); }

@media (max-width: 1100px) {
  .preview {
    align-items: stretch;
    padding: 10px;
    box-sizing: border-box;
  }
  .previewPanel {
    width: 100%;
    height: 100%;
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 12px;
  }
  .previewLeft {
    order: 1;
    min-height: calc(100vh - 132px);
  }
  .previewRight {
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: 12px;
    z-index: 1001;
    min-height: 0;
    max-height: min(72vh, 720px);
    padding: 16px;
    border-radius: 24px;
    background: rgba(18,24,35,0.98);
    border: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 26px 50px rgba(0,0,0,0.38);
    overflow-x: visible;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    touch-action: pan-y;
    transform: translateY(calc(100% - 46px));
    transition: transform .22s ease;
  }
  .previewRight.is-open {
    transform: translateY(0);
  }
  .previewControlsBackdrop {
    position: fixed;
    inset: 64px 0 0 0;
    z-index: 1000;
    background: rgba(8,12,18,0.38);
    backdrop-filter: blur(4px);
  }
  .previewControlsHeader {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    margin-bottom: 6px;
  }
  .previewControlsHeader strong {
    font-size: 14px;
  }
  .previewMobileControlsBtn {
    display: inline-flex;
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 20px;
    padding: 0;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(18,24,35,0.98);
    cursor: pointer;
    box-shadow: 0 10px 20px rgba(0,0,0,0.2);
  }
  .previewMobileControlsGrip {
    width: 36px;
    height: 4px;
    border-radius: 999px;
    background: rgba(255,255,255,0.34);
  }
}

@media (max-width: 720px) {
  .preview {
    padding: 0;
  }
  .previewPanel {
    border-radius: 0;
    padding: 8px;
  }
  .previewLeft {
    min-height: calc(100vh - 120px);
    border-radius: 16px;
  }
  .loadingLogo {
    width: 64px;
    height: 64px;
  }
  .loadingText {
    font-size: 13px;
  }
  .previewMobileControlsBtn {
    top: -8px;
    width: 68px;
    height: 18px;
  }
  .previewRight {
    left: 8px;
    right: 8px;
    bottom: 8px;
    padding: 14px;
    max-height: 78vh;
    border-radius: 22px;
  }
}

.workspace { display:grid; grid-template-columns: 340px 1fr; gap:16px; padding:16px 24px; height: calc(100vh - 64px); min-width:0; transition:grid-template-columns .2s ease, gap .2s ease; }
.workspace.itemsCollapsed { grid-template-columns:minmax(0, 1fr); gap:0; }
.workspace.itemsCollapsed .itemsPanel { display:none; }
.workspace.itemsCollapsed .detailPanel { padding-left:38px; }
.itemsPanel {
  background: linear-gradient(180deg, var(--panel), var(--panel-2));
  border-radius:16px;
  padding:16px 16px;
  display:flex;
  flex-direction:column;
  height: calc(100vh - 96px);
  overflow:hidden;
}
.itemsHeader {
  position: sticky;
  top: 0;
  background: transparent;
  padding-bottom:12px;
  z-index:2;
  width:100%;
  box-sizing:border-box;
}
.itemsHeader * { box-sizing:border-box; max-width:100%; }
.searchRow {
  display:flex;
  align-items:center;
  gap:8px;
}
.searchWrap { position:relative; width:100%; box-sizing:border-box; max-width:100%; }
#itemSearch {
  width:100%;
  background:#0c1118;
  color:var(--ink);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;
  padding:10px 36px 10px 12px;
  font-size:13px;
  box-sizing:border-box;
}
.clearBtn {
  position:absolute;
  right:8px;
  top:50%;
  transform:translateY(-50%);
  width:22px;
  height:22px;
  border-radius:50%;
  border:0;
  background:rgba(255,255,255,0.06);
  color:#cfd6e0;
  cursor:pointer;
  font-size:16px;
  line-height:22px;
}
.clearBtn:hover { background:rgba(255,255,255,0.12); }
.searchRow .itemsBulkToggle,
.searchRow .itemsSortIconWrap { flex:0 0 auto; }
.filterRow {
  display:flex;
  gap:8px;
  margin-top:12px;
  overflow:auto;
  padding-bottom:6px;
  background: transparent;
  scrollbar-width:thin;
  scrollbar-color: transparent transparent;
  cursor:grab;
}
.filterRow:active { cursor:grabbing; }
.filterRow::-webkit-scrollbar { height:8px; }
.filterRow::-webkit-scrollbar-thumb { background:transparent; }
.filterRow::-webkit-scrollbar-track { background:transparent; }
.itemsSortIconWrap {
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:9px;
  border:1px solid rgba(255,255,255,0.2);
  background:rgba(255,255,255,0.06);
  box-sizing:border-box;
  overflow:hidden;
  cursor:pointer;
}
.itemsSortSelect {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  opacity:0;
  outline:none;
  cursor:pointer;
  appearance:none;
}
.itemsSortCompactIcon {
  position:relative;
  width:18px;
  height:18px;
  display:block;
}
.itemsSortCompactCircle {
  position:absolute;
  inset:0;
  border:1.8px solid #d9e5ff;
  border-radius:999px;
  opacity:0.92;
}
.itemsSortCompactArrow {
  position:absolute;
  width:2px;
  background:#d9e5ff;
  border-radius:999px;
}
.itemsSortCompactArrow::before,
.itemsSortCompactArrow::after {
  content:"";
  position:absolute;
  width:2px;
  height:6px;
  background:#d9e5ff;
  border-radius:999px;
  left:0;
}
.itemsSortCompactArrowUp {
  left:6px;
  top:5px;
  height:6px;
}
.itemsSortCompactArrowUp::before {
  top:-1px;
  transform:translateX(-2px) rotate(45deg);
  transform-origin:bottom center;
}
.itemsSortCompactArrowUp::after {
  top:-1px;
  transform:translateX(2px) rotate(-45deg);
  transform-origin:bottom center;
}
.itemsSortCompactArrowDown {
  right:6px;
  bottom:5px;
  height:6px;
}
.itemsSortCompactArrowDown::before {
  bottom:-1px;
  transform:translateX(-2px) rotate(-45deg);
  transform-origin:top center;
}
.itemsSortCompactArrowDown::after {
  bottom:-1px;
  transform:translateX(2px) rotate(45deg);
  transform-origin:top center;
}
.itemsSortIconWrap:hover {
  border-color:rgba(125,165,255,0.56);
  background:rgba(86,142,255,0.14);
}
.itemsSortSelect option {
  background:var(--panel);
  color:var(--ink);
}
.chip {
  background:#141b24;
  color:var(--ink);
  border:1px solid rgba(255,255,255,0.06);
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  cursor:pointer;
  white-space:nowrap;
}
.chip.active {
  background:rgba(86,142,255,0.22);
  border-color:rgba(86,142,255,0.5);
  color:#dbe7ff;
}
.itemsCount {
  margin-top:6px;
  font-size:10px;
  color:#6fa4ff;
  letter-spacing:0.02em;
  align-self:center;
  display:flex;
  align-items:center;
  gap:8px;
  justify-content:space-between;
  flex-wrap:wrap;
}
.itemsBulkToggle {
  width:28px;
  height:28px;
  border-radius:9px;
  border:1px solid rgba(255,255,255,0.2);
  background:rgba(255,255,255,0.06);
  color:#d9e5ff;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
  transition:border-color 140ms ease, background-color 140ms ease, color 140ms ease, box-shadow 140ms ease;
}
.itemsBulkToggleIcon {
  position:relative;
  width:16px;
  height:16px;
  display:block;
}
.itemsBulkToggleBox {
  position:absolute;
  inset:1px;
  border:1.8px solid currentColor;
  border-radius:3px;
  opacity:0.96;
}
.itemsBulkToggleCheck {
  position:absolute;
  left:4px;
  top:1px;
  width:6px;
  height:10px;
  border-right:2.2px solid currentColor;
  border-bottom:2.2px solid currentColor;
  transform:rotate(40deg);
}
.itemsBulkToggle:hover {
  border-color:rgba(246,190,50,0.72);
  background:rgba(246,190,50,0.14);
  color:#ffe6a8;
}
.workspaceCatalogBtn {
  display:none;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.05);
  color:#dbe7ff;
  font-size:12px;
  font-weight:600;
  cursor:pointer;
}
.workspaceCatalogBtn:hover {
  border-color:rgba(125,165,255,0.5);
  background:rgba(86,142,255,0.14);
}
.itemsBulkToggle.isActive {
  border-color:rgba(246,190,50,0.88);
  background:rgba(246,190,50,0.23);
  color:#ffe6a8;
  box-shadow:0 0 0 1px rgba(246,190,50,0.22), 0 0 14px rgba(246,190,50,0.18);
}
.itemsBulkSelectFiltered {
  border:1px solid rgba(246,190,50,0.36);
  background:rgba(246,190,50,0.12);
  color:#ffe3a0;
  border-radius:999px;
  font-size:10px;
  font-weight:600;
  line-height:1;
  padding:7px 10px;
  cursor:pointer;
  transition:border-color 140ms ease, background-color 140ms ease, color 140ms ease;
}
.itemsBulkSelectFiltered:hover:not(:disabled) {
  border-color:rgba(246,190,50,0.62);
  background:rgba(246,190,50,0.2);
}
.itemsBulkSelectFiltered:disabled {
  opacity:0.45;
  cursor:not-allowed;
}
.itemsCountText {
  margin-left:auto;
  text-align:right;
}
.pageFilterLabel {
  font-size:10px;
  color:var(--muted);
  opacity:0.85;
}
.pageFilterRow {
  display:flex;
  align-items:center;
  justify-content:flex-start;
}
.pageFilterRow .switch {
  width:32px;
  height:16px;
}
.pageFilterRow .slider {
  border-radius:16px;
}
.pageFilterRow .slider:before {
  width:12px;
  height:12px;
  left:2px;
  bottom:2px;
}
.pageFilterRow input:checked + .slider:before {
  transform: translateX(16px);
}
.pageFilterRow.pageFilterBack .slider:after {
  content:"←";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%, -50%);
  font-size:13px;
  color:#ecf1ff;
  font-weight:600;
}
.pageFilterRow.pageFilterBack .slider:before {
  opacity:0;
}
.pageBtn {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:6px 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.04);
  color:var(--ink);
  font-size:12px;
  cursor:pointer;
}
.pageBtn.active {
  border-color:rgba(111,164,255,0.45);
  background:rgba(111,164,255,0.15);
  color:#dbe7ff;
}
.pageBtn span { color:var(--muted); }
.itemsList {
  display:flex;
  flex-direction:column;
  gap:10px;
  overflow:auto;
  padding-right:6px;
  margin-top:8px;
}
.itemsSentinel { height:1px; }
.itemsList::-webkit-scrollbar { width:6px; }
.itemsList::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.12); border-radius:6px; }
.itemCard {
  display:grid;
  grid-template-columns: 92px 1fr;
  gap:12px;
  padding:0;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(20,27,36,0.75), rgba(12,17,24,0.9));
  cursor:pointer;
  position:relative;
  overflow:hidden;
  min-height:72px;
}
.itemCard.isBulkSelected {
  border:1px solid rgba(90,150,255,0.85) !important;
  box-shadow:0 0 0 1px rgba(90,150,255,0.28), 0 0 16px rgba(90,150,255,0.22);
}
.itemCard.isCurrent {
  border:1px solid rgba(111,164,255,0.78);
  box-shadow:0 0 0 1px rgba(111,164,255,0.28);
}
.itemCard.addItemCard {
  grid-template-columns: 1fr;
  min-height:92px;
  align-items:center;
  justify-items:center;
  border:1px dashed rgba(255,255,255,0.18);
  background:rgba(16,22,30,0.55);
}
.addItemInner {
  width:36px;
  height:36px;
  border-radius:12px;
  border:1px solid rgba(111,164,255,0.45);
  color:#dbe7ff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:20px;
  background:rgba(111,164,255,0.08);
}
.itemCard:hover { background:linear-gradient(180deg, rgba(28,36,48,0.85), rgba(12,17,24,0.95)); }
.itemThumb {
  width:100%;
  height:100%;
  border-radius:0;
  object-fit:cover;
  background:transparent;
  -webkit-mask-image: linear-gradient(90deg, #000 70%, transparent);
  mask-image: linear-gradient(90deg, #000 70%, transparent);
}
.itemContent {
  padding:6px 10px 4px 0;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
.itemBulkSelect {
  margin-right:2px;
  width:28px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.itemBulkCheckInput {
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.itemBulkCheckUi {
  width:18px;
  height:18px;
  border-radius:6px;
  border:1px solid rgba(255,255,255,0.24);
  background:rgba(255,255,255,0.04);
  color:transparent;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  transition:border-color 120ms ease, background-color 120ms ease, color 120ms ease;
}
.itemBulkCheckInput:checked + .itemBulkCheckUi {
  border-color:rgba(90,150,255,0.95);
  background:rgba(90,150,255,0.3);
  color:#e9f2ff;
}
.itemTopRow {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:2px;
}
.itemTopRight {
  display:flex;
  align-items:center;
  gap:8px;
}
.itemJobBadge {
  width:18px;
  height:18px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  font-weight:900;
  user-select:none;
}
.itemJobBadge.job-running {
  color:#ffd27d;
  background:rgba(255,210,125,0.15);
  animation:spin 1.1s linear infinite;
}
.itemJobBadge.job-done {
  color:#7fe09a;
  background:rgba(127,224,154,0.14);
}
.itemJobBadge.job-error {
  color:#f5b1b1;
  background:rgba(224,85,85,0.16);
}
.itemBatchBadge {
  min-height:18px;
  border-radius:999px;
  padding:0 7px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:10px;
  font-weight:700;
  letter-spacing:0.01em;
  user-select:none;
  min-width:66px;
  justify-content:center;
}
.itemBatchSpin {
  width:10px;
  height:10px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,0.25);
  border-top-color:currentColor;
  animation:spin 0.9s linear infinite;
  display:inline-block;
}
.itemBatchBadge .itemBatchText {
  line-height:1;
  white-space:nowrap;
}
.itemBatchBadge.is-running {
  color:#ffd27d;
  background:rgba(255,210,125,0.15);
}
.itemBatchBadge.is-done {
  color:#9fd9a8;
  background:rgba(120,220,145,0.12);
}
.itemBatchBadge.is-error {
  color:#f5b1b1;
  background:rgba(224,85,85,0.16);
}
.itemBatchBadge.is-canceled {
  color:#bcc7da;
  background:rgba(148,163,184,0.16);
}
.itemBatchBadge.is-skipped {
  color:#aeb9cd;
  background:rgba(132,146,176,0.14);
}
.itemPhaseSpin {
  width:18px;
  height:18px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  color:#ffd27d;
  background:rgba(255,210,125,0.15);
  animation:spin 1.1s linear infinite;
}
@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
.itemTitle {
  font-size:13px;
  font-weight:600;
  color:var(--ink);
  margin-bottom:0;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.itemMeta { font-size:11px; color:var(--muted); }
.itemMeta.itemMetaSmall { font-size:10px; color:var(--muted); }
.itemMeta.statusText { font-weight:600; letter-spacing:0.02em; }
.itemStatusSourceMini {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(88,162,255,0.7);
  background:rgba(88,162,255,0.18);
  color:#d9ebff;
  font-size:9px;
  font-weight:700;
  letter-spacing:0.06em;
  padding:1px 6px;
  margin-left:6px;
}
.itemMeta.statusText.status-aprovado { color:#79d893; }
.itemMeta.statusText.status-reprovado { color:#f0a16a; }
.itemMeta.statusText.status-atencao { color:#f2d06a; }
.itemMeta.statusText.status-neutro { color:var(--muted); }
.itemKitRef {
  display:flex;
  align-items:center;
  gap:6px;
  margin-top:2px;
}
.itemKitIcon {
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:rgba(200,210,225,0.7);
}
.itemKitLink {
  border:1px solid rgba(130,150,190,0.35);
  background:rgba(120,140,180,0.12);
  color:#d7e3ff;
  width:22px;
  height:18px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  cursor:pointer;
}
.itemKitLink:hover {
  border-color:rgba(150,175,225,0.6);
  background:rgba(120,140,180,0.22);
}
.itemKitMore {
  font-size:10px;
  color:rgba(200,210,225,0.6);
}
.itemCard.status-aprovado {
  box-shadow:0 0 14px rgba(60,200,120,0.15);
  border:1px solid rgba(80,210,130,0.45);
}
.itemCard.status-reprovado {
  box-shadow:0 0 14px rgba(240,140,90,0.18);
  border:1px solid rgba(240,140,90,0.45);
}
.itemCard.status-atencao {
  box-shadow:0 0 14px rgba(240,190,70,0.18);
  border:1px solid rgba(240,190,70,0.45);
}
.itemCard.status-neutro { box-shadow:none; }

.detailPanel {
  background: linear-gradient(180deg, var(--panel), var(--panel-2));
  border-radius:16px;
  padding:18px;
  min-height: calc(100vh - 96px);
  position:relative;
  min-width:0;
  overflow:hidden;
}
.workspaceMobileBar {
  display:none;
}
.workspaceMobileBar.hidden {
  display:none;
}
.workspaceItemsToggle {
  position:absolute;
  display:none;
  top:0;
  left:0;
  z-index:6;
  width:24px;
  height:100%;
  border-radius:0 10px 10px 0;
  border:1px solid rgba(125,165,255,0.38);
  border-left:none;
  background:linear-gradient(180deg, rgba(56,96,156,0.34), rgba(26,44,72,0.42));
  color:#dbe8ff;
  font-size:16px;
  font-weight:700;
  padding-left:1px;
  cursor:pointer;
  letter-spacing:0;
}
.workspaceItemsToggle:hover {
  border-color:rgba(125,165,255,0.55);
  background:linear-gradient(180deg, rgba(72,118,186,0.42), rgba(30,52,84,0.5));
  color:#e7efff;
}
.workspace.itemsCollapsed .workspaceItemsToggle {
  display:flex;
  align-items:center;
  justify-content:center;
}
.itemDetail { height:100%; overflow:auto; scrollbar-color: rgba(255,255,255,0.12) transparent; scrollbar-width: thin; }
.itemDetail::-webkit-scrollbar { width:8px; }
.itemDetail::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.12); border-radius:8px; }
.itemDetail::-webkit-scrollbar-track { background:transparent; }
.itemCanvas { display:flex; flex-direction:column; gap:16px; }
.itemHeader {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  color:var(--muted);
  font-size:12px;
}
.itemHeaderTitle {
  font-size:14px;
  color:var(--ink);
  font-weight:700;
  cursor:pointer;
}
.itemHeaderCovers {
  display:flex;
  align-items:center;
  gap:14px;
}
.itemHeaderCol {
  display:flex;
  align-items:center;
  gap:10px;
}
.itemHeaderCatalog {
  flex-direction:column;
  align-items:center;
  gap:4px;
  cursor:pointer;
}
.itemHeaderTitle:hover,
.itemHeaderCatalog:hover {
  opacity:0.92;
}
.itemHeaderTitle:focus-visible,
.itemHeaderCatalog:focus-visible {
  outline:2px solid rgba(86,142,255,0.48);
  outline-offset:4px;
  border-radius:10px;
}
.itemHeaderPage {
  flex-direction:column;
  align-items:center;
  gap:6px;
}
.itemCatalogPage {
  font-size:11px;
  color:var(--muted);
}
.itemCatalogPageThumb {
  width:30px;
  height:38px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(12,17,24,0.6);
  padding:0;
  overflow:hidden;
  cursor:pointer;
}
.itemCatalogPageThumb img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
#itemCatalogThumb {
  width:36px;
  height:48px;
  border-radius:8px;
  object-fit:cover;
  background:#0c1118;
}
.itemCatalogLabel { font-size:11px; color:var(--muted); }
.itemCatalogName { font-size:13px; color:var(--ink); font-weight:600; }

.itemHero {
  display:grid;
  grid-template-columns: 220px 1fr;
  gap:18px;
  align-items:stretch;
  background: linear-gradient(180deg, rgba(20,27,36,0.6), rgba(12,17,24,0.9));
  border-radius:16px;
  padding:0;
  overflow:hidden;
}
.itemHeroMedia {
  height:100%;
  min-height:220px;
  position:relative;
}
.itemHeroMedia img {
  width:100%;
  height:100%;
  background:#0c1118;
  object-fit:cover;
  -webkit-mask-image: linear-gradient(90deg, #000 72%, transparent);
  mask-image: linear-gradient(90deg, #000 72%, transparent);
  cursor:zoom-in;
}
.itemImageActions {
  position:absolute;
  top:10px;
  right:10px;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.editItemImage,
.restoreItemImage,
.copyItemImage {
  width:28px;
  height:28px;
  border-radius:8px;
  border:0;
  background:rgba(10,14,18,0.5);
  color:#dbe7ff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:13px;
  backdrop-filter: blur(6px);
}
.itemHeroInfo {
  padding:18px 20px 18px 0;
  display:flex;
  flex-direction:column;
  min-height:220px;
}
.itemHeroTitle { font-size:20px; font-weight:700; color:var(--ink); }
.itemTitleEdit {
  font-size:20px;
  font-weight:700;
  color:var(--ink);
  background:rgba(12,17,24,0.5);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  padding:6px 10px;
  width:100%;
  outline:none;
}
.itemHeroTitleRow {
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
}
.itemTitleActions {
  display:flex;
  gap:6px;
  margin-left:8px;
}
.titleAction {
  width:24px;
  height:24px;
  border-radius:6px;
  border:0;
  background:rgba(10,14,18,0.4);
  color:#dbe7ff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:12px;
  backdrop-filter: blur(6px);
}
.titleAction.isDanger {
  color:#ff8f8f;
  background:rgba(120, 26, 26, 0.38);
}
.titleAction.isDanger:hover {
  color:#ffdede;
  background:rgba(168, 38, 38, 0.52);
}
.itemStatusInline {
  margin-left:auto;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.12);
  font-size:13px;
  font-weight:600;
  padding:6px 10px;
  color:var(--ink);
  cursor:pointer;
  border-radius:10px;
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(255,255,255,0.5) 50%),
    linear-gradient(135deg, rgba(255,255,255,0.5) 50%, transparent 50%),
    linear-gradient(to right, rgba(255,255,255,0.06), rgba(255,255,255,0.06));
  background-position:
    calc(100% - 16px) calc(50% + 1px),
    calc(100% - 11px) calc(50% + 1px),
    100% 0;
  background-size:5px 5px, 5px 5px, 34px 100%;
  background-repeat:no-repeat;
  padding-right:38px;
}
.itemStatusInline:focus {
  outline:none;
  border-color:rgba(79,140,255,0.5);
  box-shadow:0 0 0 2px rgba(79,140,255,0.2);
}
.itemStatusInline option {
  background:var(--panel);
  color:var(--ink);
}
.itemStatusSourceBadge {
  border-radius:999px;
  border:1px solid rgba(88,162,255,0.75);
  background:rgba(88,162,255,0.2);
  color:#d9ebff;
  font-size:10px;
  font-weight:700;
  letter-spacing:0.06em;
  padding:4px 8px;
  text-transform:uppercase;
}
.itemStatusSourceWrap {
  position:relative;
  display:inline-flex;
  align-items:center;
}
.itemStatusSourceClear {
  position:absolute;
  top:-7px;
  right:-7px;
  width:16px;
  height:16px;
  border-radius:999px;
  border:1px solid rgba(255,132,132,0.75);
  background:rgba(255,72,72,0.9);
  color:#fff;
  cursor:pointer;
  font-size:10px;
  font-weight:700;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 0 0 2px rgba(11,16,24,0.95);
  z-index:2;
  padding:0;
}
.itemStatusSourceClear:hover {
  border-color:rgba(255,190,190,0.9);
  background:rgba(255,92,92,1);
}
.itemHeroMeta { margin-top:8px; font-size:12px; color:var(--muted); }
.itemHeroMetaRow {
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:auto;
  padding-top:10px;
}
.itemHeroFields {
  display:flex;
  gap:16px;
  margin-top:12px;
  flex-wrap:wrap;
}
.itemHeroCommentRow {
  margin-top:10px;
  display:flex;
  flex-direction:column;
  gap:6px;
  min-height:0;
  flex:0 0 auto;
}
.itemCommentWrap {
  display:flex;
  align-items:center;
  gap:8px;
  width:100%;
}
.itemCommentValue {
  width:100%;
  min-height:34px;
  display:flex;
  align-items:center;
  padding:6px 10px;
  border-radius:10px;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.1);
  cursor:text;
}
.itemCommentValue:hover {
  border-color:rgba(120,170,255,0.32);
}
.itemCommentWrap .itemFieldInput {
  width:100%;
  max-width:none;
}
.itemField {
  display:flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border-radius:12px;
  background:rgba(255,255,255,0.05);
}
.itemField.itemFieldKitInline {
  gap:10px;
  margin-left:auto;
}
.itemField.itemFieldWide {
  flex:1 1 220px;
}
.itemFieldLabel {
  font-size:11px;
  color:var(--muted);
}
.itemFieldValue {
  font-size:13px;
  color:#e7eefb;
  min-width:40px;
}
.itemFieldInput {
  width:120px;
  font-size:13px;
  color:#e7eefb;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.2);
  border-radius:8px;
  padding:4px 8px;
}
.itemFieldActions {
  display:flex;
  gap:6px;
}
.itemUpdatedAt {
  margin-left:auto;
  font-size:11px;
  color:var(--muted);
  opacity:0.8;
  white-space:nowrap;
}
.itemStatusInline.status-aprovado { color:#79d893; }
.itemStatusInline.status-reprovado { color:#f0a16a; }
.itemStatusInline.status-atencao { color:#f2d06a; }
.itemStatusInline.status-neutro { color:var(--muted); }

.analysisDivider {
  margin-top:12px;
  padding-top:0;
  border-top:0;
  font-size:11px;
  color:var(--muted);
  text-transform:none;
  letter-spacing:0.02em;
}
.itemSimilares {
  margin-top:12px;
  padding:12px 14px 10px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(20,26,35,0.9), rgba(12,17,24,0.9));
  box-shadow:0 8px 20px rgba(0,0,0,0.28);
}
.itemSimilaresHeader {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.itemSimilaresLabel {
  font-size:14px;
  color:var(--ink);
  font-weight:700;
  letter-spacing:0.02em;
}
.sectionToggle {
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.04);
  color:var(--ink);
  font-size:12px;
  padding:6px 10px;
  border-radius:999px;
  cursor:pointer;
}
.sectionToggle:hover { background:rgba(255,255,255,0.08); }
.analysisRow {
  margin-top:8px;
  display:flex;
  gap:10px;
  overflow:auto;
  padding-bottom:6px;
}
.analysisRow.hidden { display:none; }
.analysisCard {
  min-width:160px;
  min-height:84px;
  background:linear-gradient(180deg, rgba(18,24,32,0.75), rgba(12,17,24,0.9));
  border:0;
  border-radius:12px;
  padding:8px 10px;
  color:var(--ink);
  cursor:pointer;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.analysisCard.active {
  border-color: rgba(255,210,125,0.6);
  box-shadow:0 0 0 1px rgba(255,210,125,0.2);
}
.analysisCard.result-ok {
  box-shadow:0 0 0 1px rgba(90,200,120,0.25), 0 8px 18px rgba(90,200,120,0.08);
}
.analysisCard.result-bad {
  box-shadow:0 0 0 1px rgba(240,120,120,0.25), 0 8px 18px rgba(240,120,120,0.08);
}
.analysisCardFooter {
  margin-top:auto;
  padding-top:4px;
}
.analysisCardHeader {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  font-size:11px;
  color:var(--muted);
}
.analysisCardTitle { font-weight:700; color:#e7eefb; font-size:12px; }
.analysisCardHeader strong { color:var(--ink); font-weight:700; }
.analysisCardActions {
  display:flex;
  align-items:center;
  gap:6px;
}
.analysisJobBadge {
  width:18px;
  height:18px;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  font-weight:900;
  user-select:none;
}
.analysisJobBadge.hidden { display:none; }
.analysisJobBadge.job-running {
  color:#ffd27d;
  background:rgba(255,210,125,0.15);
  animation:spin 1.1s linear infinite;
}
.analysisJobBadge.job-done {
  color:#7fe09a;
  background:rgba(127,224,154,0.14);
}
.analysisJobBadge.job-error {
  color:#f5b1b1;
  background:rgba(224,85,85,0.16);
}
.analysisDelete {
  width:18px;
  height:18px;
  border-radius:6px;
  border:0;
  background:transparent;
  color:#f2b4b4;
  cursor:pointer;
  font-size:14px;
}
.analysisDelete:hover {
  color:#ff9a9a;
}
.analysisCollect {
  border:1px solid rgba(255,210,125,0.72);
  background:transparent;
  color:#ffd27d;
  border-radius:8px;
  font-size:11px;
  font-weight:700;
  letter-spacing:0.01em;
  padding:6px 10px;
  width:100%;
  display:block;
  text-align:center;
  cursor:pointer;
}
.analysisCollect:hover {
  background:transparent;
  border-color:rgba(255,210,125,0.95);
  color:#ffe3a6;
}
.analysisCardStatus {
  font-size:11px;
  color:#ffd27d;
}
.analysisCard.addNew {
  align-items:center;
  justify-content:center;
  font-size:28px;
  color:var(--muted);
  border:1px dashed rgba(255,255,255,0.12);
  background:linear-gradient(180deg, rgba(18,24,32,0.5), rgba(12,17,24,0.8));
}
.analysisCard.addNew:hover {
  border-color:rgba(255,255,255,0.2);
  color:var(--ink);
}
.analysisMiniTrack {
  display:flex;
  align-items:center;
  gap:6px;
}
.analysisMiniStep {
  width:10px;
  height:10px;
  border-radius:50%;
  background:rgba(255,255,255,0.08);
}
.analysisMiniStep.done { background:rgba(90,200,120,0.7); }
.analysisMiniStep.active { background:rgba(255,210,125,0.8); }
.analysisMiniDivider {
  width:12px;
  height:2px;
  background:rgba(255,255,255,0.15);
  border-radius:999px;
}
.analysisMiniDivider.done { background:rgba(90,200,120,0.6); }
.analysisMiniDivider.active { background:rgba(255,210,125,0.6); }
.analysisMiniIcon {
  margin-left:auto;
  font-size:14px;
}
.analysisMiniIcon.ok { color:#7fe09a; }
.analysisMiniIcon.bad { color:#f27a7a; }
.analysisMiniIcon.wait { color:#ffd27d; }
.primaryAction {
  border:0;
  background:linear-gradient(180deg, #ffd056, #f2b94b);
  color:#1a1a1a;
  font-weight:700;
  padding:8px 14px;
  border-radius:10px;
  cursor:pointer;
}
.primaryAction.loading {
  box-shadow:0 0 0 1px rgba(34,26,6,0.35), 0 0 0 3px rgba(255,208,86,0.22);
}
.primaryAction:disabled {
  opacity:0.5;
  cursor:not-allowed;
}

.itemTabs {
  display:flex;
  gap:10px;
  border-bottom:1px solid rgba(255,255,255,0.06);
  padding-bottom:8px;
}
.itemTabsRail {
  position:relative;
}
.itemTabs .tab {
  background:transparent;
  border:0;
  color:var(--muted);
  font-size:12px;
  padding:6px 10px;
  border-radius:999px;
  cursor:pointer;
}
.itemTabs .tab.active {
  color:#dbe7ff;
  background:rgba(86,142,255,0.2);
}
.itemTabBody {
  min-height:220px;
  background:rgba(12,17,24,0.45);
  border-radius:12px;
  padding:16px;
}
.tabEmpty { color:var(--muted); font-size:12px; }
.summaryPanel { display:grid; gap:12px; color:var(--ink); }
.summaryHeader { display:flex; flex-direction:column; gap:4px; }
.summaryTitle { display:flex; align-items:center; gap:8px; font-size:16px; }
.summaryTitle .titleAction { border:0; background:rgba(255,255,255,0.1); color:#dce6ff; cursor:pointer; border-radius:8px; padding:2px 6px; }
.renameInline { flex:1; min-width:0; padding:6px 8px; border-radius:8px; border:1px solid rgba(255,255,255,0.15); background:rgba(255,255,255,0.06); color:#e7eefb; }
.analysisTitleText {
  flex: 0 1 auto;
  min-width: 0;
  max-width: calc(100% - 34px);
  font-weight:700;
  color:var(--ink);
  cursor:text;
  user-select:text;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.analysisTitleText.isFallback {
  color:var(--muted);
  font-weight:600;
}
.analysisTitleEdit {
  flex: 0 1 auto;
  min-width: 0;
  max-width: calc(100% - 34px);
  font-size:14px;
  font-weight:700;
  color:var(--ink);
  background:rgba(12,17,24,0.45);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:8px;
  padding:5px 8px;
  outline:none;
}
.summarySection { display:grid; gap:8px; }
.summarySectionTitle {
  font-size:12px;
  font-weight:600;
  text-transform:none;
  letter-spacing:0;
  color:var(--muted);
}
.analysisTitles {
  display:grid;
  gap:8px;
}
.analysisTitleRow {
  display:grid;
  grid-template-columns: 140px minmax(0, 1fr) auto;
  gap:10px;
  align-items:center;
  padding:8px 10px;
  border-radius:10px;
  background:rgba(255,255,255,0.04);
}
.analysisTitleKey {
  color:var(--muted);
  font-size:12px;
  font-weight:600;
  letter-spacing:0.01em;
}
.analysisTitleValueWrap {
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.analysisTitleVal {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#e7eefb;
}
.analysisTitleStats {
  font-size:12px;
  color:var(--muted);
  white-space:nowrap;
}
@media (max-width: 720px) {
  .analysisTitleRow {
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    row-gap:6px;
  }
  .analysisTitleKey {
    grid-column: 1 / 2;
  }
  .analysisTitleValueWrap {
    grid-column: 1 / 2;
    grid-row: 2 / 3;
  }
  .analysisTitleStats {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
    justify-self:end;
  }
}
.summaryFields {
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap:10px;
}
.summaryField {
  background:rgba(255,255,255,0.04);
  padding:8px 10px;
  border-radius:10px;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.summaryLabel {
  font-size:12px;
  font-weight:600;
  color:var(--muted);
  text-transform:none;
  letter-spacing:0;
}
.summaryValue { font-size:12px; color:var(--ink); word-break:break-word; }
.summaryActions { display:flex; gap:10px; flex-wrap:wrap; }
.summaryFooter {
  margin-top:2px;
  padding-top:10px;
}
.summaryFooter::before {
  content:"";
  display:block;
  height:1px;
  background:rgba(255,255,255,0.06);
  margin:0 10px 10px 10px;
}
.summaryFooter .summaryActions {
  padding:0 10px 2px 10px;
}
.dangerOutline {
  margin-left:auto;
  border:1px solid rgba(242,122,122,0.38);
  color:rgba(242,122,122,0.92);
  background:rgba(242,122,122,0.06);
  font-weight:700;
  padding:8px 14px;
  border-radius:10px;
  cursor:pointer;
}
.dangerOutline:hover {
  background:rgba(242,122,122,0.10);
  border-color:rgba(242,122,122,0.55);
}
.dangerOutline:disabled {
  opacity:0.5;
  cursor:not-allowed;
}
.summaryRow {
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
  border-radius:10px;
  background:rgba(255,255,255,0.04);
  color:var(--ink);
  font-size:12px;
}
.tabPanel { display:none; }
.tabPanel.active { display:block; }
.adsTable {
  width:100%;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.adsTabLoading {
  min-height:140px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  background:linear-gradient(180deg, rgba(18,24,32,0.45), rgba(10,14,20,0.72));
}
.adsTabLoadingLogo {
  animation:adsTabLogoPulse 1.2s ease-in-out infinite;
}
.adsTabLoadingText {
  font-size:12px;
  color:var(--muted);
}
@keyframes adsTabLogoPulse {
  0%, 100% { transform:scale(1); opacity:1; }
  50% { transform:scale(0.92); opacity:0.76; }
}
.adsTabFiltersWrap {
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(18,24,32,0.55), rgba(10,14,20,0.78));
}
.adsTabFiltersHead {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.adsTabFiltersTitle {
  font-size:12px;
  font-weight:700;
  color:var(--ink);
}
.adsTabFiltersCount {
  font-size:11px;
  color:var(--muted);
}
.adsTabFiltersLine {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.adsTabFiltersTools {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}
.adsAdvancedFilters {
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:10px;
}
.adsAdvancedField {
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.adsAdvancedLabel {
  font-size:11px;
  color:var(--muted);
}
.adsAdvancedSelect,
.adsAdvancedInput {
  width:100%;
  min-width:0;
  height:32px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.04);
  color:var(--ink);
  font-size:12px;
  padding:0 10px;
  box-sizing:border-box;
}
.adsAdvancedSelect option {
  color:#111827;
  background:#eef4ff;
}
.adsTabControlsLauncher,
.adsTabControlsSheet {
  display:none;
}
.adsTabControlsBackdrop,
.adsTabControlsHeader {
  display:none;
}
.adsTabControlsCard {
  display:contents;
}
.adsTabToolsActions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  margin-left:auto;
}
.adsTabSortWrap {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.adsTabSortLabel {
  font-size:11px;
  color:var(--muted);
}
.adsTabSortSelect {
  min-width:180px;
  height:30px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(255,255,255,0.04);
  color:var(--ink);
  font-size:11px;
  padding:0 8px;
}
.adsTabSortSelect option {
  color:#111827;
  background:#eef4ff;
}
.adsFilterInvertBtn {
  min-width:108px;
  height:30px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.16);
  background:rgba(255,255,255,0.04);
  color:var(--muted);
  font-size:11px;
  line-height:1;
  white-space:nowrap;
}
.adsFilterInvertBtn:hover {
  border-color:rgba(255,179,105,0.45);
  background:rgba(255,179,105,0.12);
  color:#ffe7c7;
}
.adsFilterInvertBtn.isActive {
  border-color:rgba(255,143,143,0.62);
  background:rgba(255,143,143,0.18);
  color:#ffe2e2;
}
.adsRefreshBtn {
  min-width:146px;
}
.adsAddBtn {
  min-width:132px;
}
.adsTabMineStatus {
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.1);
  background:rgba(255,255,255,0.03);
  font-size:11px;
  color:var(--muted);
}
.adsTabMineStatus.running {
  border-color:rgba(126,200,255,0.36);
  background:rgba(126,200,255,0.09);
}
.adsTabMineStatus.done {
  border-color:rgba(122,216,162,0.32);
  background:rgba(122,216,162,0.08);
}
.adsTabMineStatus.canceled {
  border-color:rgba(255,188,111,0.32);
  background:rgba(255,188,111,0.09);
}
.adsTabMineStatusText {
  font-size:11px;
  color:var(--ink);
  display:flex;
  align-items:center;
  gap:8px;
}
.adsMineTextSpinner {
  width:12px;
  height:12px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,0.25);
  border-top-color:rgba(255,255,255,0.9);
  animation:spin 0.8s linear infinite;
  flex:0 0 auto;
}
.adsTabMineBar {
  width:100%;
  height:8px;
  border-radius:999px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(255,255,255,0.06);
}
.adsTabMineBarFill {
  display:block;
  height:100%;
  width:0;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(126,200,255,0.94), rgba(126,200,255,0.62));
  transition:width .22s ease;
}
.adsTabMineCurrent {
  font-size:11px;
  color:rgba(214,229,255,0.92);
}
.adsTabFilterChip {
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(255,255,255,0.03);
  color:var(--muted);
  border-radius:999px;
  padding:5px 10px;
  font-size:11px;
  cursor:pointer;
  transition:border-color .15s ease, background .15s ease, color .15s ease;
}
.adsTabFilterChip:hover {
  color:var(--ink);
  border-color:rgba(134,194,255,0.42);
  background:rgba(124,188,255,0.12);
}
.adsTabFilterChip.isActive {
  color:#e8f3ff;
  border-color:rgba(126,200,255,0.72);
  background:rgba(126,200,255,0.20);
}
.adsTabFiltersLine.isInverted .adsTabFilterChip {
  border-color:rgba(255,177,111,0.34);
  background:rgba(255,177,111,0.06);
  color:#f5d8af;
}
.adsTabFiltersLine.isInverted .adsTabFilterChip:hover {
  border-color:rgba(255,177,111,0.55);
  background:rgba(255,177,111,0.16);
  color:#ffe9c8;
}
.adsTabFiltersLine.isInverted .adsTabFilterChip.isActive {
  border-color:rgba(255,143,143,0.68);
  background:rgba(255,143,143,0.2);
  color:#ffe2e2;
}
.adsRowsWrap {
  width:100%;
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-top:8px;
}
.adsRow {
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:10px 12px;
  border-radius:10px;
  background:linear-gradient(180deg, rgba(18,24,32,0.6), rgba(12,17,24,0.8));
  font-size:12px;
  color:var(--ink);
}
.adsRowCurrentMining {
  box-shadow:inset 0 0 0 1px rgba(255,210,125,0.5);
  background:linear-gradient(180deg, rgba(56,44,22,0.6), rgba(30,24,12,0.85));
}
.adsRow.adsRowHiddenByExpand {
  display:none;
}
.adsRow.tracked {
  box-shadow:inset 0 0 0 1px rgba(126,200,255,0.42);
}
.adsRowLastViewed {
  box-shadow:0 0 0 1px rgba(126,200,255,0.34), 0 8px 20px rgba(96,166,255,0.14);
}
.adsRowLastViewed.adsRowCurrentMining {
  box-shadow:inset 0 0 0 1px rgba(255,210,125,0.5), 0 0 0 1px rgba(126,200,255,0.3), 0 8px 20px rgba(96,166,255,0.14);
}
.adsRowLastViewed.tracked {
  box-shadow:inset 0 0 0 1px rgba(126,200,255,0.42), 0 0 0 1px rgba(126,200,255,0.3), 0 8px 20px rgba(96,166,255,0.14);
}
.adsLiteHead {
  display:grid;
  grid-template-columns: 84px minmax(0, 1fr) auto;
  align-items:stretch;
  gap:10px;
  cursor:pointer;
}
.adsLiteActions {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  gap:6px;
  min-width:196px;
}
.adsTopRightActions {
  display:flex;
  justify-content:flex-end;
  align-items:flex-start;
}
.adsSideControls {
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  align-items:center;
  gap:8px;
}
.adsTrackInline {
  display:flex;
  align-items:center;
  gap:8px;
  justify-self:end;
  flex:0 0 auto;
}
.adsLiteTitleWrap {
  min-width:0;
}
.adsTitleLine {
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
}
.adsTitleQuickActions {
  margin-left:4px;
  display:flex;
  align-items:center;
  gap:6px;
  flex-shrink:0;
}
.adsTitleQuickBtn {
  width:22px;
  height:22px;
  border-radius:7px;
  border:1px solid rgba(255,255,255,0.16);
  background:rgba(255,255,255,0.04);
}
.adsRowIndex {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:30px;
  height:18px;
  padding:0 6px;
  border-radius:999px;
  border:1px solid rgba(126,200,255,0.32);
  background:rgba(126,200,255,0.12);
  color:#d8ebff;
  font-size:10px;
  line-height:1;
  font-weight:600;
}
.adsManualMineIcon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  border-radius:999px;
  border:1px solid rgba(245,177,27,0.52);
  background:rgba(245,177,27,0.18);
  color:#ffe7ba;
  font-size:10px;
  line-height:1;
}
.adsAutoMinedIcon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  border-radius:999px;
  border:1px solid rgba(121,216,147,0.58);
  background:rgba(121,216,147,0.18);
  color:#d8ffe3;
  font-size:10px;
  line-height:1;
}
.adsLiteTitle {
  min-width:0;
  flex:0 1 auto;
  max-width:100%;
  font-size:13px;
  color:var(--ink);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.adsThumb {
  width:100%;
  height:100%;
  min-height:0;
  display:block;
  border-radius:inherit;
  object-fit:cover;
  background:#0c1118;
  cursor:zoom-in;
}
.adsThumbWrap {
  width:84px;
  height:116px;
  min-height:116px;
  max-height:116px;
  border-radius:10px;
  overflow:hidden;
  align-self:flex-start;
}
.adsLink {
  width:26px;
  height:26px;
  border-radius:8px;
  border:0;
  background:rgba(10,14,18,0.35);
  color:#dbe7ff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  text-decoration:none;
}
.adsRemoveBtn {
  width:22px;
  height:22px;
  border:0;
  background:transparent;
  color:#ff6b6b;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:18px;
  font-weight:700;
  line-height:1;
}
.adsRemoveBtn:hover {
  color:#ff3b3b;
}
.adsRemoveBtn:disabled {
  opacity:0.38;
  cursor:not-allowed;
}
.adsPhasePosTag.isKnown {
  color:#78beff;
  font-weight:600;
}
.adsPhasePosTag.isUnknown {
  color:var(--muted);
}
.adsTrackSwitch {
  transform:scale(.92);
  transform-origin:center;
}
.adsTrackKind {
  height:28px;
  min-width:128px;
  width:128px;
  flex:0 0 128px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.16);
  background:rgba(255,255,255,0.04);
  color:var(--ink);
  font-size:11px;
  padding:0 8px;
}
.adsTrackKind.adsTrackKindCollapsed {
  visibility:hidden;
  opacity:0;
  pointer-events:none;
}
.adsTrackKind option {
  color:#111827;
  background:#eef4ff;
}
.adsKitInline {
  display:flex;
  align-items:center;
  flex:0 0 auto;
  min-width:0;
}
.adsKitInlineBtn {
  min-width:0;
  width:100%;
  min-height:28px;
  padding:2px 8px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(255,255,255,0.03);
  color:var(--ink);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  cursor:pointer;
}
.adsKitInlineBtn:hover:not(:disabled) {
  border-color:rgba(126,200,255,0.42);
  background:rgba(126,200,255,0.12);
}
.adsKitInlineBtn:disabled {
  opacity:0.48;
  cursor:not-allowed;
}
.adsKitInlineValue {
  font-size:11px;
  color:var(--ink);
  white-space:nowrap;
}
.adsKitInlineEdit {
  flex:0 0 auto;
  color:#d7e6ff;
  font-size:12px;
  font-weight:600;
  line-height:1;
}
.adsKitInlineInput {
  width:58px;
  height:24px;
  border-radius:6px;
  border:1px solid rgba(255,255,255,0.18);
  background:rgba(7,12,18,0.72);
  color:var(--ink);
  font-size:11px;
  padding:0 6px;
}
.adsExpandInlineWrap {
  display:flex;
  justify-content:flex-end;
  margin-top:auto;
  padding-top:2px;
}
.adsExpandBtn {
  min-width:72px;
  height:28px;
  padding:0 10px;
  border-radius:8px;
  font-size:11px;
  line-height:1;
}
.adsExpandBtn.isOpen {
  border-color:rgba(245,177,27,0.72);
  background:rgba(245,177,27,0.14);
  color:#ffe4b3;
}
.adsDetail {
  border-top:1px solid rgba(255,255,255,0.08);
  padding-top:8px;
}
.adsDetailTags {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:8px;
}
.adsDetailGrid {
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:6px;
}
.adsDetailGrid .dataRow {
  margin:0;
  padding:8px 10px;
}
.adsDetailVisits {
  margin-top:8px;
  padding:8px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.02);
}
.adsDetailVisitsHead {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:8px;
}
.adsVisitsStat {
  display:inline-flex;
  align-items:baseline;
  gap:6px;
  padding:3px 8px;
  border-radius:999px;
  border:1px solid rgba(126,200,255,0.28);
  background:rgba(126,200,255,0.08);
}
.adsVisitsStat strong {
  font-size:11px;
  color:#c4d8f5;
  font-weight:700;
}
.adsVisitsStat em {
  font-size:12px;
  color:#e8f4ff;
  font-style:normal;
  font-weight:700;
}
.adsHistoryWrap {
  margin-top:8px;
  padding:8px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.02);
}
.adsInpiBlock {
  margin-top:8px;
  padding:8px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.02);
}
.adsInpiHead {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
}
.adsInpiHeadMain {
  min-width:0;
  flex:1;
}
.adsInpiTitle {
  font-size:12px;
  font-weight:700;
  color:#d8e8ff;
}
.adsInpiMeta {
  font-size:10px;
  color:#9fb4d8;
  text-align:left;
}
.adsInpiBlockBtn {
  height:24px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(245,177,27,0.68);
  background:rgba(245,177,27,0.14);
  color:#ffe4b3;
  font-size:10px;
  line-height:1;
  white-space:nowrap;
}
.adsInpiBlockBtn:hover {
  background:rgba(245,177,27,0.24);
}
.adsInpiStatus {
  margin-top:6px;
  font-size:11px;
  color:#d6e3f9;
}
.adsInpiWarn {
  margin-top:6px;
  font-size:11px;
  color:#f7cd8e;
}
.adsInpiTableWrap {
  margin-top:8px;
  width:100%;
  overflow:auto;
}
.adsInpiTable {
  width:100%;
  border-collapse:collapse;
  min-width:820px;
  font-size:11px;
}
.adsInpiTable th,
.adsInpiTable td {
  padding:6px 8px;
  border-bottom:1px solid rgba(255,255,255,0.08);
  text-align:left;
  vertical-align:top;
}
.adsInpiClassCell {
  min-width:240px;
}
.adsInpiClassCell div {
  margin-bottom:3px;
}
.adsInpiClassCell div:last-child {
  margin-bottom:0;
}
.adsInpiRowActive td {
  background:rgba(79,140,255,0.16);
}
.adsInpiRowActiveProduct td {
  background:rgba(245,177,27,0.22);
  color:#fff6de;
}
.adsInpiRowNoResult td {
  color:#b8f3cf;
  font-weight:600;
}
.adsInpiGreenDot {
  color:#22c55e;
  margin-right:6px;
}
.adsInpiTable th {
  color:#c9dbff;
  font-weight:700;
}
.adsCatalogChildren {
  margin-top:8px;
  padding:8px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.09);
  background:linear-gradient(180deg, rgba(17,24,33,0.52), rgba(9,13,20,0.72));
}
.adsCatalogChildrenHead {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:8px;
  margin-bottom:8px;
}
.adsCatalogChildrenTitle {
  font-size:12px;
  font-weight:700;
  color:#d8e8ff;
}
.adsCatalogChildrenHint {
  font-size:11px;
  color:#a8bddf;
  text-align:right;
}
.adsCatalogChildrenList {
  display:flex;
  flex-direction:column;
  gap:6px;
}
.adsCatalogChildRow {
  display:grid;
  grid-template-columns: 42px 56px minmax(0, 1fr) auto;
  align-items:center;
  gap:8px;
  padding:6px 8px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
}
.adsCatalogChildRank {
  font-size:12px;
  font-weight:700;
  color:#9fbeef;
  text-align:center;
}
.adsCatalogChildThumb {
  width:56px;
  height:44px;
  border-radius:7px;
  object-fit:cover;
  background:#0c1118;
}
.adsCatalogChildBody {
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}
.adsCatalogChildTitle {
  font-size:12px;
  color:#f0f6ff;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.adsCatalogChildMeta {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  font-size:10px;
  color:#a9bbd8;
}
.adsCatalogShipHint {
  border:1px solid rgba(255,255,255,0.18);
  border-radius:999px;
  padding:1px 6px;
  color:#c9d6ec;
  background:rgba(255,255,255,0.05);
}
.adsCatalogShipHint.isFull {
  border-color:rgba(255,177,111,0.55);
  background:rgba(255,177,111,0.16);
  color:#ffe2bf;
}
.adsCatalogChildActions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
}
.adsCatalogMineTag {
  font-size:10px;
  line-height:1;
  border-radius:999px;
  padding:4px 7px;
  border:1px solid rgba(255,255,255,0.18);
  background:rgba(255,255,255,0.06);
  color:#d4e1f9;
  white-space:nowrap;
}
.adsCatalogMineTag.isDone {
  border-color:rgba(74,222,128,0.45);
  background:rgba(74,222,128,0.15);
  color:#c8f9dc;
}
.adsCatalogMineTag.isError {
  border-color:rgba(248,113,113,0.5);
  background:rgba(248,113,113,0.14);
  color:#ffd1d1;
}
.adsCatalogMineTag.isQueued {
  border-color:rgba(125,211,252,0.5);
  background:rgba(125,211,252,0.15);
  color:#d5f0ff;
}
.adsCatalogMineTag.isSkip {
  border-color:rgba(156,163,175,0.35);
  background:rgba(156,163,175,0.12);
  color:#d0d6df;
}
.adsCatalogChildrenFoot {
  margin-top:8px;
  font-size:10px;
  color:#97a9c7;
}
.adsHistoryTableWrap {
  width:100%;
  overflow:auto;
}
.adsHistoryTable {
  width:100%;
  border-collapse:collapse;
  min-width:760px;
  font-size:11px;
}
.adsHistoryTable th,
.adsHistoryTable td {
  padding:6px 8px;
  border-bottom:1px solid rgba(255,255,255,0.08);
  text-align:left;
  vertical-align:top;
}
.adsHistoryTable th {
  color:#c9dbff;
  font-weight:700;
}
.adsChartWrap { display:flex; flex-direction:column; gap:7px; }
.adsChartMeta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  font-size:12px;
  color:var(--muted);
}
.adsChartLegend { color:var(--ink); font-weight:600; }
.adsChartSelection { color:#bcd5ff; }
.adsChartSurfaceWrap {
  display:grid;
  grid-template-columns: 16px 34px minmax(0, 1fr);
  gap:8px;
  align-items:stretch;
}
.adsChartYAxisLabel {
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:10px;
  color:#bcd5ff;
  letter-spacing:0.02em;
  text-transform:uppercase;
}
.adsChartYTicks {
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:flex-end;
  font-size:10px;
  color:#9db2d5;
  padding:2px 0;
}
.adsChartSurface { position:relative; }
.adsLineChart {
  width:100%;
  height:120px;
  display:block;
  background:rgba(255,255,255,0.02);
  border-radius:8px;
  cursor:crosshair;
}
.adsChartGrid { stroke:rgba(255,255,255,0.12); stroke-width:1; }
.adsChartRef20 { stroke:rgba(255,198,109,0.9); stroke-width:1.2; stroke-dasharray:5 4; }
.adsChartCursor { stroke:rgba(255,255,255,0.55); stroke-width:1; stroke-dasharray:4 3; }
.adsChartBrush { fill:rgba(120,190,255,0.16); }
.adsChartTooltip {
  position:absolute;
  left:8px;
  top:8px;
  pointer-events:none;
  font-size:11px;
  padding:4px 8px;
  border-radius:7px;
  border:1px solid rgba(255,255,255,0.18);
  background:rgba(7,10,14,0.88);
  color:#e7f1ff;
  white-space:nowrap;
}
.adsChartAxisX { font-size:11px; color:var(--muted); }
.adsRowFocus {
  outline:2px solid rgba(126,200,255,0.75);
  box-shadow:0 0 0 2px rgba(126,200,255,0.2) inset;
}
.dataTable {
  display:flex;
  flex-direction:column;
  gap:6px;
}
.dataRow {
  display:grid;
  grid-template-columns: 1fr 2fr;
  gap:12px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,0.04);
  color:#d8e2f3;
  font-size:13px;
}
.dataRow.dataHeader {
  background:transparent;
  color:var(--muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:0.08em;
}
.imgGenTab {
  display:flex;
  flex-direction:column;
  gap:10px;
}
.imgGenGrid {
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap:10px;
}
.imgGenBlock {
  display:flex;
  flex-direction:column;
  gap:6px;
}
.imgGenLabelRow {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.imgGenLabel {
  font-size:12px;
  color:var(--muted);
}
.imgGenRefineBtn {
  width:24px;
  height:24px;
  border-radius:999px;
  border:1px solid rgba(126,200,255,0.45);
  background:rgba(126,200,255,0.12);
  color:#b9dcff;
  font-size:13px;
  line-height:1;
  padding:0;
  cursor:pointer;
}
.imgGenRefineBtn:hover {
  border-color:rgba(126,200,255,0.65);
  background:rgba(126,200,255,0.2);
}
.imgGenRefineBtn.loading {
  position:relative;
  color:transparent;
  pointer-events:none;
}
.imgGenRefineBtn.loading::after {
  content:"";
  position:absolute;
  inset:0;
  margin:auto;
  width:12px;
  height:12px;
  border-radius:50%;
  border:2px solid rgba(126,200,255,0.25);
  border-top-color:rgba(126,200,255,0.85);
  animation:spin 0.8s linear infinite;
}
.imgGenTextarea {
  min-height:120px;
  resize:vertical;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.1);
  background:rgba(10,14,18,0.4);
  color:var(--ink);
  padding:10px 12px;
  font-size:12px;
  line-height:1.4;
}
.imgGenTextarea:focus {
  outline:none;
  border-color:rgba(126,200,255,0.55);
  box-shadow:0 0 0 1px rgba(126,200,255,0.2);
}
.imgGenRow {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}
.imgGenRowLeft {
  display:flex;
  align-items:flex-end;
  gap:8px;
  flex-wrap:wrap;
  min-width:0;
}
.imgGenRowRight {
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:auto;
}
.imgGenModel {
  min-width:220px;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.imgGenSelect {
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.1);
  background:rgba(10,14,18,0.4);
  color:var(--ink);
  padding:9px 11px;
  font-size:12px;
}
.imgGenSelect option {
  background:#0f1723;
  color:#e8eefb;
}
.imgGenActions {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.imgGenRunBtn.loading {
  position:relative;
  color:transparent !important;
  pointer-events:none;
}
.imgGenRunBtn.loading::after {
  content:"";
  position:absolute;
  inset:0;
  margin:auto;
  width:14px;
  height:14px;
  border-radius:50%;
  border:2px solid rgba(26,26,26,0.25);
  border-top-color:rgba(26,26,26,0.9);
  animation:spin 0.8s linear infinite;
}
@media (max-width: 760px) {
  .imgGenRowRight {
    width:100%;
    margin-left:0;
    flex-wrap:wrap;
    justify-content:flex-start;
  }
}
.imgGenCopyPromptBtn {
  min-height:36px;
  white-space:nowrap;
}
.imgGenAutoRunBtn {
  min-height:36px;
  min-width:112px;
  white-space:nowrap;
}
.imgGenAutoRunBtn.loading {
  opacity:0.7;
  pointer-events:none;
}
.imgGenStatus {
  font-size:12px;
  color:var(--muted);
  max-width:260px;
  white-space:nowrap;
  text-overflow:ellipsis;
  overflow:hidden;
}
.imgGenStatus.running {
  color:#f2d06a;
}
.imgGenStatus.error {
  color:#f7b0b0;
}
.imgGenFold {
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.02);
  border-radius:10px;
}
.imgGenFoldSummary {
  cursor:pointer;
  list-style:none;
  padding:10px 12px;
  font-size:12px;
  font-weight:600;
  color:var(--ink);
}
.imgGenFoldSummary::-webkit-details-marker {
  display:none;
}
.imgGenFoldSummary::before {
  content:"▾";
  margin-right:8px;
  color:var(--muted);
}
.imgGenFold:not([open]) .imgGenFoldSummary::before {
  content:"▸";
}
.imgGenFold[open] .imgGenFoldSummary {
  border-bottom:1px solid rgba(255,255,255,0.08);
}
.imgGenErrorCopy {
  width:24px;
  height:24px;
  border-radius:999px;
  border:1px solid rgba(255,112,112,0.7);
  background:rgba(56,10,12,0.72);
  color:#ff7d7d;
  font-size:13px;
  line-height:1;
  padding:0;
  cursor:pointer;
}
.imgGenErrorCopy:hover {
  border-color:rgba(255,138,138,0.9);
  background:rgba(74,14,18,0.86);
  color:#ffabab;
}
.imgGenReference {
  border:0;
  background:transparent;
  border-radius:10px;
  padding:10px;
}
.imgGenReferenceHead {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}
.imgGenRefHint {
  font-size:11px;
  color:var(--muted);
}
.imgGenReferenceList {
  margin-top:8px;
  display:flex;
  flex-direction:column;
  gap:8px;
  max-height:320px;
  overflow:auto;
  padding-right:2px;
}
.imgGenRefCandidate {
  display:grid;
  grid-template-columns: 64px minmax(0, 1fr) auto;
  gap:10px;
  align-items:center;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(8,12,16,0.35);
  border-radius:10px;
  padding:8px;
}
.imgGenRefCandidate.isSelected {
  border-color:rgba(126,200,255,0.55);
  box-shadow:inset 0 0 0 1px rgba(126,200,255,0.2);
  background:rgba(126,200,255,0.1);
}
.imgGenReferenceImg {
  width:64px;
  height:64px;
  border-radius:9px;
  object-fit:cover;
  background:#0c1118;
}
.imgGenRefCandidateBody {
  min-width:0;
}
.imgGenReferenceMeta {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:5px;
  font-size:11px;
}
.imgGenRefToggle {
  border:1px solid rgba(126,200,255,0.35);
  color:#d9e7ff;
  background:rgba(126,200,255,0.09);
  border-radius:8px;
  padding:6px 10px;
  font-size:11px;
  cursor:pointer;
}
.imgGenRefToggle:hover {
  border-color:rgba(126,200,255,0.55);
  background:rgba(126,200,255,0.15);
}
.imgGenRefToggle.isSelected {
  border-color:rgba(126,200,255,0.7);
  background:rgba(126,200,255,0.22);
  color:#d5eaff;
}
.imgGenRefToggle:disabled {
  cursor:not-allowed;
  opacity:0.45;
}
@media (max-width: 720px) {
  .imgGenRefCandidate {
    grid-template-columns: 56px minmax(0, 1fr);
    grid-template-areas:
      "img body"
      "action action";
  }
  .imgGenRefCandidate .imgGenReferenceImg {
    grid-area: img;
    width:56px;
    height:56px;
  }
  .imgGenRefCandidateBody {
    grid-area: body;
  }
  .imgGenRefToggle {
    grid-area: action;
    width:100%;
  }
}
.imgGenAttachmentsWrap {
  display:flex;
  flex-direction:column;
  gap:8px;
}
.imgGenAttachments {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:stretch;
}
.imgGenAttachment {
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  border-radius:10px;
  padding:8px 10px;
  min-width:0;
  min-height:52px;
  max-width:340px;
}
.imgGenAttachmentThumb {
  width:36px;
  height:36px;
  border-radius:7px;
  object-fit:cover;
  background:#0c1118;
}
.imgGenAttachmentName {
  max-width:220px;
  min-width:0;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  font-size:12px;
  color:var(--ink);
  flex:1 1 auto;
}
.imgGenAttachmentAction {
  width:24px;
  height:24px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.25);
  background:rgba(14,18,24,0.65);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  line-height:1;
  padding:0;
  font-size:12px;
}
.imgGenAttachmentAction:disabled {
  opacity:0.38;
  cursor:not-allowed;
}
.imgGenAttachment.isClickable {
  cursor:zoom-in;
}
.imgGenAttachment.isClickable:hover {
  border-color:rgba(126,200,255,0.45);
  background:rgba(126,200,255,0.08);
}
.imgGenAttachment.isSelected {
  border-color:rgba(126,200,255,0.58);
  background:rgba(126,200,255,0.12);
}
.imgGenAttachmentPick {
  color:#8dceff;
  border-color:rgba(141,206,255,0.58);
}
.imgGenAttachmentPick:hover {
  border-color:rgba(170,220,255,0.84);
  background:rgba(18,39,57,0.88);
}
.imgGenAttachmentPick.isSelected {
  color:#d5eaff;
  border-color:rgba(126,200,255,0.74);
  background:rgba(16,46,68,0.88);
}
.imgGenAttachmentDel {
  color:#ff8f8f;
  border-color:rgba(255,124,124,0.62);
}
.imgGenAttachmentDel:hover {
  border-color:rgba(255,146,146,0.85);
  background:rgba(61,17,19,0.88);
}
.imgGenAttachmentGhost {
  border:1px dashed rgba(126,200,255,0.42);
  border-radius:10px;
  background:rgba(126,200,255,0.08);
  min-height:52px;
  padding:8px 12px;
  min-width:128px;
  color:#d8e8ff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  cursor:pointer;
}
.imgGenAttachmentGhost:hover {
  border-color:rgba(154,216,255,0.65);
  background:rgba(126,200,255,0.14);
}
.imgGenAttachmentGhostPlus {
  font-size:16px;
  line-height:1;
  font-weight:700;
}
.imgGenAttachmentGhostText {
  font-size:10px;
  font-weight:600;
}
.imgGenAttachmentHint {
  font-size:12px;
  color:var(--muted);
  flex:1 0 100%;
  padding:0 2px;
}
.imgGenOutputGallery {
  display:flex;
  align-items:stretch;
  gap:8px;
  overflow-x:auto;
  padding:2px 2px 4px;
}
.imgGenOutMiniCard {
  flex:0 0 138px;
  min-width:138px;
  max-width:240px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  border-radius:10px;
  padding:6px;
  display:flex;
  flex-direction:column;
  gap:6px;
  transition:border-color .18s ease, background .18s ease;
  position:relative;
  cursor:default;
}
.imgGenOutMiniCard:hover {
  border-color:rgba(126,200,255,0.45);
  background:rgba(126,200,255,0.06);
}
.imgGenOutMiniCard.isActive {
  border-color:rgba(126,200,255,0.62);
  background:rgba(126,200,255,0.1);
}
.imgGenOutMiniCard.isSelected {
  border-color:rgba(126,200,255,0.62);
  box-shadow:inset 0 0 0 1px rgba(126,200,255,0.2);
  background:rgba(126,200,255,0.11);
}
.imgGenOutMiniThumb {
  width:100%;
  aspect-ratio:1 / 1;
  object-fit:contain;
  border-radius:8px;
  background:#fff;
  border:1px solid rgba(255,255,255,0.08);
  cursor:zoom-in;
}
.imgGenOutMiniOverlay {
  position:absolute;
  top:8px;
  right:8px;
  z-index:2;
  display:flex;
  gap:5px;
}
.imgGenOutMiniMeta {
  min-width:0;
}
.imgGenOutMiniName {
  font-size:11px;
  color:var(--ink);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.imgGenOutMiniSub {
  margin-top:2px;
  font-size:10px;
  color:var(--muted);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.imgGenOutOverlayBtn {
  width:24px;
  height:24px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  padding:0;
  backdrop-filter: blur(2px);
}
.imgGenOutOverlayBtn span {
  pointer-events:none;
  font-weight:700;
}
.imgGenOutDelete {
  border:1px solid rgba(255,255,255,0.35);
  background:rgba(14,18,24,0.62);
  color:#f4f8ff;
  font-size:16px;
  cursor:pointer;
}
.imgGenOutDelete {
  border-color:rgba(255,92,92,0.7);
  background:rgba(42,8,10,0.7);
  color:#ff5c5c;
}
.imgGenOutDownload {
  border:1px solid rgba(122,196,255,0.65);
  background:rgba(8,28,46,0.68);
  color:#7ac4ff;
  font-size:13px;
  text-decoration:none;
}
.imgGenOutDownload:hover {
  border-color:rgba(146,210,255,0.85);
  background:rgba(12,38,62,0.82);
  color:#b7ddff;
}
.imgGenOutPick {
  border:1px solid rgba(126,200,255,0.6);
  background:rgba(8,34,54,0.74);
  color:#9fd2ff;
  font-size:12px;
}
.imgGenOutPick.isSelected {
  border-color:rgba(126,200,255,0.82);
  background:rgba(16,52,76,0.9);
  color:#d6ecff;
}
.imgGenOutDelete:hover {
  border-color:rgba(255,112,112,0.9);
  background:rgba(58,12,16,0.84);
  color:#ff8f8f;
}
.imgGenAutoBox {
  width:min(980px, 92vw);
}
.imgGenUploadBox {
  width:min(560px, 92vw);
}
.imgGenAutoBody {
  display:flex;
  flex-direction:column;
  gap:10px;
}
.imgGenAutoStepCounter {
  font-size:13px;
  font-weight:700;
  color:var(--ink);
}
.imgGenAutoStepHint {
  font-size:12px;
  color:var(--muted);
  line-height:1.4;
}
.imgGenAutoText {
  min-height:120px;
}
.imgGenAutoImageWrap {
  display:flex;
  flex-direction:column;
  gap:8px;
}
.imgGenAutoImageGroup {
  display:flex;
  flex-direction:column;
  gap:8px;
}
.imgGenAutoImageGroupLabel {
  font-size:11px;
  font-weight:600;
  color:var(--muted);
}
.imgGenAutoImageGroupGrid {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(140px,1fr));
  gap:10px;
}
.imgGenAutoImageList {
  display:flex;
  flex-direction:column;
  gap:10px;
  max-height:300px;
  overflow:auto;
  padding-right:2px;
}
.imgGenAutoImageCard {
  border:1px solid rgba(255,255,255,0.1);
  border-radius:10px;
  background:rgba(255,255,255,0.03);
  padding:7px;
  display:flex;
  flex-direction:column;
  gap:6px;
  min-height:104px;
  cursor:pointer;
}
.imgGenAutoImageCard:hover {
  border-color:rgba(126,200,255,0.48);
  background:rgba(126,200,255,0.08);
}
.imgGenAutoImageCard.isSelected {
  border-color:rgba(126,200,255,0.7);
  box-shadow:inset 0 0 0 1px rgba(126,200,255,0.22);
  background:rgba(126,200,255,0.14);
}
.imgGenAutoImageThumb {
  width:100%;
  aspect-ratio:1 / 1;
  object-fit:cover;
  border-radius:8px;
  background:#0c1118;
}
.imgGenAutoImageName {
  font-size:11px;
  color:var(--ink);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.imgGenAutoImageMeta {
  font-size:10px;
  color:var(--muted);
}
@media (max-width: 720px) {
  .imgGenOutMiniCard {
    flex-basis:130px;
    min-width:130px;
  }
}
.adsTitleWrap {
  display:flex;
  align-items:center;
  gap:8px;
}
.adsMeta { display:flex; flex-wrap:wrap; gap:6px; align-items:center; font-size:11px; color:#d6e2ff; margin-top:4px; }
.adsTagsText { color:#9fb3d8; }
.adsTag {
  font-size:10px;
  padding:2px 6px;
  border-radius:999px;
  border:1px solid rgba(86,142,255,0.5);
  color:#cfe0ff;
  background:rgba(86,142,255,0.08);
  white-space:nowrap;
}
.adsTag.catalogo {
  border-color:rgba(240,190,70,0.6);
  color:#f2d06a;
  background:rgba(240,190,70,0.08);
}
.adsEmpty {
  font-size:12px;
  color:var(--muted);
  padding:12px 8px;
}
.adsRowGhost {
  border:1px dashed rgba(126,200,255,0.38);
  background:linear-gradient(180deg, rgba(15,21,29,0.72), rgba(10,15,22,0.86));
}
.adsGhostBody {
  display:flex;
  flex-direction:column;
  gap:8px;
}
.adsGhostTitle {
  font-size:12px;
  font-weight:700;
  color:#d9eaff;
}
.adsGhostHint {
  font-size:11px;
  color:#9eb5da;
}
.adsGhostActions {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.adsGhostInput {
  flex:1 1 280px;
  min-width:220px;
  height:32px;
  border-radius:9px;
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(6,10,16,0.75);
  color:var(--ink);
  font-size:12px;
  padding:0 10px;
}
.adsGhostInput:focus {
  outline:none;
  border-color:rgba(126,200,255,0.62);
  box-shadow:0 0 0 1px rgba(126,200,255,0.26);
}
.adsGhostAddBtn {
  min-width:132px;
}
@media (max-width: 980px) {
  .adsTabFiltersTools {
    flex-direction:column;
    align-items:stretch;
  }
  .adsAdvancedFilters {
    grid-template-columns: 1fr;
  }
  .adsTabToolsActions {
    margin-left:0;
    width:100%;
    flex-direction:column;
    align-items:stretch;
  }
  .adsTabSortWrap {
    width:100%;
    justify-content:space-between;
  }
  .adsTabSortSelect {
    width:100%;
    min-width:0;
  }
  .adsFilterInvertBtn {
    width:100%;
  }
  .adsRefreshBtn {
    width:100%;
  }
  .adsAddBtn,
  .adsGhostAddBtn {
    width:100%;
  }
  .adsGhostInput {
    width:100%;
    min-width:0;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabFiltersWrap {
    gap:10px;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsLauncher {
    display:inline-flex;
    width:100%;
    justify-content:center;
    min-height:38px;
    border-radius:12px;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsSheet {
    position:fixed;
    inset:0;
    z-index:1002;
    display:block;
    pointer-events:none;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsSheet.isOpen {
    pointer-events:auto;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsBackdrop {
    position:absolute;
    inset:0;
    display:block;
    background:rgba(4,8,12,0.52);
    backdrop-filter:blur(4px);
    opacity:0;
    transition:opacity .18s ease;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsSheet.isOpen .adsTabControlsBackdrop {
    opacity:1;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsCard {
    position:absolute;
    left:12px;
    right:12px;
    bottom:12px;
    display:flex;
    flex-direction:column;
    gap:10px;
    max-height:min(72svh, 560px);
    padding:12px;
    border-radius:18px;
    border:1px solid rgba(255,255,255,0.08);
    background:linear-gradient(180deg, rgba(20,27,36,0.98), rgba(12,17,24,0.98));
    box-shadow:0 18px 40px rgba(0,0,0,0.35);
    transform:translateY(18px);
    opacity:0;
    transition:transform .18s ease, opacity .18s ease;
    overflow:auto;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsSheet.isOpen .adsTabControlsCard {
    transform:translateY(0);
    opacity:1;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsHeader {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsTitle {
    font-size:13px;
    font-weight:800;
    color:var(--ink);
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsClose {
    width:30px;
    height:30px;
    border-radius:999px;
    border:0;
    background:rgba(255,255,255,0.08);
    color:var(--ink);
    font-size:18px;
    line-height:1;
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsCard .adsTabFiltersTools,
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsCard .adsAdvancedFilters {
    display:grid;
    grid-template-columns:1fr;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsCard .adsTabToolsActions,
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsCard .adsTabSortWrap {
    width:100%;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabControlsCard .adsTabFiltersLine {
    gap:8px;
  }
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabFiltersWrap > .adsTabFiltersTools,
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabFiltersWrap > .adsTabFiltersLine,
  body[data-mobile-ui="1"][data-view="workspace"] .adsTabFiltersWrap > .adsAdvancedFilters {
    display:none;
  }
  .adsLiteHead {
    grid-template-columns: 70px minmax(0, 1fr);
    grid-template-areas:
      "img title"
      "img actions";
  }
  .adsLiteHead .adsThumbWrap { grid-area: img; width:70px; height:100px; min-height:100px; max-height:100px; }
  .adsLiteHead .adsThumb { min-height:0; }
  .adsLiteTitleWrap { grid-area: title; }
  .adsTitleLine {
    align-items:flex-start;
    flex-wrap:wrap;
    row-gap:4px;
  }
  .adsLiteTitle {
    flex-basis:100%;
    order:2;
    white-space:normal;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    line-height:1.25;
    max-height:calc(1.25em * 2);
  }
  .adsTitleQuickActions {
    margin-left:auto;
    gap:4px;
  }
  .adsTitleQuickBtn {
    width:20px;
    height:20px;
  }
  .adsLiteActions {
    grid-area: actions;
    min-width:0;
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto;
    grid-template-areas:
      "kit remove"
      "track show";
    align-items:center;
    gap:8px 10px;
  }
  .adsTopRightActions {
    grid-area:remove;
    justify-content:flex-end;
    align-self:flex-start;
  }
  .adsSideControls {
    display:contents;
  }
  .adsKitInline {
    grid-area:kit;
  }
  .adsTrackInline {
    grid-area:track;
    gap:6px;
    justify-self:start;
  }
  .adsTrackKind {
    min-width:96px;
    width:96px;
    flex:0 0 96px;
  }
  .adsExpandInlineWrap {
    grid-area:show;
    padding-top:0;
    margin-top:0;
    justify-self:end;
  }
  .adsDetailGrid { grid-template-columns: 1fr; }
  .adsCatalogChildrenHead {
    flex-direction:column;
    align-items:flex-start;
  }
  .adsCatalogChildrenHint {
    text-align:left;
  }
  .adsCatalogChildRow {
    grid-template-columns: 32px 52px minmax(0, 1fr);
    grid-template-areas:
      "rank thumb body"
      "actions actions actions";
  }
  .adsCatalogChildRank {
    grid-area:rank;
  }
  .adsCatalogChildThumb {
    grid-area:thumb;
    width:52px;
    height:40px;
  }
  .adsCatalogChildBody {
    grid-area:body;
  }
  .adsCatalogChildActions {
    grid-area:actions;
    justify-content:flex-start;
    margin-top:2px;
  }
}
.historyContent {
  width:100%;
  min-height:220px;
  max-height:420px;
  overflow:auto;
  font-size:12px;
  color:var(--ink);
  background:#0c1118;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;
  padding:12px;
  resize:vertical;
  line-height:1.4;
  box-sizing:border-box;
}
.historyContent:focus {
  outline:none;
  border-color:rgba(127,178,255,0.55);
  box-shadow:0 0 0 1px rgba(127,178,255,0.25);
}
.historyContent::-webkit-scrollbar { width:6px; }
.historyContent::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.12); border-radius:6px; }

.historyModal {
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:1000;
}
.historyModal.hidden { display:none; }
.batchModal.hidden { display:none; }

.batchModal {
  position:fixed;
  inset:0;
  z-index:120;
  display:flex;
  align-items:center;
  justify-content:center;
}
.calcModal {
  z-index:1100;
}
.batchBackdrop {
  position:absolute;
  inset:0;
  background:rgba(4,8,16,0.72);
  backdrop-filter: blur(6px);
}
.batchBox {
  position:relative;
  width:min(520px, 92vw);
  background:linear-gradient(160deg, rgba(28,36,55,0.98), rgba(16,20,32,0.98));
  border:1px solid rgba(255,255,255,0.08);
  border-radius:18px;
  padding:18px 18px 16px;
  box-shadow:0 20px 60px rgba(0,0,0,0.45);
  z-index:2;
}
.calcModal .batchBox {
  width:min(1360px, 98vw);
  max-height:88vh;
  display:flex;
  flex-direction:column;
}
.batchHeader {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:10px;
}
.batchMini {
  padding:6px 10px;
  font-size:12px;
  border-radius:999px;
}
.batchTitle {
  font-size:15px;
  font-weight:800;
  color:var(--ink);
}
.batchClose {
  width:30px;
  height:30px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.06);
  color:var(--muted);
  cursor:pointer;
}
.batchClose:hover { color:var(--ink); border-color:rgba(255,255,255,0.24); }
.batchMini.hidden { display:none; }
.batchBody { display:flex; flex-direction:column; gap:10px; }
.batchHint { font-size:12px; color:var(--muted); }
.batchHint { font-size:11px; color:var(--muted); opacity:0.8; }
.batchRow {
  display:flex;
  align-items:center;
  gap:10px;
}
.batchLabel {
  font-size:11px;
  color:var(--muted);
  text-transform:none;
  letter-spacing:0.02em;
  font-weight:600;
}
.batchInput {
  flex:0 0 160px;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(255,255,255,0.05);
  color:#e7eefb;
}
.batchInput option {
  background:#0f1723;
  color:#e8eefb;
}
.batchInputWide {
  flex:1 1 auto;
  min-width:0;
}
.itemsBulkBar {
  position:fixed;
  left:calc(50% + 88px);
  bottom:16px;
  transform:translateX(-50%);
  width:min(1220px, calc(100vw - 24px));
  border:1px solid rgba(246,190,50,0.28);
  border-radius:14px;
  background:rgba(9,13,20,0.92);
  backdrop-filter:blur(10px);
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  z-index:90;
  box-shadow:0 12px 30px rgba(0,0,0,0.34), 0 0 0 1px rgba(246,190,50,0.14), 0 0 24px rgba(246,190,50,0.22);
}
.itemsExportBox {
  width:min(780px, 94vw);
}
.itemsOppBox {
  width:min(720px, 94vw);
}
.itemsOppBoxAssist {
  width:min(1100px, 96vw);
}
.itemsOppGrid {
  display:grid;
  grid-template-columns:minmax(150px, 220px) minmax(250px, 1fr);
  gap:10px 12px;
  align-items:end;
}
.itemsOppGrid .catalogFiscalField {
  gap:6px;
  min-width:0;
}
.itemsOppGrid .catalogFiscalField:last-child {
  grid-column:auto;
}
.itemsOppGrid .itemsOppFieldImposto {
  max-width:220px;
  grid-column:1;
}
.itemsOppGrid .itemsOppFieldCity {
  min-width:0;
  grid-column:2;
}
.itemsOppGrid .batchInput {
  width:100%;
  min-width:0;
  max-width:100%;
}
.itemsOppSwitchesTitle {
  margin-top:4px;
  font-size:11px;
  color:var(--muted);
  font-weight:600;
  letter-spacing:0.02em;
}
.itemsOppSwitches {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  gap:8px;
}
.itemsOppSwitchCard {
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.03);
  border-radius:10px;
  padding:8px 10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  font-size:12px;
  color:#dbe7ff;
}
.itemsOppSwitchCard .switch {
  margin:0;
}
.itemsOppAssistShell {
  margin-top:10px;
  border:1px solid rgba(255,255,255,0.1);
  border-radius:12px;
  background:rgba(255,255,255,0.02);
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:10px;
}
.itemsOppAssistLabel {
  font-size:11px;
  color:var(--muted);
  font-weight:600;
  letter-spacing:0.02em;
  margin-bottom:2px;
}
.itemsOppItemsRail {
  display:flex;
  align-items:stretch;
  flex-wrap:nowrap;
  gap:8px;
  overflow-x:auto;
  overflow-y:hidden;
  padding-right:2px;
  padding-bottom:2px;
}
.itemsOppItemCard {
  flex:0 0 230px;
  border:1px solid rgba(255,255,255,0.1);
  background:rgba(255,255,255,0.02);
  border-radius:10px;
  padding:8px;
  cursor:pointer;
  min-width:0;
  display:flex;
  align-items:stretch;
}
.itemsOppItemHead {
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}
.itemsOppItemThumb {
  width:42px;
  height:42px;
  border-radius:8px;
  object-fit:cover;
  flex:0 0 42px;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.14);
}
.itemsOppItemCard.isActive {
  border-color:rgba(86,142,255,0.7);
  box-shadow:0 0 0 1px rgba(86,142,255,0.32) inset;
  background:rgba(86,142,255,0.12);
}
.itemsOppItemTitle {
  font-size:12px;
  color:#dbe7ff;
  font-weight:600;
  line-height:1.25;
  min-width:0;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.itemsOppAssistAds {
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.itemsOppAssistHead {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.itemsOppCurrentItemTitle {
  font-size:13px;
  color:#dbe7ff;
  font-weight:600;
}
.itemsOppCurrentItemMeta {
  font-size:11px;
  color:var(--muted);
  margin-top:2px;
}
.itemsOppSelectedCount {
  font-size:11px;
  border-radius:999px;
  padding:3px 10px;
  border:1px solid rgba(245,177,27,0.42);
  color:#f5d187;
  background:rgba(245,177,27,0.1);
  white-space:nowrap;
}
.itemsOppAssistFilters {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.itemsOppFilterPills {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.itemsOppFilterPill {
  min-height:30px;
  padding:6px 11px;
  font-size:11px;
  border-radius:999px;
}
.itemsOppFilterPill.isActive {
  border-color:rgba(86,142,255,0.65);
  box-shadow:0 0 0 1px rgba(86,142,255,0.24) inset;
  background:rgba(86,142,255,0.14);
  color:#d8e6ff;
}
.itemsOppAdsList {
  min-height:190px;
  max-height:360px;
  overflow:auto;
  padding-right:2px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.itemsOppAdsRow {
  cursor:pointer;
}
.itemsOppAdsRow.isSelected {
  border-color:rgba(86,142,255,0.72);
  box-shadow:0 0 0 1px rgba(86,142,255,0.24) inset;
  background:rgba(86,142,255,0.1);
}
.itemsOppPickWrap {
  display:flex;
  align-items:center;
  gap:6px;
  border:1px solid rgba(255,255,255,0.12);
  border-radius:8px;
  padding:6px 8px;
  font-size:11px;
  color:#dbe7ff;
  white-space:nowrap;
}
.itemsOppPickWrap input {
  margin:0;
  width:16px;
  height:16px;
  accent-color:#4f8dff;
}
.itemsExportGlobalComment {
  min-height:92px;
}
.itemsExportCheck {
  margin-top:2px;
}
.itemsExportRowsHead {
  font-size:11px;
  color:var(--muted);
  font-weight:600;
  letter-spacing:0.02em;
}
.itemsExportRows {
  max-height:320px;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:8px;
  padding-right:2px;
}
.itemsExportRow {
  border:1px solid rgba(255,255,255,0.12);
  border-radius:10px;
  background:rgba(255,255,255,0.03);
  padding:8px 10px;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.itemsExportRowTop {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.itemsExportRowId {
  font-size:11px;
  color:#d9e7ff;
  font-weight:700;
}
.itemsExportRowMeta {
  font-size:10px;
  color:var(--muted);
}
.itemsExportRowTitle {
  font-size:11px;
  color:var(--ink);
  line-height:1.35;
}
.itemsExportRowInput {
  width:100%;
  border-radius:9px;
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(8,12,18,0.56);
  color:#e7eefb;
  padding:7px 9px;
  font-size:12px;
}
.itemsBulkMeta {
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:100px;
}
.itemsBulkMetaLabel {
  font-size:10px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.06em;
}
.itemsBulkMetaValue {
  font-size:16px;
  font-weight:700;
  color:#d6e7ff;
}
.itemsBulkSourceWrap {
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:190px;
}
.itemsBulkSourceLabel {
  font-size:10px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.06em;
}
.itemsBulkSourceSwitchRow {
  display:flex;
  align-items:center;
  gap:8px;
  min-height:36px;
}
.itemsBulkSourceSwitch {
  margin:0;
}
.itemsBulkSourceToggleLabel {
  font-size:12px;
  color:#dce7ff;
  white-space:nowrap;
}
.itemsBulkActions {
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
  white-space:nowrap;
  overflow-x:auto;
  padding-bottom:2px;
}
.itemsBulkActions .primaryAction,
.itemsBulkActions .ghostAction,
.itemsBulkActions .dangerOutline {
  min-height:36px;
  flex:0 0 auto;
}
.itemsBulkActions .dangerOutline {
  margin-left:0;
  padding:8px 12px;
}
@media (max-width: 1200px) {
  .itemsBulkBar {
    left:calc(50% + 52px);
  }
}
@media (max-width: 880px) {
  .itemsBulkBar {
    left:50%;
    flex-wrap:wrap;
    justify-content:flex-start;
    width:calc(100vw - 20px);
    bottom:10px;
    align-items:flex-start;
  }
  .itemsBulkSourceWrap {
    min-width:0;
  }
  .itemsBulkActions {
    margin-left:0;
    width:100%;
    justify-content:flex-start;
    flex-wrap:wrap;
    overflow-x:visible;
    white-space:normal;
  }
  .itemsOppGrid {
    grid-template-columns:1fr;
  }
  .itemsOppGrid .itemsOppFieldImposto,
  .itemsOppGrid .itemsOppFieldCity {
    grid-column:auto;
    max-width:none;
  }
  .itemsOppAdsList,
  .itemsOppItemsRail {
    max-height:240px;
  }
  .itemsOppItemsRail {
    flex-wrap:nowrap;
  }
  .itemsOppItemCard {
    flex:0 0 85%;
  }
  .itemsOppItemThumb {
    width:38px;
    height:38px;
    flex:0 0 38px;
  }
}
.manualImageDrop {
  min-height: 160px;
  border: 1px dashed rgba(255,255,255,0.22);
  border-radius: 12px;
  background: rgba(255,255,255,0.03);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
  cursor: default;
  outline: none;
  transition: border-color 120ms ease, background-color 120ms ease;
}
.manualImageDrop:focus {
  border-color: rgba(127,178,255,0.85);
  background: rgba(127,178,255,0.10);
}
.manualImageDrop.dragOver {
  border-color: rgba(127,178,255,0.92);
  background: rgba(127,178,255,0.14);
}
.manualImageDrop.hasImage {
  border-style: solid;
  border-color: rgba(255,214,102,0.60);
  background: rgba(255,214,102,0.08);
}
.manualImageDropHint {
  font-size: 12px;
  color: var(--muted);
  text-align: center;
  line-height: 1.45;
}
.manualImagePreview {
  width: 100%;
  max-height: 260px;
  object-fit: contain;
  border-radius: 10px;
  display: block;
}
.batchCheck {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  color:var(--muted);
}
.batchActions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  margin-top:12px;
}
.historyBackdrop {
  position:absolute;
  inset:0;
  background:rgba(4,8,12,0.75);
  backdrop-filter: blur(6px);
}
.historyBox {
  position:relative;
  z-index:1;
  width:min(700px, 92vw);
  height:auto;
  max-height:70vh;
  background:linear-gradient(180deg, rgba(20,27,36,0.95), rgba(12,17,24,0.95));
  border-radius:16px;
  padding:14px;
  box-shadow:0 20px 60px rgba(0,0,0,0.5);
  display:flex;
  flex-direction:column;
  box-sizing:border-box;
}
.historyTitle { font-size:14px; color:var(--ink); margin-bottom:8px; }
#historyInput {
  width:100%;
  flex:1;
  background:#0c1118;
  color:var(--ink);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;
  padding:12px;
  font-size:12px;
  resize:none;
  outline:none;
  box-sizing:border-box;
}

.selectModal {
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:1000;
}
.selectModal.hidden { display:none; }
.selectBackdrop {
  position:absolute;
  inset:0;
  background:rgba(4,8,12,0.75);
  backdrop-filter: blur(6px);
}
.selectBox {
  position:relative;
  z-index:1;
  width:min(980px, 94vw);
  height:88vh;
  background:linear-gradient(180deg, rgba(20,27,36,0.95), rgba(12,17,24,0.95));
  border-radius:16px;
  padding:16px 18px;
  box-shadow:0 20px 60px rgba(0,0,0,0.5);
  display:flex;
  flex-direction:column;
  box-sizing:border-box;
  min-height:0;
  overflow:hidden;
}
.selectSheetGrip {
  display:none;
}
.selectSheetGripBar {
  display:block;
  width:42px;
  height:4px;
  border-radius:999px;
  background:rgba(255,255,255,0.32);
}
.selectHeader {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:12px;
  flex:0 0 auto;
}
.selectTopStack {
  display:flex;
  flex-direction:column;
  gap:10px;
  flex:0 0 auto;
  min-width:0;
}
.selectControlsOpen {
  display:none;
}
.selectControlsSheet {
  display:block;
}
.selectControlsBackdrop,
.selectControlsSheetHeader {
  display:none;
}
.selectControlsSheetCard {
  display:contents;
}
.selectStageTrack {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:-2px 0 12px 0;
  padding:0 12px;
}
.selectStageTrack .trackDot {
  width:14px;
  height:14px;
  border-radius:50%;
  background:rgba(255,255,255,0.12);
  box-shadow:0 0 0 3px rgba(0,0,0,0.10) inset;
}
.selectStageTrack .trackDot.active { background:#7fb2ff; }
.selectStageTrack .trackDot.done { background:#4ade80; }
.selectStageTrack .trackLine {
  width:120px;
  height:2px;
  border-radius:999px;
  background:rgba(255,255,255,0.10);
}
.selectStageTrack .trackLine.done { background:rgba(74,222,128,0.65); }
.selectStageTrack .trackLine.active { background:rgba(127,178,255,0.65); }
.selectStageTrack .trackLine { width: min(120px, 14vw); }
.selectTitle { font-size:14px; color:var(--ink); font-weight:600; }
.selectSubtitle { font-size:11px; color:var(--muted); margin-top:4px; }
.selectClose {
  width:30px;
  height:30px;
  border-radius:10px;
  border:0;
  background:rgba(255,255,255,0.06);
  color:var(--ink);
  cursor:pointer;
  font-size:18px;
}
.selectHero {
  display:grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap:14px;
  align-items:start;
  padding:10px 12px;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(18,24,32,0.75), rgba(12,17,24,0.9));
  margin-bottom:10px;
  position:sticky;
  top:0;
  z-index:2;
}
.selectHeroImgCol {
  align-self:stretch;
}
.selectHeroInfo {
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
}
.selectStageLabel {
  font-size:12px;
  font-weight:600;
  color:var(--muted);
  margin-top:2px;
}
.selectHero img {
  width:120px;
  height:88px;
  min-height:88px;
  border-radius:12px;
  object-fit:cover;
  cursor:zoom-in;
}
.selectHeroTitleRow {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.selectCalcToggle {
  margin-left:auto;
  width:34px;
  height:34px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.06);
  color:var(--ink);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
}
.selectCalcToggle:hover { background:rgba(255,255,255,0.12); }
.calcClassicIcon {
  width:16px;
  height:16px;
  display:block;
  background-image:url('/static/calc_classic.svg');
  background-repeat:no-repeat;
  background-position:center;
  background-size:16px 16px;
}
.selectCalcGridModal { gap:16px; }
.calcGrid2 {
  display:flex;
  flex-direction:column;
  gap:14px;
  max-width:1280px;
  margin:0 auto;
  align-items:stretch;
}
.calcFullRow {
  grid-column: 1 / -1;
}
.calcModal .selectCalcInput {
  height:36px;
  font-size:14px;
  width:100%;
  max-width:none;
  min-width:0;
}
.calcModal .calcMini {
  padding:6px 10px;
  font-size:12px;
  height:32px;
}
.calcAdLine {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:8px;
  padding:0 4px;
}
.calcAdLine .selectCalcLabel {
  align-self:flex-start;
}
.calcAdLine > :last-child {
  margin-left:0 !important;
}
.calcAdRow {
  display:grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  align-items:center;
  column-gap:10px;
  row-gap:8px;
  width:100%;
  padding:8px;
  margin-top:6px;
  border-radius:12px;
  background:rgba(255,255,255,0.03);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.06);
  box-sizing:border-box;
  max-width:100%;
}
.calcAdThumb {
  width:44px;
  height:44px;
  object-fit:cover;
  border-radius:8px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.08);
  cursor:zoom-in;
}
.calcAdBody {
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
  overflow:hidden;
}
.calcAdLinkRow {
  display:grid;
  grid-template-columns: minmax(0, 1fr) 38px;
  gap:8px;
  align-items:center;
  min-width:0;
}
.calcAdTitle {
  font-size:13px;
  color:var(--ink);
  font-weight:600;
  padding-left:2px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  white-space:normal;
}
.calcAdTitle.calcAdError::before {
  content:"⚠ ";
  color:#f5b1b1;
}
.calcAdInput {
  width:100%;
  max-width:100%;
  font-size:12px;
  min-width:0;
  box-sizing:border-box;
  text-overflow:clip;
  overflow:hidden;
  white-space:nowrap;
}
.calcAdOpenBtn {
  width:38px;
  min-width:38px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.calcAdActions {
  display:flex;
  align-items:flex-end;
  align-self:end;
  gap:8px;
  padding-left:0;
  flex-wrap:nowrap;
}
.calcFetchBtn {
  border:1px solid rgba(255,210,125,0.55) !important;
  color:#ffd27d !important;
  background:rgba(255,210,125,0.08) !important;
  font-weight:700;
  white-space:nowrap;
  min-width:94px;
  padding:0 14px !important;
  height:34px !important;
}
.calcFetchBtn:hover {
  border-color:rgba(255,210,125,0.85) !important;
  background:rgba(255,210,125,0.14) !important;
}
.calcFetchErrorInfo {
  border:1px solid rgba(245,177,177,0.55);
  color:#f7c1c1;
  background:rgba(245,177,177,0.10);
  width:30px;
  min-width:30px;
  height:30px;
  border-radius:10px;
  line-height:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
  cursor:help;
}
.calcFetchErrorInfo:hover {
  border-color:rgba(245,177,177,0.85);
  background:rgba(245,177,177,0.16);
}
.calcFetchErrorInfo.hidden {
  display:none;
}

/* Modern input look for calculator */
.calcModal .selectCalcInput,
.calcTabHost .selectCalcInput {
  border:0;
  background:rgba(255,255,255,0.05);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08);
  border-radius:12px;
  padding:10px 12px;
  width:100%;
  max-width:none;
  min-width:0;
  box-sizing:border-box;
}
.calcModal .selectCalcInput:focus,
.calcTabHost .selectCalcInput:focus {
  box-shadow: inset 0 0 0 1px rgba(120,160,240,0.45), 0 0 0 3px rgba(90,130,220,0.10);
}
.calcModal .selectCalcLabel,
.calcTabHost .selectCalcLabel {
  font-size:11px;
  letter-spacing:0.01em;
}
.calcModal .selectCalcCurrency,
.calcTabHost .selectCalcCurrency {
  font-size:11px;
}
.calcModal .selectCalcRight,
.calcTabHost .selectCalcRight {
  width:100%;
}
.calcModal .selectCalcRight .selectCalcInput,
.calcTabHost .selectCalcRight .selectCalcInput {
  flex:1;
  width:auto;
  max-width:none;
  min-width:0;
}

/* Calculator layout: two rows (inputs + results) with logical columns */
.calcRow {
  display:grid;
  gap:12px;
}
.calcRowInputs {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.calcRowResults {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.calcGroup {
  background:rgba(255,255,255,0.03);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.06);
  border-radius:14px;
  padding:12px 12px 14px;
  min-width:0;
}
.calcGroupTitle {
  font-size:12px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:0.02em;
  margin-bottom:10px;
}
.calcGroupBody {
  display:flex;
  flex-direction:column;
  gap:10px;
}
.calcGroup .selectCalcLine {
  flex-direction:column;
  align-items:stretch;
  gap:6px;
}
.calcGroup .selectCalcLine > :last-child { margin-left:0; }
.calcGroup .selectCalcValue {
  min-width:0;
}
.calcGroup .selectCalcLine.calcEffCostLine {
  flex-direction:row;
  align-items:center;
  gap:8px;
}
.calcGroup .selectCalcLine.calcEffCostLine > :last-child {
  margin-left:auto;
}
.calcGroup .selectCalcLine.calcEffCostLine.calcEffCostBuyLine {
  flex-wrap:wrap;
  align-items:flex-start;
  row-gap:6px;
}
.calcGroup .selectCalcLine.calcEffCostLine.calcEffCostBuyLine .selectCalcLabel {
  flex:1 1 220px;
  min-width:0;
}
.calcGroup .selectCalcLine.calcEffCostLine.calcEffCostBuyLine > :last-child {
  margin-left:0;
}
.calcEffCostBuyValue {
  width:100%;
  text-align:right;
  max-width:100%;
  min-width:0;
  overflow-wrap:anywhere;
}
.calcInlineBody {
  display:grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap:10px;
  align-items:center;
}
.calcInlineBody .selectCalcValue { text-align:right; }

@media (max-width: 1040px) {
  .calcRowInputs,
  .calcRowResults {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  .calcRowInputs,
  .calcRowResults {
    grid-template-columns: 1fr;
  }
  .calcAdRow {
    grid-template-columns: 44px minmax(0, 1fr);
  }
  .calcAdActions {
    grid-column: 1 / -1;
    justify-content:flex-start;
    padding-left:0;
  }
  .calcAdLinkRow {
    grid-template-columns: minmax(0, 1fr) 38px;
  }
  .calcInlineBody {
    grid-template-columns: 1fr;
    align-items:stretch;
  }
  .calcInlineBody .selectCalcValue { text-align:left; }
}
.calcSpinner {
  display:flex;
  flex-direction:column;
  gap:4px;
}
.calcSpinBtn {
  width:22px;
  height:16px;
  border-radius:6px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.04);
  color:rgba(255,255,255,0.8);
  font-size:10px;
  line-height:1;
  cursor:pointer;
}
.calcSpinBtn:hover {
  background:rgba(255,255,255,0.08);
}
.calcModal .selectCalcLabel {
  font-size:12px;
}
.calcModal .batchBody {
  padding:6px 10px 12px;
  max-height:calc(88vh - 72px);
  overflow:auto;
  scrollbar-width:thin;
  scrollbar-color:rgba(130,157,210,0.65) rgba(255,255,255,0.07);
}
.calcModal .batchBody::-webkit-scrollbar {
  width:10px;
  height:10px;
}
.calcModal .batchBody::-webkit-scrollbar-track {
  background:rgba(255,255,255,0.06);
  border-radius:999px;
}
.calcModal .batchBody::-webkit-scrollbar-thumb {
  background:linear-gradient(180deg, rgba(132,162,225,0.78), rgba(95,124,181,0.78));
  border-radius:999px;
  border:2px solid rgba(255,255,255,0.06);
}
.calcModal .batchBody::-webkit-scrollbar-thumb:hover {
  background:linear-gradient(180deg, rgba(151,179,235,0.92), rgba(113,143,200,0.92));
}
.calcModal .selectCalcGrid {
  max-width:1280px;
}
.calcModal .selectCalcColRight { justify-self:stretch; }
.calcRowResults .selectCalcLine {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:6px;
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,0.14);
  border-radius:12px;
  background:transparent;
  overflow:hidden;
}
.calcRowResults .selectCalcLine > :last-child {
  margin-left:0;
}
.calcRowResults .selectCalcLine .selectCalcLabel {
  min-width:0;
  width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
}
.calcRowResults .selectCalcValue {
  width:100%;
  min-width:0;
  max-width:none;
  text-align:left;
  font-size:14px;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.calcRowResults .selectCalcValue.calcValueTriple {
  white-space:pre-line;
  line-height:1.3;
}
.calcRowResults .calcInlineBody {
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:8px;
  align-items:stretch;
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
.calcRowResults .calcInlineField {
  display:flex;
  flex-direction:column;
  gap:4px;
  width:100%;
  min-width:0;
}
.calcRowResults .calcInlineHint {
  font-size:11px;
  color:var(--muted);
}
.calcInlineRow .selectCalcInput.calcInlineInput {
  width:100%;
  min-width:0;
  text-align:right;
}
.calcInlineRow .selectCalcValue {
  min-width:0;
  text-align:left;
}
.calcRowResults .calcInlineRow .selectCalcValue {
  width:auto;
  max-width:100%;
  min-width:0;
  text-align:left;
  white-space:normal;
  overflow-wrap:anywhere;
}
.calcRowResults .calcInlineRow .selectCalcInput.calcInlineInput {
  width:100%;
  min-width:0;
  max-width:none;
}
#selectSellAtResult {
  font-size:13px;
  line-height:1.25;
}
.calcModal .selectCalcResults {
  text-align:left;
}
.calcModal .selectCalcValue {
  font-size:13px;
}
.calcModal .calcRowResults .selectCalcValue {
  font-size:14px;
}
.calcModal .selectCalcResultsGrid {
  /* Keep Results as a single readable column. */
  grid-template-columns: 1fr;
}
.calcProfileBar {
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 10px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.04);
  margin-bottom:10px;
}
.calcProfileLabel {
  font-size:12px;
  font-weight:700;
  color:var(--muted);
  margin-right:4px;
}
.calcProfileSelect {
  flex:1;
  min-width:0;
  height:32px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.06);
  color:var(--ink);
  padding:0 10px;
  font-size:12px;
  outline:none;
}
.calcProfileSelect:focus {
  border-color:rgba(86,142,255,0.55);
  box-shadow:0 0 0 2px rgba(86,142,255,0.18);
}
.calcAuto {
  border:1px dashed rgba(245,177,27,0.92) !important;
  box-shadow:0 0 0 1px rgba(245,177,27,0.35) inset, 0 0 0 1px rgba(245,177,27,0.20);
  background:rgba(245,177,27,0.08) !important;
}
.calcAutoWrap {
  border:1px dashed rgba(245,177,27,0.88) !important;
  box-shadow: inset 0 0 0 1px rgba(245,177,27,0.36), 0 0 0 1px rgba(245,177,27,0.16) !important;
  background:rgba(245,177,27,0.10) !important;
}
.calcAutoWrap .selectCalcCurrency {
  color:#ffd27a;
}
.calcSwitch {
  margin-left:8px;
  transform:scale(0.9);
}
.selectCalcSectionLabel {
  font-size:12px;
  text-transform:none;
  letter-spacing:0.02em;
  color:var(--muted);
  margin-bottom:6px;
}
.selectCalcResults {
  margin-top:14px;
  padding:12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(18,24,32,0.6), rgba(12,17,24,0.8));
  width:100%;
  box-sizing:border-box;
}
.selectCalcResultsTitle {
  font-size:12px;
  font-weight:700;
  color:var(--ink);
  margin-bottom:8px;
}
.selectCalcResultsGrid {
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap:10px 16px;
}
.selectHeroTitle { font-size:18px; line-height:1.15; color:var(--ink); font-weight:700; margin-top:2px; }
.selectSourceBadge {
  font-size:10px;
  padding:2px 8px;
  border-radius:999px;
  background:rgba(90,140,255,0.2);
  color:#bcd5ff;
  text-transform:uppercase;
  letter-spacing:0.06em;
}
.selectHeroFacts {
  display:flex;
  gap:14px;
  margin-top:10px;
  flex-wrap:wrap;
}
.selectHeroFact {
  display:flex;
  align-items:baseline;
  gap:8px;
}
.selectHeroFactLabel {
  font-size:12px;
  color:var(--muted);
  font-weight:600;
}
.selectHeroFactValue {
  font-size:16px;
  font-weight:800;
  color:var(--ink);
}
.selectHeroFactValueWrap {
  display:flex;
  align-items:center;
  gap:8px;
}
.inlinePencil {
  width:26px;
  height:26px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(255,255,255,0.06);
  color:var(--muted);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
}
.inlinePencil:hover { color:var(--ink); border-color:rgba(255,255,255,0.22); }

.selectCalc {
  margin-top:10px;
  padding:0;
  border:0;
  background:transparent;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.selectCalcGrid {
  display:grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap:6px 12px;
  margin-top:6px;
  max-width:560px;
}
.selectCalcCol { min-width:0; }
.selectCalcColRight { justify-self:end; }
.selectCalcRight {
  display:flex;
  align-items:center;
  gap:4px;
  min-width:0;
  max-width:100%;
}
.selectCalcCurrency {
  font-size:10px;
  font-weight:700;
  color:var(--muted);
  line-height:1;
}
.selectCalcMoneyWrap {
  gap:6px;
  border:0;
  background:rgba(255,255,255,0.05);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08);
  border-radius:12px;
  padding:0 10px;
  min-height:40px;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
  overflow:hidden;
}
.selectCalcMoneyWrap .selectCalcCurrency {
  font-size:11px;
  color:rgba(255,255,255,0.72);
}
.selectCalcMoneyWrap .selectCalcInput {
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:10px 0 !important;
  min-width:0;
  max-width:100%;
}
.selectCalcStack {
  display:flex;
  flex-direction:column;
  gap:6px;
  width:fit-content;
}
.selectCalcLine {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  width:100%;
}
.selectCalcLine > :last-child { margin-left:auto; }
.selectCalcRule {
  height:1px;
  width:100%;
  background:rgba(255,255,255,0.12);
  margin:10px 0 2px;
}
.selectCalcLabel {
  font-size:10px;
  color:var(--muted);
  font-weight:600;
  white-space:nowrap;
}
.selectCalcLabel.calcDiscountLabel {
  color:#f59e0b;
}
.selectCalcLabel.calcDiscountLabel .selectCalcSuffix {
  color:#f59e0b;
}
.selectCalcSuffix {
  font-size:10px;
  color:rgba(255,255,255,0.5);
  font-weight:600;
  margin-left:2px;
}
.calcInfo {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:14px;
  height:14px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,0.2);
  color:rgba(255,255,255,0.7);
  font-size:10px;
  margin-left:6px;
  cursor:help;
  position:relative;
}
.calcInfo::after {
  content: attr(data-tip);
  position:absolute;
  left:50%;
  top:-8px;
  transform:translate(-50%, -100%);
  background:rgba(15,20,30,0.98);
  color:rgba(255,255,255,0.9);
  font-size:11px;
  padding:8px 10px;
  border-radius:8px;
  white-space:nowrap;
  opacity:0;
  pointer-events:none;
  transition:opacity 0.15s ease;
  box-shadow:0 10px 24px rgba(0,0,0,0.35);
  z-index:5;
}
.calcInfo::before {
  content:"";
  position:absolute;
  left:50%;
  top:-8px;
  transform:translate(-50%, -2px);
  border:6px solid transparent;
  border-top-color:rgba(15,20,30,0.98);
  opacity:0;
  transition:opacity 0.15s ease;
}
.calcInfo:hover::after,
.calcInfo:hover::before {
  opacity:1;
}
.calcInputError {
  border-color: rgba(255, 90, 90, 0.7) !important;
  box-shadow: 0 0 0 1px rgba(255, 90, 90, 0.35);
}
.selectCalcValue {
  font-size:11px;
  color:var(--ink);
  font-weight:800;
  padding:0;
  white-space:nowrap;
  text-align:right;
  min-width:74px;
}
.selectCalcValue.calcEffCostBuyValue {
  font-size:12px;
  font-weight:600;
  color:rgba(255,255,255,0.9);
}
.selectCalcValue.calcEffCostValue {
  font-size:14px;
  font-weight:500;
  color:#4ade80;
}
.selectCalcValue.strong { color:#dbe7ff; }
.selectCalcValue.calcSignalGood,
.selectCalcValue.strong.calcSignalGood { color:#7fe09a; }
.selectCalcValue.calcSignalWarn,
.selectCalcValue.strong.calcSignalWarn { color:#f2d06a; }
.selectCalcValue.calcSignalBad,
.selectCalcValue.strong.calcSignalBad { color:#f1a59a; }
.selectCalcInput {
  width:auto;
  width:74px;
  max-width:74px;
  min-width:74px;
  padding:1px 3px;
  border-radius:8px;
  border:0;
  background:transparent;
  color:var(--ink);
  outline:none;
  font-size:11px;
  text-align:right;
  line-height:1.15;
}

@media (max-width: 860px) {
  .selectHero {
    grid-template-columns: 96px minmax(0, 1fr);
  }
  .selectHero img {
    width:96px;
    min-height:96px;
  }
  .selectCalcGrid {
    grid-template-columns: 1fr;
  }
  .selectCalcColRight { justify-self:start; }
}
.selectCalcInput:focus { box-shadow:none; }
.selectCalcInput:disabled { opacity:0.55; }

.calcTabHost {
  padding:10px 6px;
}
.calcTabHeader {
  display:flex;
  flex-direction:column;
  gap:4px;
  margin:6px 0 10px;
}
.calcTabTitle {
  font-size:14px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:0.02em;
}
.calcTabMeta {
  font-size:12px;
  color:var(--muted);
}
.calcCardsList {
  display:flex;
  flex-direction:column;
  gap:10px;
}
.calcCardsActions {
  display:flex;
  justify-content:flex-start;
  margin:0 0 10px;
}
.calcGenerateBtn {
  border:1px solid rgba(245,177,27,0.45);
  background:rgba(245,177,27,0.12);
  color:#f5d892;
  font-size:12px;
  font-weight:700;
  letter-spacing:0.01em;
  border-radius:10px;
  padding:7px 12px;
  cursor:pointer;
  box-shadow:0 6px 14px rgba(245,177,27,0.12);
}
.calcGenerateBtn:hover {
  background:rgba(245,177,27,0.18);
  border-color:rgba(245,177,27,0.6);
  color:#ffe6ad;
}
.calcGenerateBtn:disabled {
  opacity:0.6;
  cursor:not-allowed;
  box-shadow:none;
}
.calcCard {
  border:1px solid rgba(255,255,255,0.08);
  border-radius:12px;
  background:linear-gradient(180deg, rgba(18,24,32,0.75), rgba(12,17,24,0.9));
  box-shadow:0 8px 20px rgba(0,0,0,0.22);
  padding:10px 12px;
  color:var(--ink);
}
.calcCardHead {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.calcCardHeadMain {
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:10px;
  min-width:0;
  flex:1;
  overflow:hidden;
}
.calcCardTitle {
  font-size:15px;
  font-weight:800;
  color:#e7eefb;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.calcCardMeta {
  margin-top:0;
  font-size:11px;
  color:var(--muted);
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.calcCardMetaInline {
  display:block;
  gap:0;
  flex:1;
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.calcCardActions {
  display:flex;
  align-items:center;
  gap:8px;
}
.calcCardMiniBtn {
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.04);
  color:var(--ink);
  font-size:12px;
  padding:6px 10px;
  border-radius:10px;
  cursor:pointer;
}
.calcCardMiniBtn:hover { background:rgba(255,255,255,0.08); }
.calcCardDelete {
  width:26px;
  height:26px;
  border-radius:10px;
  border:1px solid rgba(255,120,120,0.25);
  background:rgba(255,120,120,0.08);
  color:#f2b4b4;
  cursor:pointer;
  font-size:16px;
  line-height:1;
}
.calcCardDelete:hover {
  background:rgba(255,120,120,0.14);
  color:#ff9a9a;
}
.calcCardBody {
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid rgba(255,255,255,0.06);
}
.calcCardGhost {
  border:1px dashed rgba(255,255,255,0.14);
  background:linear-gradient(180deg, rgba(18,24,32,0.55), rgba(12,17,24,0.8));
  color:var(--muted);
}
.calcCardGhost .calcCardTitle { color:var(--ink); }
.calcCardGhost:hover {
  border-color:rgba(255,255,255,0.22);
  color:var(--ink);
}
.calcCardGhostAdd {
  min-height:88px;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.calcGhostPlus {
  font-size:32px;
  line-height:1;
  font-weight:300;
  color:var(--muted);
}
.calcCardGhostAdd:hover .calcGhostPlus {
  color:var(--ink);
}
.calcCardHidden { display:none; }
.calcCardsList.isExpanded .calcCard:not(.isExpanded) { display:none; }

.calcTabHost .selectCalc {
  margin-top:0;
}
.calcTabHost .selectCalcGrid {
  max-width:none;
}
.calcTabHost .selectCalcResultsGrid {
  grid-template-columns: 1fr;
}
.calcTabHost .calcProfileBar { display:none; }

/* remove spinners on number-like inputs (we use text inputs anyway) */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
input[type="number"] { -moz-appearance: textfield; appearance: textfield; }
.selectCountsFooter {
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--muted);
  font-size:12px;
}
.selectCountsIcon {
  width:22px;
  height:22px;
  border-radius:8px;
  background:rgba(86,142,255,0.18);
  border:1px solid rgba(86,142,255,0.28);
  color:#dbe7ff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
}
.selectCountsText { color:var(--ink); font-weight:800; }
.selectCountsHint { color:var(--muted); font-weight:600; }
.selectLocInfo {
  font-size:11px;
  color:var(--muted);
  margin-top:10px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:100%;
  align-self:flex-start;
  text-align:left;
}
.selectQueryRow {
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:12px;
}
.selectFiltersBar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:-2px 0 12px;
  flex-wrap:wrap;
}
.selectFilterPills {
  flex:1;
}
.selectFiltersActions {
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
.selectFilterBulkBtn {
  white-space:nowrap;
}
.selectFilterInvertWrap {
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
  white-space:nowrap;
  min-height:22px;
}
.selectFilterInvertWrap .slider {
  flex:0 0 auto;
}
.selectFilterInvertLabel {
  font-size:12px;
  color:var(--muted);
  font-weight:600;
}
.selectFiltersBar.isInverted .itemsOppFilterPill.isActive {
  border-color: rgba(248, 113, 113, 0.45);
  background: rgba(127, 29, 29, 0.28);
  color: #fecaca;
}
.selectFiltersBar.isInverted .selectFilterInvertLabel {
  color: #fecaca;
}
.selectFiltersBar.isInverted .slider {
  background: rgba(248, 113, 113, 0.4);
}
.selectFiltersBar.isInverted input:checked + .slider {
  background: #ef4444;
}
.selectQueryInput {
  flex:1;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.15);
  background:rgba(255,255,255,0.06);
  color:#e7eefb;
}
.selectInfo {
  font-size:12px;
  color:var(--muted);
  margin-top:-2px;
}
.selectGrid {
  flex:1;
  min-height:0;
  overflow:auto;
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  /* Let rows size to content to avoid overlap across browsers. */
  grid-auto-rows: auto;
  gap:10px;
  padding:6px 12px 16px 6px;
  align-content:start;
}
.selectGrid.hidden { display:none; }
.selectGrid::-webkit-scrollbar { width:6px; }
.selectGrid::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.12); border-radius:6px; }
.selectAdsList {
  flex:1;
  min-height:0;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:6px 12px 16px 6px;
}
.selectAdsList::-webkit-scrollbar { width:6px; }
.selectAdsList::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.12); border-radius:6px; }
.selectAdsList::-webkit-scrollbar-track { background:transparent; }
.selectAdsList.hidden { display:none; }
.selectAdsFilterStage {
  flex:1;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  min-height:0;
}
.selectAdsFilterStage.hidden { display:none; }
.selectAdsFilterRow {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:8px;
  margin:6px 12px 6px 6px;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.04);
}
.selectAdsFilterLabel {
  font-size:11px;
  font-weight:700;
  letter-spacing:0.02em;
  color:var(--muted);
  min-width:0;
}
.selectAdsFilterLine {
  display:flex;
  align-items:center;
  gap:8px;
}
.selectAdsFilterSelect {
  flex:1;
  min-width:0;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:10px;
  color:var(--ink);
  padding:8px 10px;
  font-size:12px;
}
.selectAdsFilterSelect option { color:#111; }
.selectAdsFilterApply {
  flex:0 0 auto;
  min-width:84px;
  height:34px;
  border-radius:10px;
  color:var(--muted) !important;
  border-color:rgba(255,255,255,0.12) !important;
  background:rgba(255,255,255,0.04) !important;
}
.selectAdsFilterApply:hover {
  color:var(--ink) !important;
  border-color:rgba(255,255,255,0.22) !important;
  background:rgba(255,255,255,0.08) !important;
}
.selectAdsFilterHint {
  font-size:11px;
  color:var(--muted);
}
.selectAdsFilterHint.hidden { display:none; }
.selectAdsFilterList {
  flex:1;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:6px 12px 16px 6px;
}
.selectAdsFilterList::-webkit-scrollbar { width:6px; }
.selectAdsFilterList::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.12); border-radius:6px; }
.selectAdsFilterList::-webkit-scrollbar-track { background:transparent; }
.adsFilterRow {
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:10px 12px;
  border-radius:10px;
  background:linear-gradient(180deg, rgba(18,24,32,0.6), rgba(12,17,24,0.8));
}
.adsFilterInfo {
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.adsFilterTitle {
  font-size:13px;
  color:var(--ink);
}
.adsFilterMeta {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  font-size:11px;
  color:var(--muted);
}
.ageBadge {
  padding:2px 6px;
  border-radius:10px;
  font-size:10px;
  line-height:1;
  border:1px solid transparent;
}
.ageBadge.young {
  color:#d3c9ff;
  background:rgba(147,114,255,0.16);
  border-color:rgba(147,114,255,0.35);
}
.ageBadge.mid {
  color:#ffe2a6;
  background:rgba(255,210,125,0.16);
  border-color:rgba(255,210,125,0.35);
}
.ageBadge.old {
  color:#ffc08a;
  background:rgba(255,140,75,0.16);
  border-color:rgba(255,140,75,0.35);
}
.adsFilterBadges {
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.adsFilterLink {
  color:var(--muted);
  text-decoration:none;
  font-size:13px;
  padding:2px 6px;
  border-radius:6px;
}
.adsFilterLink:hover { color:#fff; background:rgba(255,255,255,0.06); }
.adsFilterScore {
  margin-left:auto;
  margin-top:2px;
  font-size:12px;
  color:var(--muted);
  min-width:62px;
  text-align:right;
  font-weight:700;
  padding:5px 8px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
}
.adsFilterScore.score-good { color:#7de4a1; border-color:rgba(125,228,161,0.45); background:rgba(125,228,161,0.12); }
.adsFilterScore.score-warn { color:#ffd27a; border-color:rgba(255,210,122,0.45); background:rgba(255,210,122,0.12); }
.adsFilterScore.score-bad { color:#ff8f8f; border-color:rgba(255,143,143,0.45); background:rgba(255,143,143,0.12); }
.filteredScoreInput {
  width:62px;
  padding:4px 6px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.16);
  background:rgba(255,255,255,0.04);
  color:var(--ink);
  text-align:right;
  font-size:12px;
}
.filteredScoreInput.score-good { color:#7de4a1; font-weight:600; }
.filteredScoreInput.score-warn { color:#ffd27a; font-weight:600; }
.filteredScoreInput.score-bad { color:#ff8f8f; font-weight:600; }
.adsMineRow {
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:10px 12px;
  border-radius:10px;
  background:linear-gradient(180deg, rgba(18,24,32,0.6), rgba(12,17,24,0.8));
}
.adsMineRow.current {
  background:linear-gradient(180deg, rgba(58,82,126,0.28), rgba(24,36,56,0.42));
  box-shadow:inset 0 0 0 1px rgba(137,178,255,0.35);
}
.adsMineThumb {
  width:56px;
  height:56px;
  object-fit:cover;
  border-radius:8px;
}
.adsMineInfo {
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.adsMineTitle {
  font-size:13px;
  color:var(--ink);
}
.adsMineMeta {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  font-size:11px;
  color:var(--muted);
}
.adsMineLink {
  color:var(--muted);
  text-decoration:none;
  font-size:13px;
  line-height:1;
  padding:2px 6px;
  border-radius:6px;
  margin-top:2px;
}
.adsMineLink:hover { color:#fff; background:rgba(255,255,255,0.06); }
.adsMineKit {
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:36px;
  height:24px;
  font-size:12px;
  color:#dbe7ff;
  border-radius:6px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  gap:6px;
  padding:0 6px;
}
.adsMineKitValue { min-width:18px; text-align:center; }
.adsMineKitEdit {
  width:18px;
  height:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:none;
  background:transparent;
  color:var(--muted);
  cursor:pointer;
}
.adsMineKitEdit:hover { color:#fff; }
.adsMineKitInput {
  width:44px;
  height:22px;
  border-radius:6px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(12,16,22,0.7);
  color:#e7f0ff;
  text-align:center;
  font-size:11px;
}
.adsMineStatus {
  width:24px;
  height:24px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  color:var(--muted);
}
.adsMineRemove {
  width:24px;
  height:24px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:none;
  background:transparent;
  color:var(--muted);
  border-radius:6px;
  cursor:pointer;
}
.adsMineRemove:hover { color:#fff; background:rgba(255,255,255,0.06); }
.adsMineStatus.done { color: var(--ok); }
.adsMineStatus.error { color: var(--bad); cursor: help; }
.adsMineStatus.current { color:#ffd27d; }
.adsMineSpinner {
  width:14px;
  height:14px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,0.2);
  border-top-color: rgba(255,255,255,0.8);
  animation: spin 1s linear infinite;
}
.selectCard {
  background:linear-gradient(180deg, rgba(18,24,32,0.75), rgba(12,17,24,0.9));
  border-radius:12px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:240px;
  position:relative;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, opacity .18s ease;
  touch-action: pan-y;
}
.selectCard.filterInverted {
  box-shadow:inset 0 0 0 1px rgba(245,177,27,0.24);
}
.selectCard img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  background:#0c1118;
  cursor:zoom-in;
  -webkit-mask-image: linear-gradient(180deg,
    rgba(0,0,0,1) 65%,
    rgba(0,0,0,0.7) 78%,
    rgba(0,0,0,0.4) 90%,
    rgba(0,0,0,0) 100%);
  mask-image: linear-gradient(180deg,
    rgba(0,0,0,1) 65%,
    rgba(0,0,0,0.7) 78%,
    rgba(0,0,0,0.4) 90%,
    rgba(0,0,0,0) 100%);
}
.selectCard::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    180deg,
    rgba(0,0,0,0.00) 38%,
    rgba(0,0,0,0.24) 58%,
    rgba(0,0,0,0.52) 74%,
    rgba(0,0,0,0.78) 88%,
    rgba(0,0,0,0.92) 100%
  );
  pointer-events:none;
}
.selectCardBody {
  position:relative;
  margin-top:auto;
  padding:10px 12px 12px;
  background:linear-gradient(
    180deg,
    rgba(0,0,0,0.00) 0%,
    rgba(0,0,0,0.28) 30%,
    rgba(0,0,0,0.62) 60%,
    rgba(0,0,0,0.88) 86%,
    rgba(0,0,0,0.96) 100%
  );
}
.selectCard:hover .selectCardBody {
  padding-top:14px;
  background:linear-gradient(
    180deg,
    rgba(0,0,0,0.00) 0%,
    rgba(0,0,0,0.16) 38%,
    rgba(0,0,0,0.48) 68%,
    rgba(0,0,0,0.80) 100%
  );
}
.selectCardTitle { font-size:12px; color:#ffffff; text-shadow:0 2px 6px rgba(0,0,0,0.9); }
.selectCardCheck { margin-right:6px; }
.selectCardMeta { display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-top:6px; color:#ffffff; font-size:11px; }
.selectPrice { font-weight:700; font-size:14px; color:#fff; }
.selectPriceOriginal { text-decoration: line-through; color:#9fb0c4; font-size:11px; }
.selectCardBadges { display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; }
.badge { padding:4px 6px; border-radius:8px; font-size:10px; font-weight:700; background:rgba(255,255,255,0.1); color:#f4f7ff; display:inline-flex; gap:4px; align-items:center; border:1px solid rgba(255,255,255,0.08); }
.badge img { height:12px; width:auto; display:inline-block; }
.badge-ad { background:#111827; color:#fbbf24; border-color:rgba(251,191,36,0.25); }
.badge-catalogo { background:#0b2537; color:#7dd3fc; border-color:rgba(125,211,252,0.3); }
.badge-mais { background:#ff7733; color:#0f172a; border-color:rgba(255,119,51,0.45); }
.badge-intl { background:#b91c1c; color:#fee2e2; border-color:rgba(248,113,113,0.5); }
.badge-full { background:#0f422b; color:#a7f3d0; border-color:rgba(34,197,94,0.25); }
.badge-frete { background:#0f1f33; color:#c7d2fe; border-color:rgba(199,210,254,0.2); }
.badge-brand-registered { background:#f5b11b; color:#1f2937; border-color:rgba(245,177,27,0.55); }
.badge-brand-found { background:#9a3412; color:#fff1e6; border-color:rgba(249,115,22,0.5); }
.badge-brand-none { background:#0f3b2b; color:#c8f9dc; border-color:rgba(34,197,94,0.45); }
.badge-dot-green { color:#22c55e; margin-right:3px; }
.badge-brand-possible { color:#fff7e6; }
.badge-brand-possible-orange { background:#9a3412; border-color:rgba(249,115,22,0.5); }
.badge-brand-possible-yellow { background:#854d0e; border-color:rgba(245,177,27,0.55); }
.badge-brand-possible-red { background:#7f1d1d; border-color:rgba(248,113,113,0.55); }
.badge-track { border-color:rgba(126,200,255,0.4); }
.badge-track-acompanhar { background:#0f2a3c; color:#b6e0ff; }
.badge-track-concorrente { background:#40261a; color:#ffd6b5; border-color:rgba(251,146,60,0.4); }
.badge-track-oportunidade { background:#1b3f2b; color:#bbf7d0; border-color:rgba(74,222,128,0.4); }
.badge-track-meu { background:#2f2552; color:#ddd6fe; border-color:rgba(167,139,250,0.48); }
.aiPickBadge {
  padding:4px 6px;
  border-radius:8px;
  font-size:10px;
  font-weight:700;
  border:1px solid rgba(255,255,255,0.16);
  background:rgba(255,255,255,0.08);
  color:#dbeafe;
}
.aiPickBadge.ai-pending {
  background:rgba(59,130,246,0.14);
  border-color:rgba(147,197,253,0.45);
  color:#bfdbfe;
}
.aiPickBadge.ai-running {
  background:rgba(14,165,233,0.16);
  border-color:rgba(56,189,248,0.45);
  color:#bae6fd;
}
.aiPickBadge.ai-selected {
  background:rgba(34,197,94,0.18);
  border-color:rgba(74,222,128,0.45);
  color:#bbf7d0;
}
.aiPickBadge.ai-rejected {
  background:rgba(239,68,68,0.16);
  border-color:rgba(248,113,113,0.45);
  color:#fecaca;
}
@media (max-width: 860px) {
  .selectFiltersBar {
    align-items:flex-start;
  }
  .selectFiltersActions {
    width:100%;
  }
  .selectFilterInvertWrap {
    width:100%;
    justify-content:space-between;
  }
}
.ratingBadge { padding:2px 6px; border-radius:6px; font-weight:700; font-size:10px; }
.rating-good { background:#0f422b; color:#a7f3d0; }
.rating-mid { background:#3d2c00; color:#fcd34d; }
.rating-warn { background:#4a2200; color:#fbbf24; }
.rating-bad { background:#4b0f14; color:#fecdd3; }
.soldLabel { color:#d0e2ff; }
.sellerLabel { color:#8fb0ff; font-weight:600; }
.visitsLabel { color:#c5f3ff; }
.visits-good { color:#a7f3d0; }
.visits-warn { color:#fcd34d; }
.visits-bad { color:#fca5a5; }
.visits-error { color:#f59e0b; }
.selectCardLink {
  position:absolute;
  top:8px;
  left:8px;
  width:26px;
  height:26px;
  border-radius:8px;
  border:0;
  background:rgba(10,14,18,0.35);
  color:#dbe7ff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:14px;
  text-decoration:none;
  backdrop-filter: blur(6px);
  z-index:4;
}
.selectCardActions {
  position:absolute;
  top:8px;
  right:8px;
  display:flex;
  align-items:center;
  gap:6px;
  z-index:4;
}
.selectCardDiscard {
  position:static;
  width:26px;
  height:26px;
  border-radius:8px;
  border:0;
  background:rgba(10,14,18,0.35);
  color:#f7caca;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:16px;
  line-height:1;
  backdrop-filter: blur(6px);
}
.selectCardDiscard:hover {
  color:#fff;
  background:rgba(107,21,32,0.55);
}
.selectCardCheckWrap {
  position:static;
  background:rgba(10,14,18,0.35);
  padding:4px 6px;
  border-radius:8px;
  backdrop-filter: blur(6px);
}
.selectCard.selected {
  box-shadow:none;
  transform:none;
  border:1.5px solid rgba(44,116,255,0.9);
}
.selectCard.selected::before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,
    rgba(44,116,255,0.42) 0%,
    rgba(44,116,255,0.32) 55%,
    rgba(44,116,255,0.18) 100%);
  mix-blend-mode:screen;
  pointer-events:none;
}
.selectCard.selected::after {
  /* mantém o degrade escuro e aplica uma lâmina azul uniforme */
  mix-blend-mode:screen;
  background:
    linear-gradient(180deg, rgba(58,126,255,0.32), rgba(58,126,255,0.20));
}
.selectCard.iaMarking {
  box-shadow:
    0 0 0 2px rgba(130, 194, 255, 0.95),
    0 0 18px rgba(87, 156, 255, 0.42);
  animation: aiMarkPulse .28s ease-in-out infinite alternate;
}
.selectCard.aiStatus-running {
  box-shadow: inset 0 0 0 1px rgba(59,130,246,0.48);
}
.selectCard.aiStatus-rejected {
  box-shadow: inset 0 0 0 1px rgba(248,113,113,0.32);
}
@keyframes aiMarkPulse {
  from { filter: brightness(1); }
  to { filter: brightness(1.12); }
}
.selectCard.missing {
  opacity:0.7;
}
.selectCard.swipeDragging {
  transition:none;
  z-index:6;
}
.selectCard.swipeSelect {
  box-shadow:0 0 0 2px rgba(74,222,128,0.62), 0 18px 34px rgba(16,185,129,0.22);
}
.selectCard.swipeReject {
  box-shadow:0 0 0 2px rgba(248,113,113,0.62), 0 18px 34px rgba(239,68,68,0.18);
}
.selectCardCheck {
  appearance:none;
  width:34px;
  height:18px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.2);
  background:rgba(255,255,255,0.08);
  position:relative;
  cursor:pointer;
}
.selectCardCheck::after {
  content:"";
  position:absolute;
  top:2px;
  left:2px;
  width:12px;
  height:12px;
  border-radius:50%;
  background:rgba(255,255,255,0.6);
  transition: transform .15s ease, background .15s ease;
}
.selectCardCheck:checked {
  background:rgba(79,140,255,0.35);
  border-color:rgba(79,140,255,0.7);
  box-shadow:0 0 0 1px rgba(79,140,255,0.25);
}
.selectCardCheck:checked::after {
  transform: translateX(16px);
  background:#e7f0ff;
}
.selectLoading {
  flex:1;
  min-height:240px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  border-radius:12px;
  border:1px dashed rgba(255,255,255,0.12);
  background:linear-gradient(180deg, rgba(18,24,32,0.6), rgba(12,17,24,0.85));
  color:var(--muted);
  text-align:center;
}
.selectLoading.hidden { display:none; }
.selectLoadingLogo {
  width:36px;
  height:36px;
  animation:selectBounce 0.9s ease-in-out infinite;
}
.selectLoading.phase-title .selectLoadingLogo {
  animation:selectSpinPulse 1s linear infinite;
}
.selectLoading.phase-scrape .selectLoadingLogo {
  animation:selectBounce 0.9s ease-in-out infinite;
}
.selectLoading.phase-ia {
  flex:0 0 auto;
  min-height:0;
  padding:8px 10px;
  margin-top:6px;
  border-radius:10px;
  border-style:solid;
  flex-direction:row;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  text-align:left;
}
.selectLoading.phase-ia .selectLoadingLogo {
  width:18px;
  height:18px;
  animation:selectSpinPulse 0.9s linear infinite;
}
.selectLoading.phase-ia .selectLoadingLabel {
  color:#a9d1ff;
  font-weight:600;
}
.selectLoadingLabel { font-size:12px; }
.selectLoading.phase-title .selectLoadingLabel {
  color:#a9d1ff;
}
.selectScrapeAlert {
  margin:10px 0 0;
  padding:8px 12px;
  border-radius:10px;
  font-size:12px;
  color:#ffe4a3;
  background:rgba(255,210,125,0.08);
  border:1px solid rgba(255,210,125,0.2);
}
.selectScrapeAlert.hidden { display:none; }
@keyframes selectBounce {
  0% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-8px) scale(1.05); }
  100% { transform: translateY(0) scale(1); }
}
@keyframes selectSpinPulse {
  0% { transform: rotate(0deg) scale(0.94); opacity:0.85; }
  50% { transform: rotate(180deg) scale(1.06); opacity:1; }
  100% { transform: rotate(360deg) scale(0.94); opacity:0.85; }
}
.selectActions {
  margin-top:12px;
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  flex:0 0 auto;
}
.selectActionsLeft,
.selectActionsRight {
  display:flex;
  gap:10px;
  align-items:center;
}
.selectActionsRight { justify-content:flex-end; }
.selectReturnItem {
  display:none;
}
.ghostAction {
  border:1px solid rgba(255,255,255,0.12);
  background:transparent;
  color:var(--ink);
  padding:8px 12px;
  border-radius:10px;
  cursor:pointer;
}
.ghostAction.loading {
  position:relative;
  color:transparent;
  pointer-events:none;
}
.ghostAction.loading::after {
  content:"";
  position:absolute;
  inset:0;
  margin:auto;
  width:16px;
  height:16px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,0.25);
  border-top-color:rgba(255,255,255,0.85);
  animation:spin 0.9s linear infinite;
}
.dangerAction {
  border-color: rgba(224,85,85,0.6);
  color:#f5b1b1;
}
.dangerAction:hover {
  border-color: rgba(224,85,85,0.9);
  box-shadow:0 0 0 1px rgba(224,85,85,0.2);
}

.compareModal {
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:1100;
}
.compareModal.hidden { display:none; }
.compareBackdrop {
  position:absolute;
  inset:0;
  background:rgba(4,8,12,0.78);
  backdrop-filter: blur(6px);
}
.compareTitleRow {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  margin-bottom:8px;
}
.compareFeedback {
  position:absolute;
  inset:0;
  z-index:6;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
}
.compareFeedback.hidden {
  display:none;
}
.compareFeedbackInner {
  min-width:132px;
  max-width:min(70vw, 240px);
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(7,10,16,0.76);
  backdrop-filter:blur(10px);
  box-shadow:0 16px 34px rgba(0,0,0,0.34);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  animation:compareFeedbackPop .22s ease-out;
}
.compareFeedbackIcon {
  width:42px;
  height:42px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  font-weight:700;
  line-height:1;
}
.compareFeedbackText {
  font-size:13px;
  font-weight:700;
  color:#f4f7ff;
  text-align:center;
}
.compareFeedback.isSelected .compareFeedbackInner {
  border-color:rgba(74,222,128,0.34);
  background:rgba(9,22,15,0.82);
}
.compareFeedback.isSelected .compareFeedbackIcon {
  background:rgba(34,197,94,0.2);
  color:#86efac;
}
.compareFeedback.isRejected .compareFeedbackInner {
  border-color:rgba(248,113,113,0.34);
  background:rgba(28,10,14,0.84);
}
.compareFeedback.isRejected .compareFeedbackIcon {
  background:rgba(239,68,68,0.18);
  color:#fca5a5;
}
@keyframes compareFeedbackPop {
  from {
    opacity:0;
    transform:translateY(10px) scale(0.94);
  }
  to {
    opacity:1;
    transform:translateY(0) scale(1);
  }
}
.compareTitleBlock {
  flex:1 1 auto;
  min-width:0;
}
.compareSheetGrip {
  display:none;
}
.compareSheetGripBar {
  display:block;
  width:52px;
  height:5px;
  border-radius:999px;
  background:rgba(255,255,255,0.22);
}
.compareNavRow {
  display:contents;
}
.compareReturnItem {
  display:none;
}
.compareBox {
  position:relative;
  z-index:1;
  width:min(860px, 90vw);
  height:70vh;
  background:linear-gradient(180deg, rgba(20,27,36,0.95), rgba(12,17,24,0.95));
  border-radius:16px;
  padding:16px 18px;
  box-shadow:0 20px 60px rgba(0,0,0,0.5);
  display:flex;
  flex-direction:column;
  transition: transform .18s ease, box-shadow .18s ease;
}
.compareBox.swipeDragging {
  transition:none;
}
.compareBox.swipeSelect {
  box-shadow:0 0 0 2px rgba(74,222,128,0.58), 0 20px 44px rgba(16,185,129,0.24);
}
.compareBox.swipeReject {
  box-shadow:0 0 0 2px rgba(248,113,113,0.58), 0 20px 44px rgba(239,68,68,0.22);
}
.compareClose {
  flex:0 0 auto;
  width:32px;
  height:32px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.14);
  background:rgba(255,255,255,0.06);
  color:var(--ink);
  cursor:pointer;
  font-size:18px;
  line-height:1;
}
.compareClose:hover {
  background:rgba(255,255,255,0.12);
}
.compareNav {
  position:absolute;
  top:50%;
  transform: translateY(-50%);
  width:36px;
  min-width:36px;
  height:36px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.2);
  background:rgba(10,14,18,0.6);
  color:#e7f0ff;
  cursor:pointer;
  font-size:0;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  white-space:nowrap;
}
.comparePrev::before,
.compareNext::before {
  font-size:20px;
  line-height:1;
}
.comparePrev::before {
  content:"‹";
}
.compareNext::before {
  content:"›";
}
.compareNav:hover { box-shadow:0 0 0 1px rgba(120,170,255,0.4); }
.compareNav.disabled,
.compareNav:disabled {
  opacity:0.35;
  cursor:default;
  box-shadow:none;
}
.compareNav.disabled:hover,
.compareNav:disabled:hover {
  box-shadow:none;
}
.comparePrev { left:-18px; }
.compareNext { right:-18px; }
.compareTitle { font-size:13px; color:var(--muted); margin-bottom:8px; }
.compareTitleText {
  font-size:12px;
  color:var(--ink);
  line-height:1.25;
  white-space:normal;
  overflow-wrap:anywhere;
}
.compareGrid {
  flex:1;
  display:grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap:12px;
  min-height:0;
  align-items:stretch;
}
.compareCol {
  position:relative;
  background:
    radial-gradient(1200px 420px at 20% 0%, rgba(255,255,255,0.06), rgba(255,255,255,0.0) 60%),
    linear-gradient(180deg, rgba(10,14,18,0.95), rgba(10,14,18,0.65));
  border-radius:12px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:0;
  border:1px solid rgba(255,255,255,0.08);
}
.compareCol::after {
  content:"";
  position:absolute;
  inset:0;
  /* Match the selection grid fade (darker bottom for readability). */
  background:linear-gradient(
    180deg,
    rgba(0,0,0,0.00) 38%,
    rgba(0,0,0,0.24) 58%,
    rgba(0,0,0,0.52) 74%,
    rgba(0,0,0,0.78) 88%,
    rgba(0,0,0,0.92) 100%
  );
  pointer-events:none;
}
.compareCol.selected {
  border-color: rgba(44,116,255,0.85);
  box-shadow: 0 0 0 1px rgba(44,116,255,0.25);
}
.compareCol.selected::after {
  mix-blend-mode:screen;
  background:
    linear-gradient(180deg, rgba(58,126,255,0.28), rgba(58,126,255,0.16)),
    linear-gradient(
      180deg,
      rgba(0,0,0,0.00) 38%,
      rgba(0,0,0,0.24) 58%,
      rgba(0,0,0,0.52) 74%,
      rgba(0,0,0,0.78) 88%,
      rgba(0,0,0,0.92) 100%
    );
}
.compareColHeader {
  position:relative;
  z-index:2;
  padding:12px 12px 10px;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.compareColHeader::after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:1px;
  background:rgba(255,255,255,0.08);
}
.compareMedia {
  position:relative;
  flex:1;
  min-height:0;
  transition: transform .18s ease, box-shadow .18s ease;
  touch-action: pan-y;
}
.compareMedia img {
  width:100%;
  flex:1;
  min-height:0;
  /* Fill the container (zoom-to-fit). */
  object-fit:cover;
  background:transparent;
  border-radius:0;
  position:relative;
  z-index:1;
  padding:0;
  cursor:zoom-in;
  -webkit-mask-image: linear-gradient(180deg,
    rgba(0,0,0,1) 70%,
    rgba(0,0,0,0.75) 82%,
    rgba(0,0,0,0.45) 92%,
    rgba(0,0,0,0) 100%);
  mask-image: linear-gradient(180deg,
    rgba(0,0,0,1) 70%,
    rgba(0,0,0,0.75) 82%,
    rgba(0,0,0,0.45) 92%,
    rgba(0,0,0,0) 100%);
}
.compareMedia.swipeDragging {
  transition:none;
}
.compareMedia.swipeSelect {
  box-shadow:0 0 0 2px rgba(74,222,128,0.58), 0 18px 34px rgba(16,185,129,0.22);
}
.compareMedia.swipeReject {
  box-shadow:0 0 0 2px rgba(248,113,113,0.58), 0 18px 34px rgba(239,68,68,0.20);
}
.compareSelectOverlay {
  position:absolute;
  z-index:3;
  top:10px;
  right:10px;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  color:rgba(255,255,255,0.78);
  padding:4px 6px;
  border-radius:10px;
  border:0;
  background:rgba(10,14,18,0.35);
  backdrop-filter: blur(6px);
}
.compareSelectOverlay .slider {
  border:0;
  box-shadow:none;
}
.compareSelectOverlay input:focus + .slider {
  box-shadow:none;
}
.compareDiscardBtn {
  width:24px;
  height:24px;
  border-radius:8px;
  border:0;
  background:rgba(107,21,32,0.45);
  color:#ffd8d8;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:15px;
  line-height:1;
}
.compareDiscardBtn:hover {
  background:rgba(107,21,32,0.65);
  color:#fff;
}
.compareDiscardBtn:disabled {
  opacity:0.45;
  cursor:default;
}
.compareMeta {
  padding:12px 14px;
  /* Full-width bottom fade for readability. */
  background:linear-gradient(
    180deg,
    rgba(0,0,0,0.00) 0%,
    rgba(0,0,0,0.55) 35%,
    rgba(0,0,0,0.82) 70%,
    rgba(0,0,0,0.92) 100%
  );
  border-radius:0 0 12px 12px;
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  margin:0;
  pointer-events:none;
  z-index:3;
}
.compareLabel { font-size:11px; color:var(--muted); margin-bottom:0; }

.imgZoomModal {
  position:fixed;
  inset:0;
  z-index:1300;
  display:flex;
  align-items:center;
  justify-content:center;
}
.imgZoomModal.hidden { display:none; }
.imgZoomBackdrop {
  position:absolute;
  inset:0;
  background:rgba(4,8,12,0.72);
  backdrop-filter: blur(6px);
}
.imgZoomContent {
  position:relative;
  z-index:1;
  width:min(78vw, 720px);
  max-width:78vw;
  max-height:78vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px;
  background:rgba(8,12,18,0.92);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 20px 60px rgba(0,0,0,0.5);
}
.imgZoomContent img {
  display:block;
  width:100%;
  max-width:100%;
  max-height:calc(78vh - 20px);
  object-fit:contain;
  height:auto;
}
.catalogSummary {
  --summary-surface-0: rgba(10, 15, 22, 0.36);
  --summary-surface-1: rgba(16, 23, 33, 0.56);
  --summary-surface-2: rgba(21, 30, 42, 0.62);
  --summary-border-soft: rgba(170, 190, 220, 0.09);
  --summary-border-faint: rgba(170, 190, 220, 0.06);
  --summary-highlight-soft: rgba(255, 255, 255, 0.035);
  display:flex;
  flex-direction:column;
  gap:14px;
  align-items:stretch;
  max-height: calc(100vh - 132px);
  min-width:0;
  max-width:100%;
  overflow:auto;
  padding-right:6px;
  box-sizing:border-box;
  scrollbar-color: rgba(255,255,255,0.12) transparent;
  scrollbar-width: thin;
}
.catalogSummary::-webkit-scrollbar { width:8px; }
.catalogSummary::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.12); border-radius:8px; }
.catalogSummary::-webkit-scrollbar-track { background:transparent; }
.summaryHero {
  --summary-cover-w: 160px;
  --summary-cover-h: 220px;
  display:grid;
  grid-template-columns: var(--summary-cover-w) minmax(0, 1fr);
  gap:14px;
  align-items:stretch;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.summaryCover img {
  width:var(--summary-cover-w);
  height:var(--summary-cover-h);
  border-radius:14px;
  object-fit:cover;
  background:#0c1118;
  box-shadow:0 12px 28px rgba(0,0,0,0.30);
}
.summaryCover {
  position:relative;
  width:var(--summary-cover-w);
  height:var(--summary-cover-h);
}
.summaryMain {
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:10px;
  height:var(--summary-cover-h);
  min-height:var(--summary-cover-h);
  max-width:100%;
  box-sizing:border-box;
}
.summaryInfo {
  width:100%;
  min-width:0;
  border:1px solid var(--summary-border-soft);
  border-radius:12px;
  background:linear-gradient(180deg, var(--summary-surface-2), var(--summary-surface-1));
  padding:8px 12px;
  box-shadow:
    inset 0 1px 0 var(--summary-highlight-soft),
    0 10px 22px rgba(0,0,0,0.18);
  max-width:100%;
  box-sizing:border-box;
}
.summaryCoverActions {
  position:absolute;
  top:10px;
  right:10px;
  display:flex;
  flex-direction:column;
  gap:6px;
  z-index:2;
}
.summaryTopLine {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  min-width:0;
}
.summaryTopMeta {
  font-size:11px;
  color:var(--muted);
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  margin-top:4px;
}
.summarySep { opacity:0.6; }
.summaryTitle {
  font-size:20px;
  font-weight:800;
  text-align:left;
  line-height:1.15;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.summaryTopLine .titleAction {
  flex:0 0 auto;
}
.summaryMeta { font-size:12px; color:var(--muted); }
.summaryMetaSmall { margin-top:2px; }
.summaryStatus { font-size:12px; color:#ffd27d; }
.summaryStats {
  display:grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap:6px;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.summaryHeroComment {
  min-width:0;
  width:100%;
  margin-top:auto;
  padding:8px 10px;
}
.summaryHeroComment .summaryBlockHeader {
  margin-bottom:4px;
}
.summaryHeroCommentText {
  min-height:0;
  max-height:none;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  display:block;
}
.summaryStat {
  font-size:10px;
  font-weight:600;
  color:rgba(255,255,255,0.85);
  background:linear-gradient(180deg, rgba(24,34,47,0.56), rgba(16,24,34,0.52));
  border:1px solid var(--summary-border-faint);
  border-radius:9px;
  padding:6px 8px;
  min-height:32px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.summaryStat span {
  font-size:12px;
  font-weight:800;
  color:inherit;
  white-space:nowrap;
}
.summaryStat.stat-ok {
  color:#95e3ad;
  background:linear-gradient(180deg, rgba(36,62,48,0.45), rgba(21,37,30,0.46));
  border-color:rgba(127,224,154,0.16);
}
.summaryStat.stat-bad {
  color:#f0b0a7;
  background:linear-gradient(180deg, rgba(62,43,43,0.42), rgba(36,26,26,0.42));
  border-color:rgba(241,165,154,0.16);
}
.summaryStat.stat-warn {
  color:#ecd38b;
  background:linear-gradient(180deg, rgba(61,53,34,0.40), rgba(36,31,20,0.40));
  border-color:rgba(242,208,106,0.16);
}
.summaryStat.stat-muted { color:rgba(255,255,255,0.65); }
.summaryNotesGrid {
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:10px;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.summaryBlock {
  width:100%;
  margin:0;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.summaryBlockCard {
  border:1px solid var(--summary-border-soft);
  border-radius:12px;
  background:linear-gradient(180deg, rgba(18,26,37,0.58), rgba(14,21,31,0.54));
  padding:12px;
  box-shadow:
    inset 0 1px 0 var(--summary-highlight-soft),
    0 12px 24px rgba(0,0,0,0.16);
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.summaryBlockWide {
  grid-column: 1 / -1;
}
.summaryBlockHeader {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.summaryNoteLabel {
  font-size:12px;
  color:rgba(255,255,255,0.72);
  text-transform:none;
  letter-spacing:0.02em;
  margin:0;
  font-weight:700;
}
.summaryNoteText {
  font-size:13px;
  color:#d9e6f9;
  line-height:1.4;
  width:100%;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  word-break:break-word;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.summaryNotePanel {
  min-height:82px;
  border:1px solid var(--summary-border-faint);
  border-radius:10px;
  background:rgba(10,16,24,0.46);
  padding:10px 12px;
  max-width:100%;
  box-sizing:border-box;
}
.summaryPurchaseList {
  display:grid;
  gap:8px;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.summaryContactsList {
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.summaryAttachmentsList {
  display:flex;
  align-items:stretch;
  gap:6px;
  overflow:auto;
  padding-bottom:0;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,0.16) transparent;
}
.summaryAttachmentsList::-webkit-scrollbar { height:6px; }
.summaryAttachmentsList::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.14); border-radius:6px; }
.summaryAttachmentsList::-webkit-scrollbar-track { background:transparent; }
.summaryAttachmentsInline {
  margin-top:0;
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.summaryAttachmentsLabel {
  font-size:10px;
  color:var(--muted);
  letter-spacing:0.02em;
  text-transform:none;
  font-weight:700;
}
.summaryContactRow {
  border:1px solid var(--summary-border-faint);
  border-radius:10px;
  background:rgba(11,17,25,0.46);
  padding:9px 10px;
}
.summaryContactTop {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-width:0;
}
.summaryContactLabel {
  font-size:12px;
  color:#d9e6f9;
  font-weight:700;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.summaryContactInfo {
  font-size:12px;
  color:var(--muted);
  min-width:0;
  max-width:62%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.summaryContactNote {
  margin-top:6px;
  font-size:12px;
  color:#c9d9ef;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.summaryContactEmpty {
  font-size:12px;
  color:var(--muted);
  border:1px dashed rgba(175,196,227,0.18);
  border-radius:10px;
  background:rgba(10,15,22,0.28);
  padding:10px 12px;
}
.summaryAttachmentName {
  font-size:11px;
  color:#d9e6f9;
  font-weight:700;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.summaryAttachmentMeta {
  font-size:10px;
  color:var(--muted);
  margin-top:2px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.summaryAttachmentCard {
  min-width:188px;
  max-width:188px;
  width:188px;
  flex:0 0 188px;
  border:1px solid var(--summary-border-soft);
  border-radius:10px;
  background:linear-gradient(180deg, rgba(20,29,40,0.58), rgba(13,20,30,0.54));
  padding:6px;
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  gap:6px;
  align-items:center;
  box-shadow:inset 0 1px 0 var(--summary-highlight-soft);
  overflow:hidden;
  box-sizing:border-box;
}
.summaryAttachmentCardIcon {
  width:26px;
  height:26px;
  border-radius:7px;
  border:1px solid rgba(175,196,227,0.18);
  background:rgba(255,255,255,0.03);
  color:#bfcce2;
  font-size:9px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
}
.summaryAttachmentCardBody {
  min-width:0;
  max-width:100%;
  overflow:hidden;
}
.summaryAttachmentActions {
  display:flex;
  flex-direction:column;
  gap:4px;
}
.summaryAttachmentAction {
  width:24px;
  height:24px;
  border-radius:7px;
  border:1px solid rgba(175,196,227,0.20);
  background:rgba(255,255,255,0.02);
  color:var(--ink);
  text-decoration:none;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  cursor:pointer;
}
.summaryAttachmentAction:hover {
  border-color:rgba(188,209,238,0.30);
  background:rgba(255,255,255,0.07);
}
.summaryAttachmentAction.isDanger {
  border-color:rgba(242,122,122,0.34);
  color:#f2b4b4;
}
.summaryAttachmentAction.isDanger:hover {
  border-color:rgba(242,122,122,0.56);
  background:rgba(242,122,122,0.12);
}
.summaryAttachmentGhost {
  min-width:128px;
  border:1px dashed rgba(175,196,227,0.26);
  border-radius:10px;
  background:rgba(10,16,24,0.30);
  color:var(--muted);
  padding:6px 8px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  cursor:pointer;
}
.summaryAttachmentGhost:hover {
  border-color:rgba(188,209,238,0.40);
  color:#d9e6f9;
  background:rgba(13,20,30,0.44);
}
.summaryAttachmentGhostPlus {
  font-size:16px;
  line-height:1;
  font-weight:700;
}
.summaryAttachmentGhostText {
  font-size:10px;
  font-weight:600;
}
.summaryAttachmentEmpty {
  font-size:12px;
  color:var(--muted);
  border:0;
  border-radius:0;
  background:transparent;
  padding:0 2px;
  align-self:center;
}
.summaryMiniLabel {
  font-size:11px;
  color:var(--muted);
  letter-spacing:0.02em;
  text-transform:none;
  font-weight:600;
}
.summaryPurchaseParams {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.summaryPurchaseParam {
  display:inline-flex;
  align-items:center;
  gap:6px;
  border:1px solid var(--summary-border-faint);
  border-radius:999px;
  background:rgba(11,17,25,0.46);
  padding:6px 10px;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
  font-size:12px;
  line-height:1.1;
}
.summaryPurchaseParamLabel {
  color:var(--muted);
}
.summaryPurchaseParamValue {
  color:#d9e6f9;
  font-weight:700;
}
.summaryPurchaseList .summaryNoteText {
  border:1px solid var(--summary-border-faint);
  border-radius:10px;
  background:rgba(11,17,25,0.46);
  padding:10px 12px;
  min-height:40px;
  max-width:100%;
  box-sizing:border-box;
}
.summarySectionRow {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.summaryActionsMini {
  display:flex;
  align-items:center;
  gap:8px;
}
.similaresBody {
  margin-top:8px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.similaresBody.hidden { display:none; }
.similaresRow {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
}
.similaresThumb {
  width:36px;
  height:46px;
  border-radius:8px;
  object-fit:cover;
  background:rgba(12,17,24,0.6);
  border:1px solid rgba(255,255,255,0.08);
  flex:0 0 auto;
}
.similaresInfo { display:flex; flex-direction:column; gap:2px; flex:1; min-width:0; }
.similaresTitle { font-size:12px; color:var(--ink); }
.similaresMeta { font-size:10px; color:var(--muted); }
.similaresActions { display:flex; align-items:center; gap:6px; }
.similaresEmpty { font-size:11px; color:var(--muted); }
.similaresAddCard {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  border-radius:10px;
  border:1px dashed rgba(255,255,255,0.12);
  background:linear-gradient(180deg, rgba(18,24,32,0.5), rgba(12,17,24,0.8));
  color:var(--muted);
  cursor:pointer;
}
.similaresAddCard:hover {
  border-color:rgba(255,255,255,0.2);
  color:var(--ink);
}
.similaresResults {
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:8px;
  max-height:280px;
  overflow:auto;
  padding-right:4px;
}
.similaresEmptyIcon {
  font-size:28px;
  color:var(--muted);
  text-align:center;
  margin-top:6px;
}
.similaresResultRow {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
}
.similaresResultThumb {
  width:38px;
  height:48px;
  border-radius:8px;
  object-fit:cover;
  background:rgba(12,17,24,0.6);
  border:1px solid rgba(255,255,255,0.08);
  flex:0 0 auto;
}
.similaresResultInfo { display:flex; flex-direction:column; gap:2px; flex:1; min-width:0; }
.similaresResultTitle { font-size:12px; color:var(--ink); }
.similaresResultMeta { font-size:10px; color:var(--muted); }
.similaresResultStatus { font-size:10px; color:var(--muted); }
.summaryActionsRow {
  margin-top:2px;
  padding-top:12px;
  border-top:1px solid rgba(170,190,220,0.10);
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:stretch;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.summaryActionsRow > * {
  min-width:0;
  max-width:100%;
}
.summaryActionsRow .ghostAction,
.summaryActionsRow .primaryAction,
.summaryActionsRow .dangerOutline {
  min-height:36px;
  white-space:normal;
  overflow-wrap:anywhere;
  flex:0 1 auto;
}
.summaryActionsSpacer { flex:1 1 auto; }
.summaryAction { width:auto; }
.summaryGhost {
  border:1px solid rgba(170,190,220,0.22);
  background:rgba(255,255,255,0.02);
}
.summaryActionsRow .dangerOutline {
  margin-left:0;
}
.itemDetail { margin-top:12px; }
.itemDetail.hidden { display:none; }
.catalogSummary.hidden { display:none; }
.emptyState { margin-top:20px; color:var(--muted); font-size:13px; }
.emptyState.hidden { display:none; }

@media (max-width: 1100px) {
  .summaryHero {
    --summary-cover-w: 132px;
    --summary-cover-h: 182px;
    grid-template-columns: var(--summary-cover-w) minmax(0, 1fr);
  }
  .summaryStats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .selectBox {
    width:100vw;
    height:100dvh;
    border-radius:0;
    padding:12px;
  }
  .selectHeader {
    margin-bottom:10px;
  }
  .selectHero {
    grid-template-columns: 92px minmax(0, 1fr);
    gap:10px;
    padding:8px 10px;
  }
  .selectHero img {
    width:92px;
    height:92px;
    min-height:92px;
  }
  .selectHeroTitleRow {
    align-items:flex-start;
  }
  .selectCalcToggle {
    width:32px;
    height:32px;
  }
  .selectQueryRow {
    flex-wrap:wrap;
  }
  .selectQueryInput {
    width:100%;
  }
  .selectGrid {
    grid-template-columns: 1fr;
    gap:12px;
    padding:6px 0 18px;
  }
  .selectCard {
    min-height:248px;
  }
  .selectCardBody {
    padding:8px 10px 10px;
  }
  .selectActions {
    flex-direction:column;
    align-items:stretch;
  }
  .selectActionsLeft,
  .selectActionsRight {
    width:100%;
    justify-content:space-between;
  }
  .compareBox {
    width:100vw;
    height:100dvh;
    border-radius:0;
    padding:12px;
  }
  .compareGrid {
    grid-template-columns: 1fr;
    grid-template-rows: minmax(220px, 38vh) minmax(180px, 30vh);
  }
  .compareCol {
    min-height:0;
  }
  .compareGrid > .compareCol:first-child .compareMedia {
    min-height:180px;
  }
  .compareGrid > .compareCol:last-child .compareMedia {
    min-height:140px;
  }
  .compareGrid > .compareCol:last-child .compareMedia img {
    object-fit:contain;
    padding:8px 8px 72px;
    background:#0b1018;
    -webkit-mask-image: linear-gradient(180deg,
      rgba(0,0,0,1) 76%,
      rgba(0,0,0,0.82) 88%,
      rgba(0,0,0,0.00) 100%);
    mask-image: linear-gradient(180deg,
      rgba(0,0,0,1) 76%,
      rgba(0,0,0,0.82) 88%,
      rgba(0,0,0,0.00) 100%);
  }
  .compareMeta {
    padding:10px 12px;
  }
  .compareNav {
    top:auto;
    bottom:14px;
    transform:none;
    z-index:4;
  }
  .comparePrev {
    left:12px;
  }
  .compareNext {
    right:12px;
  }
  .summaryHero {
    --summary-cover-w: 132px;
    --summary-cover-h: 182px;
    grid-template-columns: 1fr;
  }
  .summaryMain {
    height:auto;
    min-height:0;
    gap:8px;
  }
  .summaryCover {
    width:var(--summary-cover-w);
    height:var(--summary-cover-h);
    margin:0 auto;
  }
  .summaryCover img {
    width:var(--summary-cover-w);
    height:var(--summary-cover-h);
  }
  .summaryNotesGrid {
    grid-template-columns: 1fr;
  }
  .summaryStats {
    grid-template-columns: 1fr;
  }
  .summaryBlockWide {
    grid-column: auto;
  }
  .summaryActionsSpacer {
    display:none;
  }
  .summaryActionsRow {
    gap:8px;
  }
}

.switch { position: relative; display: inline-block; width: 38px; height: 22px; }
.switch input { opacity: 0; width: 0; height: 0; }
.slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background: #2b3342; transition: .2s; border-radius: 22px; }
.slider:before { position: absolute; content: ""; height: 16px; width: 16px; left: 3px; bottom: 3px; background: white; transition: .2s; border-radius: 50%; }
input:checked + .slider { background: var(--primary); }
input:checked + .slider:before { transform: translateX(16px); }

.modal { position: fixed; inset: 0; background: rgba(0,0,0,0.8); display: none; align-items: center; justify-content: center; z-index: 9999; }
.modal .wrap { display:flex; gap:12px; background:var(--panel); padding:10px; border-radius:10px; border:1px solid rgba(255,255,255,0.06); }
.modal img { max-width:45vw; max-height:90vh; background:#fff; }
.modal .wrap.dialog {
  width:min(520px, 92vw);
  padding:18px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.dialogTitle { font-size:16px; font-weight:700; }
#commentInput {
  min-height:140px;
  resize:vertical;
  background:#0c1118;
  color:var(--ink);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  padding:10px;
  font-size:14px;
}
#guidanceInput {
  min-height:140px;
  resize:vertical;
  background:#0c1118;
  color:var(--ink);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  padding:10px;
  font-size:17px;
}
.dialogActions { display:flex; justify-content:flex-end; gap:8px; }
.historyBox .dialogActions { margin-top:8px; }
.catalogFiscalGrid {
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:10px 12px;
}
.catalogFiscalField {
  display:flex;
  flex-direction:column;
  gap:7px;
  color:var(--muted);
  font-size:12px;
}
.catalogFiscalField > span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.01em;
}
.catalogFiscalPctWrap {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 12px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,0.08);
  background: #0c1118;
}
.catalogFiscalPctWrap:focus-within {
  border-color: rgba(255,255,255,0.22);
}
.catalogFiscalPctInput {
  width: 100%;
  min-width: 0;
  max-width: none;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--ink);
  text-align: right;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  padding: 10px 0 !important;
}
.catalogFiscalPctInput::placeholder {
  color: rgba(255,255,255,0.36);
}
.catalogFiscalPctSuffix {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
.catalogFiscalField:last-child {
  grid-column: span 2;
}
.catalogFiscalPolicyField {
  grid-column: span 2;
}
.catalogFiscalPolicyInput {
  min-height: 92px;
  resize: vertical;
  background: #0c1118;
  color: var(--ink);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 13px;
  line-height: 1.4;
}
.catalogFiscalPolicyInput:focus {
  outline: none;
  border-color: rgba(255,255,255,0.22);
}
.catalogContactsRows {
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:2px;
  max-height:320px;
  overflow:auto;
  padding-right:2px;
}
.catalogContactsRows::-webkit-scrollbar { width:6px; }
.catalogContactsRows::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.12); border-radius:6px; }
.catalogContactsRows::-webkit-scrollbar-track { background:transparent; }
.catalogContactRow {
  display:grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.2fr) auto;
  gap:8px;
  align-items:center;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;
  background:rgba(8,12,18,0.44);
  padding:8px;
}
.catalogContactInput {
  min-width:0;
  width:100%;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,0.1);
  border-radius:8px;
  background:#0c1118;
  color:var(--ink);
  font-size:12px;
  padding:7px 9px;
}
.catalogContactInput::placeholder {
  color:rgba(255,255,255,0.34);
}
.catalogContactInput:focus {
  outline:none;
  border-color:rgba(255,255,255,0.24);
}
.catalogContactRemove {
  width:28px;
  height:28px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.16);
  background:transparent;
  color:var(--muted);
  cursor:pointer;
  font-size:14px;
  line-height:1;
}
.catalogContactRemove:hover {
  color:#fff;
  border-color:rgba(255,255,255,0.28);
  background:rgba(255,255,255,0.08);
}
.catalogContactsAdd {
  margin-top:10px;
}
#catalogContactsModal .historyBox {
  width:min(980px, 94vw);
}
@media (max-width: 1180px) {
  .catalogContactRow {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .catalogContactRemove {
    justify-self:end;
  }
}
#summaryPurchasePolicy {
  white-space: pre-wrap;
}
@media (max-width: 900px) {
  .workspace {
    display:block;
    padding:12px;
    height:auto;
    min-height:calc(100vh - 64px);
  }
  .itemsPanel {
    height:auto;
    min-height:calc(100vh - 88px);
    padding:14px;
    border-radius:18px;
  }
  .searchRow {
    align-items:stretch;
  }
  .workspaceCatalogBtn {
    display:inline-flex;
  }
  .itemsBulkToggle {
    width:34px;
    height:34px;
    border-radius:10px;
  }
  .detailPanel {
    position:fixed;
    inset:64px 0 0;
    z-index:40;
    border-radius:22px 22px 0 0;
    padding:12px 12px 18px;
    transform:translateY(100%);
    opacity:0;
    pointer-events:none;
    transition:transform .24s ease, opacity .24s ease;
  }
  .workspace.mobilePanelOpen .detailPanel {
    transform:translateY(0);
    opacity:1;
    pointer-events:auto;
  }
  .workspaceItemsToggle {
    display:none !important;
  }
  .workspaceMobileBar {
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:10px;
    padding:0 2px;
  }
  .workspaceMobileBack {
    width:36px;
    height:36px;
    border-radius:11px;
    border:1px solid rgba(255,255,255,0.14);
    background:rgba(255,255,255,0.04);
    color:var(--ink);
    font-size:18px;
    cursor:pointer;
  }
  .workspaceMobileBarTitle {
    min-width:0;
    font-size:14px;
    font-weight:700;
    color:var(--ink);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .catalogSummary,
  .itemDetail {
    max-height:calc(100dvh - 130px);
    padding-right:0;
  }
  .itemDetail {
    margin-top:0;
    height:auto;
  }
  .catalogFiscalGrid {
    grid-template-columns: 1fr;
  }
  .catalogFiscalField:last-child {
    grid-column: auto;
  }
  .catalogFiscalPolicyField {
    grid-column: auto;
  }
  .catalogContactRow {
    grid-template-columns: 1fr;
  }
  .catalogContactRemove {
    justify-self:end;
  }
  .summaryAttachmentCard {
    min-width:176px;
    max-width:196px;
  }
}

body[data-mobile-ui="1"][data-view="login"] .loginPage {
  align-items: center;
  justify-content: center;
  padding-top: 24px;
  padding-bottom: 24px;
}
body[data-mobile-ui="1"][data-view="login"] .loginCard {
  width: min(356px, 100%);
  padding: 24px 18px 20px;
  border-radius: 20px;
}
body[data-mobile-ui="1"][data-view="login"] .loginTitle {
  font-size: 22px;
}
body[data-mobile-ui="1"][data-view="login"] .loginCodeActions {
  flex-direction: column-reverse;
}

body[data-mobile-ui="1"] header {
  padding: 0 12px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  column-gap: 10px;
}
body[data-mobile-ui="1"] .brandTop {
  justify-self: start;
  gap: 8px;
  min-width: 0;
}
body[data-mobile-ui="1"] .brandTopText {
  font-size: 14px;
  letter-spacing: 0.2px;
  white-space: nowrap;
}
body[data-mobile-ui="1"] .logo-mini {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
}
body[data-mobile-ui="1"] .topVersionChip {
  max-width: 110px;
  padding: 0 8px;
  font-size: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
}
body[data-mobile-ui="1"][data-view="catalogos"] .sectionTitle,
body[data-mobile-ui="1"][data-view="catalogos"] .catalogSearch,
body[data-mobile-ui="1"][data-view="catalogos"] .catalogSearchResults,
body[data-mobile-ui="1"][data-view="catalogos"] .catalogs {
  width: min(100vw - 24px, 100%);
}
body[data-mobile-ui="1"][data-view="catalogos"] .catalogSearch {
  padding-left: 0;
  padding-right: 0;
}
body[data-mobile-ui="1"][data-view="catalogos"] .catalogs {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body[data-mobile-ui="1"][data-view="novo"] .preview {
  padding: 0;
}
body[data-mobile-ui="1"][data-view="novo"] .previewPanel {
  border-radius: 0;
  padding: 8px;
}
body[data-mobile-ui="1"][data-view="novo"] .previewLeft {
  min-height: calc(100vh - 120px);
  border-radius: 16px;
}
body[data-mobile-ui="1"][data-view="novo"] .loadingLogo {
  width: 64px;
  height: 64px;
}
body[data-mobile-ui="1"][data-view="novo"] .loadingText {
  font-size: 13px;
}
body[data-mobile-ui="1"][data-view="novo"] .previewRight {
  position: fixed;
  left: 8px;
  right: 8px;
  bottom: 8px;
  z-index: 1001;
  min-height: 0;
  max-height: 78vh;
  padding: 14px;
  border-radius: 22px;
  background: rgba(18,24,35,0.98);
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow: 0 26px 50px rgba(0,0,0,0.38);
  overflow-x: visible;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  touch-action: pan-y;
  transform: translateY(calc(100% - 44px));
  transition: transform .22s ease;
}
body[data-mobile-ui="1"][data-view="novo"] .previewRight.is-open {
  transform: translateY(0);
}
body[data-mobile-ui="1"][data-view="novo"] .previewControlsBackdrop {
  position: fixed;
  inset: 64px 0 0 0;
  z-index: 1000;
  background: rgba(8,12,18,0.38);
  backdrop-filter: blur(4px);
}
body[data-mobile-ui="1"][data-view="novo"] .previewControlsHeader {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  margin-bottom: 6px;
}
body[data-mobile-ui="1"][data-view="novo"] .previewControlsHeader strong {
  font-size: 14px;
}
body[data-mobile-ui="1"][data-view="novo"] .previewMobileControlsBtn {
  display: inline-flex;
  position: absolute;
  top: -8px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
  align-items: center;
  justify-content: center;
  width: 68px;
  height: 18px;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(18,24,35,0.98);
  cursor: pointer;
  box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}
body[data-mobile-ui="1"][data-view="novo"] .previewMobileControlsGrip {
  width: 36px;
  height: 4px;
  border-radius: 999px;
  background: rgba(255,255,255,0.34);
}

body[data-mobile-ui="1"][data-view="workspace"] .selectBox {
  width: 100vw;
  max-width: none;
  height: min(92dvh, 860px);
  max-height: min(92dvh, 860px);
  border-radius: 24px 24px 0 0;
  padding: 8px 12px calc(12px + env(safe-area-inset-bottom, 0px));
  box-shadow: 0 -20px 44px rgba(0,0,0,0.4);
}
body[data-mobile-ui="1"][data-view="workspace"] .selectModal {
  align-items:flex-end;
  padding-top:max(12px, env(safe-area-inset-top, 0px));
}
body[data-mobile-ui="1"][data-view="workspace"] .selectSheetGrip {
  display:flex;
  align-items:center;
  justify-content:center;
  padding:2px 0 6px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectHeader {
  margin-bottom: 8px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectHero {
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 10px;
  padding: 8px 10px;
  border-radius: 14px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectHero img {
  width: 76px;
  height: 76px;
  min-height: 76px;
  border-radius: 10px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectHeroTitleRow {
  align-items: flex-start;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectTopStack {
  gap:10px;
  margin-bottom:6px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectStageTrack {
  margin:0;
  padding:0 8px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsOpen {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  border-radius:12px;
  margin-top:2px;
  margin-bottom:4px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheet {
  position:fixed;
  inset:0;
  z-index:1002;
  display:block;
  pointer-events:none;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsBackdrop {
  position:absolute;
  inset:0;
  display:block;
  background:rgba(4,8,12,0.52);
  backdrop-filter:blur(4px);
  opacity:0;
  transition:opacity .18s ease;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheetCard {
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  display:flex;
  flex-direction:column;
  gap:10px;
  max-height:min(72dvh, 560px);
  padding:12px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(20,27,36,0.98), rgba(12,17,24,0.98));
  box-shadow:0 18px 40px rgba(0,0,0,0.35);
  transform:translateY(18px);
  opacity:0;
  transition:transform .18s ease, opacity .18s ease;
  overflow:auto;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheet.isOpen {
  pointer-events:auto;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheet.isOpen .selectControlsBackdrop {
  opacity:1;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheet.isOpen .selectControlsSheetCard {
  transform:translateY(0);
  opacity:1;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheetHeader {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheetTitle {
  font-size:13px;
  font-weight:800;
  color:var(--ink);
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsClose {
  width:30px;
  height:30px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.06);
  color:var(--ink);
  font-size:18px;
  line-height:1;
  cursor:pointer;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectCalcToggle {
  width: 32px;
  height: 32px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheetCard .selectQueryRow {
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:8px;
  margin-bottom:0;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheetCard .selectQueryInput {
  grid-column:1 / -1;
  width: 100%;
  box-sizing:border-box;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheetCard .selectQueryRow #selectCancelScrape {
  grid-column:1 / -1;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheetCard .selectFiltersBar {
  gap:8px;
  margin:0;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheetCard .selectFilterPills {
  flex:1 1 100%;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheetCard .selectFiltersActions,
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheetCard .selectFilterInvertWrap {
  width:100%;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectControlsSheetCard .selectInfo {
  font-size:11px;
  margin-top:0;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectGrid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 6px 2px 10px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectCard {
  min-height: 172px;
  aspect-ratio: 0.9;
  border-radius: 14px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectCardBody {
  padding: 8px 9px 9px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectCardTitle {
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectCardMeta,
body[data-mobile-ui="1"][data-view="workspace"] .selectCardBadges {
  gap:5px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectPrice {
  font-size: 12px;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectActions {
  margin-top:0;
  padding-top:10px;
  padding-inline:2px;
  border-top:1px solid rgba(255,255,255,0.08);
  background:linear-gradient(180deg, rgba(12,17,24,0.02), rgba(12,17,24,0.82) 28%);
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
  overflow-x:auto;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectActionsLeft,
body[data-mobile-ui="1"][data-view="workspace"] .selectActionsRight {
  display:contents;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectReturnItem {
  display:inline-flex;
}
body[data-mobile-ui="1"][data-view="workspace"] #selectBack,
body[data-mobile-ui="1"][data-view="workspace"] #selectToB2,
body[data-mobile-ui="1"][data-view="workspace"] #selectSave,
body[data-mobile-ui="1"][data-view="workspace"] #selectReturnItem,
body[data-mobile-ui="1"][data-view="workspace"] #selectReject {
  min-height:38px;
  justify-content:center;
  flex:1 1 0;
  min-width:0;
  padding:8px 10px;
  font-size:11.5px;
  white-space:nowrap;
}
body[data-mobile-ui="1"][data-view="workspace"] .selectCountsFooter {
  justify-content:center;
  align-items:center;
  flex:0 0 auto;
  min-width:64px;
  min-height:38px;
  padding:0 10px;
  font-size:11px;
  white-space:nowrap;
  border-radius:12px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.04);
  box-sizing:border-box;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareBox {
  width: 100vw;
  max-width: none;
  height: min(92dvh, 860px);
  max-height: min(92dvh, 860px);
  border-radius: 24px 24px 0 0;
  padding: 8px 12px calc(12px + env(safe-area-inset-bottom, 0px));
  box-shadow: 0 -22px 44px rgba(0,0,0,0.42);
}
body[data-mobile-ui="1"][data-view="workspace"] .compareModal {
  align-items: flex-end;
  justify-content: stretch;
  padding-top: max(12px, env(safe-area-inset-top, 0px));
}
body[data-mobile-ui="1"][data-view="workspace"] .compareSheetGrip {
  display:flex;
  justify-content:center;
  margin-bottom:8px;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareTitleRow {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  margin-bottom:8px;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareTitleBlock {
  flex:1 1 auto;
  min-width:0;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareClose {
  flex:0 0 36px;
  width:36px;
  height:36px;
  border-radius:12px;
  margin-left:auto;
  align-self:flex-start;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareGrid {
  grid-template-columns: 1fr;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  gap: 10px;
  flex: 1 1 auto;
  min-height: 0;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareCol {
  min-height: 0;
  display:grid;
  grid-template-rows:auto minmax(0, 1fr);
}
body[data-mobile-ui="1"][data-view="workspace"] .compareMedia {
  min-height: 0;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareGrid > .compareCol:first-child .compareMedia img,
body[data-mobile-ui="1"][data-view="workspace"] .compareGrid > .compareCol:last-child .compareMedia img {
  object-fit: contain;
  width: 100%;
  height: 100%;
  padding: 8px 8px 18px;
  background: #0b1018;
  -webkit-mask-image: none;
  mask-image: none;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareColHeader {
  padding: 10px 12px 8px;
  gap: 4px;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareTitleText {
  font-size: 11px;
  line-height: 1.3;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareMeta {
  padding: 8px 10px;
  font-size: 11px;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareNavRow {
  display: grid;
  align-items: center;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px;
  margin-top: 10px;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareReturnItem {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  font-size: 12px;
  white-space: nowrap;
}
body[data-mobile-ui="1"][data-view="workspace"] .compareNav {
  position: static;
  transform: none;
  z-index: auto;
  width: 100%;
  min-width: 0;
  height: 42px;
  font-size: 12px;
  padding: 0 10px;
}
body[data-mobile-ui="1"][data-view="workspace"] .comparePrev::before,
body[data-mobile-ui="1"][data-view="workspace"] .compareNext::before {
  content: none;
}
body[data-mobile-ui="1"][data-view="workspace"] .analysisTitleRow {
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  row-gap: 6px;
}
body[data-mobile-ui="1"][data-view="workspace"] .analysisTitleKey {
  grid-column: 1 / 2;
}
body[data-mobile-ui="1"][data-view="workspace"] .analysisTitleValueWrap {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}
body[data-mobile-ui="1"][data-view="workspace"] .analysisTitleStats {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
  justify-self: end;
}
body[data-mobile-ui="1"][data-view="workspace"] .imgGenRowRight {
  width: 100%;
  margin-left: 0;
  flex-wrap: wrap;
  justify-content: flex-start;
}
body[data-mobile-ui="1"][data-view="workspace"] .summaryHero {
  --summary-cover-w: 132px;
  --summary-cover-h: 182px;
  grid-template-columns: 1fr;
}
body[data-mobile-ui="1"][data-view="workspace"] .summaryMain {
  height: auto;
  min-height: 0;
  gap: 8px;
}
body[data-mobile-ui="1"][data-view="workspace"] .summaryCover {
  width: var(--summary-cover-w);
  height: var(--summary-cover-h);
  margin: 0 auto;
}
body[data-mobile-ui="1"][data-view="workspace"] .summaryCover img {
  width: var(--summary-cover-w);
  height: var(--summary-cover-h);
}
body[data-mobile-ui="1"][data-view="workspace"] .summaryNotesGrid {
  grid-template-columns: 1fr;
}
body[data-mobile-ui="1"][data-view="workspace"] .summaryStats {
  grid-template-columns: 1fr;
}
body[data-mobile-ui="1"][data-view="workspace"] .summaryBlockWide {
  grid-column: auto;
}
body[data-mobile-ui="1"][data-view="workspace"] .summaryActionsSpacer {
  display: none;
}
body[data-mobile-ui="1"][data-view="workspace"] .summaryActionsRow {
  gap: 8px;
}
body[data-mobile-ui="1"][data-view="workspace"] .workspace {
  display: block;
  padding: 12px;
  height: auto;
  min-height: calc(100vh - 64px);
}
body[data-mobile-ui="1"][data-view="workspace"] .itemsPanel {
  height: auto;
  min-height: calc(100vh - 88px);
  padding: 14px;
  border-radius: 18px;
}
body[data-mobile-ui="1"][data-view="workspace"] .searchRow {
  align-items:center;
}
body[data-mobile-ui="1"][data-view="workspace"] .workspaceCatalogBtn {
  display:none;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemsSortIconWrap,
body[data-mobile-ui="1"][data-view="workspace"] .itemsBulkToggle {
  width:34px;
  height:34px;
  border-radius:10px;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemsSortCompactIcon {
  transform:scale(1.08);
}
body[data-mobile-ui="1"][data-view="workspace"] .itemsBulkToggleIcon {
  transform:scale(1.08);
}
body[data-mobile-ui="1"][data-view="workspace"] .detailPanel {
  position: fixed;
  inset: 64px 0 0;
  z-index: 40;
  border-radius: 22px 22px 0 0;
  padding: 12px 12px 18px;
  transform: translateY(100%);
  opacity: 0;
  pointer-events: none;
  transition: transform .24s ease, opacity .24s ease;
}
body[data-mobile-ui="1"][data-view="workspace"] .workspace.mobilePanelOpen .detailPanel {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}
body[data-mobile-ui="1"][data-view="workspace"] .workspaceItemsToggle {
  display: none !important;
}
body[data-mobile-ui="1"][data-view="workspace"] .workspaceMobileBar {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  padding: 0 2px;
}
body[data-mobile-ui="1"][data-view="workspace"] .workspaceMobileBack {
  width: 36px;
  height: 36px;
  border-radius: 11px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.04);
  color: var(--ink);
  font-size: 18px;
  cursor: pointer;
}
body[data-mobile-ui="1"][data-view="workspace"] .workspaceMobileBarTitle {
  min-width: 0;
  font-size: 14px;
  font-weight: 700;
  color: var(--ink);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
body[data-mobile-ui="1"][data-view="workspace"] .catalogSummary,
body[data-mobile-ui="1"][data-view="workspace"] .itemDetail {
  max-height: calc(100dvh - 130px);
  padding-right: 0;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemDetail {
  margin-top: 0;
  height: auto;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemsList {
  gap:12px;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemCard {
  grid-template-columns: 96px 1fr;
  min-height: 104px;
  border-radius: 16px;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemThumb {
  height: 104px;
  min-height: 104px;
  max-height: 104px;
  object-fit: cover;
  -webkit-mask-image: none;
  mask-image: none;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemContent {
  padding: 10px 12px 10px 0;
  gap: 6px;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTopRow {
  align-items: flex-start;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTitle {
  font-size: 14px;
  line-height: 1.3;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemMeta.itemMetaSmall {
  font-size: 11px;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemHero {
  grid-template-columns: 1fr;
  gap: 0;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemHeroMedia {
  min-height: 0;
  height: clamp(220px, 58vw, 300px);
  aspect-ratio: auto;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at top, rgba(86,142,255,0.14), transparent 58%),
    rgba(7,10,15,0.94);
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
body[data-mobile-ui="1"][data-view="workspace"] .itemHeroMedia img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  -webkit-mask-image: none;
  mask-image: none;
  background: transparent;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemImageActions {
  top: 12px;
  right: 12px;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemHeroInfo {
  min-height: 0;
  padding: 16px 14px 18px;
  gap: 14px;
  background: linear-gradient(180deg, rgba(12,17,24,0.66), rgba(12,17,24,0.88));
}
body[data-mobile-ui="1"][data-view="workspace"] .itemHeroTitleRow {
  display:grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px 8px;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemHeroTitle,
body[data-mobile-ui="1"][data-view="workspace"] .itemTitleEdit {
  grid-column: 1 / -1;
  width: 100%;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.01em;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTitleActions {
  width: 100%;
  margin-left: 0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTitleActions .titleAction {
  width: 30px;
  height: 30px;
  border-radius: 9px;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemStatusInline,
body[data-mobile-ui="1"][data-view="workspace"] .itemStatusSourceWrap,
body[data-mobile-ui="1"][data-view="workspace"] .itemUpdatedAt {
  margin-left: 0;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemStatusInline {
  min-width: 0;
  width: 100%;
  grid-column: 1 / 2;
  justify-self: stretch;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemStatusSourceWrap {
  grid-column: 2 / 3;
  justify-self: end;
  align-self: center;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemHeroFields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemField {
  min-width: 0;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.04);
}
body[data-mobile-ui="1"][data-view="workspace"] .itemFieldLabel {
  font-size:10px;
  font-weight:700;
  letter-spacing:0.05em;
  text-transform:uppercase;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemFieldValue {
  font-size:14px;
  line-height:1.35;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemField.itemFieldKitInline {
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemField.itemFieldWide,
body[data-mobile-ui="1"][data-view="workspace"] .itemField.itemFieldKitInline {
  grid-column: 1 / -1;
  margin-left: 0;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemHeroCommentRow {
  margin-top: 0;
  padding:12px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.04);
}
body[data-mobile-ui="1"][data-view="workspace"] .itemHeroMetaRow {
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 0;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.04);
}
body[data-mobile-ui="1"][data-view="workspace"] .itemHeroMeta {
  margin-top: 0;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTabsRail {
  position:relative;
  margin: 0 -2px;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTabsRail::before,
body[data-mobile-ui="1"][data-view="workspace"] .itemTabsRail::after {
  content:"";
  position:absolute;
  top:0;
  bottom:10px;
  width:18px;
  z-index:1;
  pointer-events:none;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTabsRail::before {
  left:0;
  background:linear-gradient(90deg, rgba(15,21,30,0.92), rgba(15,21,30,0));
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTabsRail::after {
  right:0;
  background:linear-gradient(270deg, rgba(15,21,30,0.92), rgba(15,21,30,0));
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTabs {
  gap: 8px;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0 10px 10px;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTabs::-webkit-scrollbar {
  display: none;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTabs .tab {
  flex: 0 0 auto;
  white-space: nowrap;
  scroll-snap-align: start;
  padding: 8px 12px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.04);
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTabs .tab.active {
  border-color: rgba(86,142,255,0.36);
  box-shadow: 0 0 0 1px rgba(86,142,255,0.12) inset;
}
body[data-mobile-ui="1"][data-view="workspace"] .itemTabBody {
  padding: 14px;
}
