/* Alerta de confirmación estilo nativo (iOS/macOS) — chica, centrada, dos
   botones separados por una línea, misma en desktop y en móvil (a
   propósito NO reutiliza .mv7-dialog: ese pasa a bottom-sheet en móvil,
   y acá queremos que la alerta siga siendo compacta y centrada siempre). */
.mv7-alert-dialog {
  width: min(300px, calc(100% - 48px));
  padding: 0;
  border: 1px solid var(--v2-line-strong);
  border-radius: 14px;
  background: #17191c;
  box-shadow: 0 40px 100px rgba(0, 0, 0, 0.72);
  color: var(--v2-text);
  overflow: hidden;
}
.mv7-alert-dialog::backdrop {
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(4px);
}
.mv7-alert-dialog[open] {
  animation: v2-alert-in 180ms cubic-bezier(0.2, 0.8, 0.2, 1) both;
}
@keyframes v2-alert-in {
  from { opacity: 0; transform: scale(0.92); }
  to { opacity: 1; transform: scale(1); }
}
.mv7-alert-body { padding: 20px 16px 16px; text-align: center; }
.mv7-alert-body h2 { margin: 0 0 6px; font-size: 16px; font-weight: 620; letter-spacing: -0.01em; }
.mv7-alert-body p { margin: 0; color: var(--v2-muted); font-size: 13px; line-height: 1.4; }
.mv7-alert-body p[hidden] { display: none; }
.mv7-alert-actions { display: flex; border-top: 1px solid var(--v2-line-strong); }
.mv7-alert-button {
  flex: 1;
  padding: 13px 8px;
  border: 0;
  background: transparent;
  color: var(--v2-text);
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
}
.mv7-alert-button + .mv7-alert-button { border-left: 1px solid var(--v2-line-strong); }
.mv7-alert-button:hover, .mv7-alert-button:focus-visible { background: rgba(255, 255, 255, 0.06); }
.mv7-alert-button-accent { color: var(--v2-green-bright); font-weight: 650; }
.mv7-alert-button-danger { color: #ff827b; font-weight: 650; }

.mv7-type-switch {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3px;
  padding: 3px;
  margin-bottom: 17px;
  border: 1px solid var(--v2-line);
  border-radius: 9px;
  background: #060807;
}

.mv7-type-switch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.mv7-type-switch span {
  display: grid;
  min-height: 34px;
  place-items: center;
  border-radius: 6px;
  color: var(--v2-muted);
  cursor: pointer;
  font-size: var(--v2-text-sm);
}

.mv7-type-switch input:checked + span {
  background: var(--v2-surface-raised);
  box-shadow: inset 0 0 0 1px var(--v2-line);
  color: var(--v2-text);
}

.mv7-type-switch--triple {
  grid-template-columns: repeat(3, 1fr);
}

.mv7-type-switch--triple span {
  padding: 0 2px;
  font-size: var(--v2-text-xs);
}

.mv7-field {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 7px;
  margin-bottom: 14px;
}

.mv7-field > span {
  color: var(--v2-muted);
  font-size: var(--v2-text-xs);
}

.mv7-field input,
.mv7-field select {
  width: 100%;
  min-width: 0;
  height: 40px;
  padding: 0 11px;
  border: 1px solid var(--v2-line);
  border-radius: 8px;
  outline: 0;
  background: #060807;
  color: var(--v2-text);
  font-size: 12px;
}

.mv7-field input:focus,
.mv7-field select:focus {
  border-color: rgba(45, 222, 152, 0.45);
  box-shadow: 0 0 0 3px rgba(45, 222, 152, 0.055);
}

.mv7-form-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
}

/* Login/registro/recuperar — reusa .mv7-field/.mv7-primary-button/
   .mv7-secondary-button de los composers, esto solo cubre lo específico
   de auth-dialog (paneles, estado, botón de Google, links de texto). */
.mv7-auth-dialog {
  width: min(400px, calc(100% - 28px));
}

.mv7-auth-status {
  margin: -6px 0 14px;
  padding: 9px 12px;
  border-radius: 9px;
  font-size: var(--v2-text-sm);
  line-height: 1.4;
}

.mv7-auth-status.is-error {
  background: rgba(255, 90, 90, 0.1);
  color: #ff9b9b;
}

.mv7-auth-status.is-success {
  background: var(--v2-green-soft);
  color: var(--v2-green);
}

.mv7-auth-status.is-info {
  background: rgba(255, 255, 255, 0.045);
  color: var(--v2-muted);
}

.mv7-auth-forgot {
  margin: -6px 0 4px;
  text-align: right;
}

.mv7-auth-link {
  border: 0;
  background: none;
  color: var(--v2-green);
  cursor: pointer;
  font-size: var(--v2-text-sm);
  font-weight: 600;
}

.mv7-auth-link:hover {
  color: var(--v2-green-bright);
}

.mv7-auth-hint {
  margin: 0 0 14px;
  color: var(--v2-muted);
  font-size: var(--v2-text-sm);
  line-height: 1.5;
}

.mv7-auth-divider {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 14px 0;
}

.mv7-auth-divider span {
  flex: 1;
  height: 1px;
  background: var(--v2-line);
}

.mv7-auth-divider small {
  color: var(--v2-dim);
  font-size: var(--v2-text-xs);
  text-transform: uppercase;
}

.mv7-auth-google {
  width: 100%;
}

.mv7-auth-switch {
  margin: 14px 0 0;
  color: var(--v2-muted);
  font-size: var(--v2-text-sm);
  text-align: center;
}

.mv7-otp-field {
  letter-spacing: 0.5em;
  text-align: center;
  font-family: var(--v2-mono);
  font-size: 16px !important;
}

.mv7-mfa-qr {
  display: grid;
  place-items: center;
  width: 176px;
  height: 176px;
  margin: 0 auto 12px;
  padding: 10px;
  border: 1px solid var(--v2-line);
  border-radius: 12px;
  background: #fff;
}

.mv7-mfa-qr svg {
  width: 100%;
  height: 100%;
}

.mv7-mfa-secret {
  margin: 0 0 16px;
  color: var(--v2-muted);
  text-align: center;
  font-family: var(--v2-mono);
  font-size: var(--v2-text-sm);
  letter-spacing: 0.05em;
  word-break: break-all;
}

.mv7-account-menu-dialog {
  width: min(360px, calc(100% - 28px));
}

.mv7-account-menu-email {
  margin: 0 0 4px;
  color: var(--v2-text);
  font-size: 13px;
  font-weight: 600;
}

.mv7-account-menu-sync {
  margin: 0 0 18px;
  color: var(--v2-muted);
  font-size: var(--v2-text-sm);
}

/* Punto verde en el avatar de la topbar cuando hay sesión activa. */
#profile-button {
  position: relative;
}

#profile-button[data-auth-state='active']::after {
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 10px;
  height: 10px;
  border: 2px solid #0b0e0c;
  border-radius: 50%;
  background: var(--v2-green);
  content: '';
}

.mv7-toast {
  position: fixed;
  z-index: 100;
  min-width: 180px;
  padding: 11px 14px;
  border: 1px solid rgba(45, 222, 152, 0.24);
  border-radius: 9px;
  background: #0b120e;
  box-shadow: 0 16px 50px rgba(0, 0, 0, 0.4);
  color: #caffdf;
  font-size: var(--v2-text-sm);
  opacity: 0;
  pointer-events: none;
  right: 24px;
  bottom: 24px;
  transform: translateY(8px);
  transition:
    opacity 180ms ease,
    transform 180ms ease;
}

.mv7-toast.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 1400px) {
  .mv7-tx-layout {
    grid-template-columns: minmax(0, 1fr) 275px;
  }

  .mv7-tx-columns,
  .mv7-tx-row {
    grid-template-columns: minmax(150px, 1.3fr) minmax(86px, 0.75fr) minmax(72px, 0.6fr) minmax(
        100px,
        0.8fr
      );
  }

  .mv7-tx-columns span:nth-child(3),
  .mv7-tx-columns span:nth-child(5),
  .mv7-tx-cell-account,
  .mv7-tx-cell-status {
    display: none;
  }

  .mv7-tx-summary-item strong {
    font-size: clamp(15px, 1.35vw, 20px);
  }
}

@media (max-width: 1120px) {
  :root {
    --v2-sidebar-width: 238px;
  }

  .mv7-metric-grid {
    grid-template-columns: 1fr 1fr;
  }

  .mv7-metric-primary {
    grid-column: 1 / -1;
  }

  .mv7-analysis-grid {
    grid-template-columns: minmax(0, 1.55fr) minmax(220px, 0.85fr);
  }

  .mv7-transaction-row {
    grid-template-columns: 34px minmax(120px, 1fr) minmax(85px, 0.7fr) auto;
  }

  .mv7-transaction-row > span:nth-of-type(2) {
    display: none;
  }
}

@media (max-width: 860px) {
  .mv7-analysis-grid {
    grid-template-columns: 1fr;
  }

  .mv7-account-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 20px;
  }

  .mv7-tx-summary {
    grid-template-columns: 1fr 1fr;
  }

  .mv7-tx-summary-item:nth-child(3) {
    border-top: 1px solid var(--v2-line);
  }

  .mv7-tx-mini-chart {
    border-top: 1px solid var(--v2-line);
  }

  .mv7-tx-filters {
    flex-wrap: wrap;
  }

  .mv7-tx-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .mv7-tx-inspector {
    position: static;
  }
}

@media (max-width: 768px) {
  :root {
    --v2-topbar-height: 72px;
  }

  body {
    background:
      radial-gradient(circle at 105% 12%, rgba(140, 142, 138, 0.11), transparent 24rem),
      linear-gradient(160deg, #070908, var(--v2-canvas) 48%);
  }

  .mv7-ambient {
    display: none;
  }

  .mv7-app {
    display: block;
    width: 100%;
    min-height: 100dvh;
    margin: 0;
    overflow: visible;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }

  .mv7-sidebar {
    position: fixed;
    z-index: 80;
    width: min(312px, calc(100% - 42px));
    min-height: 100dvh;
    padding-top: max(22px, env(safe-area-inset-top));
    border-right-color: var(--v2-line-strong);
    box-shadow: 24px 0 70px rgba(0, 0, 0, 0.65);
    inset: 0 auto 0 0;
    transform: translateX(-105%);
    transition: transform 260ms cubic-bezier(0.2, 0.8, 0.2, 1);
  }

  .mv7-sidebar.is-open {
    transform: translateX(0);
  }

  .mv7-sidebar-scrim {
    position: fixed;
    z-index: 70;
    display: block;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
    opacity: 0;
    pointer-events: none;
    transition: opacity 220ms ease;
  }

  .mv7-sidebar-scrim.is-open {
    opacity: 1;
    pointer-events: auto;
  }

  .mv7-sidebar-close,
  .mv7-menu-button {
    display: grid;
  }

  .mv7-topbar {
    position: sticky;
    top: 0;
    min-height: var(--v2-topbar-height);
    padding: max(12px, env(safe-area-inset-top)) 15px 12px;
  }

  .mv7-topbar-actions {
    gap: 6px;
  }

  .mv7-topbar-actions .mv7-icon-button:first-child {
    display: none;
  }

  .mv7-page-icon {
    display: none;
  }

  .mv7-page-identity {
    flex: 1;
    gap: 0;
  }

  .mv7-page-identity h1 {
    font-size: 15px;
  }

  .mv7-page-identity p {
    max-width: 47vw;
    font-size: var(--v2-text-xs);
  }

  .mv7-content {
    padding: 22px 14px calc(34px + env(safe-area-inset-bottom));
  }

  .mv7-section-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 17px;
    margin-bottom: 16px;
  }

  .mv7-section-heading h2 {
    font-size: 29px;
  }

  .mv7-heading-tools {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr auto;
  }

  .mv7-preview-badge {
    position: absolute;
    top: 88px;
    right: 14px;
  }

  .mv7-period-control {
    justify-content: space-between;
  }

  .mv7-primary-button {
    min-height: 40px;
  }

  .mv7-primary-button span {
    display: none;
  }

  .mv7-metric-grid {
    display: flex;
    gap: 10px;
    padding-right: 14px;
    margin-right: -14px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .mv7-metric-grid::-webkit-scrollbar {
    display: none;
  }

  .mv7-metric {
    width: min(82vw, 330px);
    min-width: min(82vw, 330px);
    min-height: 183px;
    scroll-snap-align: start;
  }

  .mv7-metric-primary {
    grid-column: auto;
  }

  .mv7-metric > strong {
    font-size: 24px;
  }

  .mv7-analysis-grid {
    margin-top: 10px;
  }

  .mv7-panel,
  .mv7-metric {
    border-radius: 18px;
  }

  .mv7-panel-header {
    min-height: 64px;
    padding: 13px 14px;
  }

  .mv7-chart-wrap {
    padding: 17px 12px 7px 42px;
  }

  .mv7-main-chart {
    height: 220px;
  }

  .mv7-chart-axis {
    width: 34px;
    height: 180px;
    left: 4px;
    top: 26px;
  }

  .mv7-account-list {
    display: flex;
    padding-inline: 13px;
  }

  .mv7-activity-panel {
    margin-top: 10px;
  }

  .mv7-transaction-list {
    padding: 7px 13px 12px;
  }

  .mv7-transaction-row {
    min-height: 64px;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    gap: 10px;
  }

  .mv7-transaction-row > span {
    display: none;
  }

  .mv7-transaction-amount {
    font-size: var(--v2-text-xs);
  }

  .mv7-panel-stats strong {
    font-size: var(--v2-text-sm);
  }

  .mv7-secondary-view {
    min-height: calc(100dvh - var(--v2-topbar-height));
    padding: 18px 14px;
  }

  .mv7-secondary-copy {
    min-height: 440px;
    padding: 28px;
  }

  .mv7-secondary-copy .mv7-page-icon {
    display: grid;
  }

  .mv7-transactions-view {
    padding: 21px 14px calc(34px + env(safe-area-inset-bottom));
  }

  .mv7-tx-heading {
    align-items: center;
    margin-bottom: 17px;
  }

  .mv7-tx-heading h2 {
    font-size: 27px;
  }

  .mv7-tx-heading > div > p:last-child {
    max-width: 270px;
    font-size: var(--v2-text-xs);
    line-height: 1.5;
  }

  .mv7-tx-summary {
    grid-template-columns: 1fr 1fr;
    border-radius: 12px;
  }

  .mv7-tx-summary-item {
    min-height: 100px;
    padding: 15px;
  }

  .mv7-tx-summary-item:first-child {
    grid-column: 1 / -1;
    border-right: 0;
  }

  .mv7-tx-summary-item:nth-child(2) {
    border-top: 1px solid var(--v2-line);
  }

  .mv7-tx-summary-item strong {
    font-size: 19px;
  }

  .mv7-tx-mini-chart {
    grid-column: 1 / -1;
    min-height: 98px;
  }

  .mv7-tx-filters {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    padding: 11px 0;
  }

  .mv7-tx-search {
    width: 100%;
    grid-column: 1 / -1;
  }

  .mv7-tx-search input,
  .mv7-tx-select select {
    font-size: 16px;
  }

  .mv7-tx-type-filter {
    overflow-x: auto;
    scrollbar-width: none;
  }

  .mv7-tx-type-filter::-webkit-scrollbar {
    display: none;
  }

  .mv7-tx-filter-count {
    display: none;
  }

  .mv7-tx-ledger {
    border-radius: 12px;
  }

  .mv7-tx-columns {
    display: none;
  }

  .mv7-tx-list {
    min-height: 330px;
    padding: 6px;
  }

  .mv7-tx-row {
    min-height: 68px;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    gap: 9px;
    padding: 0 9px;
    margin-bottom: 5px;
    border: 1px solid rgba(255, 255, 255, 0.045);
    border-radius: 9px;
    background: rgba(0, 0, 0, 0.13);
  }

  .mv7-tx-row:last-child {
    margin-bottom: 0;
  }

  .mv7-tx-row-main {
    display: contents;
  }

  .mv7-tx-row-copy span {
    font-size: var(--v2-text-micro);
  }

  .mv7-tx-category,
  .mv7-tx-cell-account,
  .mv7-tx-cell-date,
  .mv7-tx-cell-status {
    display: none;
  }

  .mv7-tx-row-amount {
    font-size: var(--v2-text-xs);
  }

  .mv7-tx-ledger-footer {
    min-height: 52px;
  }

  .mv7-tx-inspector {
    position: fixed;
    z-index: 95;
    width: 100%;
    max-height: 88dvh;
    min-height: 0;
    overflow-y: auto;
    border-width: 1px 0 0;
    border-radius: 20px 20px 0 0;
    box-shadow: 0 -30px 80px rgba(0, 0, 0, 0.68);
    inset: auto 0 0;
    transform: translateY(105%);
    transition: transform 260ms cubic-bezier(0.2, 0.8, 0.2, 1);
  }

  .mv7-tx-inspector.is-open {
    transform: translateY(0);
  }

  .mv7-tx-inspector-empty {
    min-height: 340px;
  }

  .mv7-tx-detail-list > div {
    min-height: 48px;
  }

  .mv7-tx-detail-hero > strong {
    font-size: 22px;
  }

  .mv7-dialog {
    width: 100vw;
    max-width: none;
    max-height: min(88dvh, 700px);
    margin: auto 0 0;
    border-width: 1px 0 0;
    border-radius: 20px 20px 0 0;
  }

  .mv7-dialog[open] {
    animation-name: v2-sheet-in;
  }

  @keyframes v2-sheet-in {
    from {
      opacity: 0;
      transform: translateY(100%);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .mv7-dialog form {
    padding: 20px 16px calc(18px + env(safe-area-inset-bottom));
  }

  .mv7-form-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }

  .mv7-field input,
  .mv7-field select {
    height: 44px;
    font-size: 16px;
  }

  .mv7-toast {
    right: 14px;
    bottom: calc(14px + env(safe-area-inset-bottom));
    left: 14px;
    text-align: center;
  }

  .mv7-accounts-view {
    padding: 21px 14px calc(42px + env(safe-area-inset-bottom));
  }

  .mv7-accounts-heading {
    align-items: center;
    margin-bottom: 17px;
  }

  .mv7-accounts-heading h2 {
    font-size: 27px;
  }

  .mv7-accounts-heading > div > p:last-child {
    max-width: 265px;
    font-size: var(--v2-text-xs);
    line-height: 1.5;
  }

  .mv7-money-map,
  .mv7-account-focus {
    border-radius: 13px;
  }

  .mv7-money-map > header {
    min-height: 66px;
    padding: 13px 14px;
  }

  .mv7-money-map-status {
    max-width: 100px;
    text-align: right;
  }

  .mv7-money-map-canvas {
    padding: 14px;
  }

  .mv7-money-source {
    min-height: 116px;
    padding: 18px;
  }

  .mv7-money-source strong {
    font-size: 24px;
  }

  .mv7-money-nodes {
    grid-template-columns: minmax(0, 1fr);
  }

  .mv7-money-nodes::before {
    position: absolute;
    z-index: -1;
    width: 1px;
    background: linear-gradient(var(--v2-green), rgba(45, 222, 152, 0.05));
    content: '';
    bottom: 14px;
    left: 17px;
    top: -14px;
  }

  .mv7-money-node {
    min-height: 57px;
  }

  .mv7-money-node:hover,
  .mv7-money-node:focus-visible,
  .mv7-money-node.is-selected {
    transform: none;
  }

  .mv7-account-collection {
    margin-top: 23px;
  }

  .mv7-account-collection > header > p {
    display: none;
  }

  .mv7-account-focus {
    grid-template-columns: minmax(0, 1fr);
  }

  .mv7-account-focus-main {
    padding: 22px 19px 20px;
  }

  .mv7-account-focus-heading {
    grid-template-columns: 40px minmax(0, 1fr);
    margin-bottom: 25px;
  }

  .mv7-account-orb {
    width: 40px;
    height: 40px;
  }

  .mv7-account-focus-heading .mv7-account-share {
    width: fit-content;
    grid-column: 2;
    margin-top: -4px;
  }

  .mv7-account-focus-main > strong {
    font-size: 28px;
  }

  .mv7-account-actions {
    margin-top: 24px;
  }

  .mv7-account-actions .mv7-primary-button span {
    display: inline;
  }

  .mv7-account-focus-insight {
    padding: 20px 19px;
    border-top: 1px solid var(--v2-line);
    border-left: 0;
  }

  .mv7-account-focus-insight > svg {
    height: 115px;
  }

  .mv7-account-deck {
    padding: 0 7px;
  }

  .mv7-account-layer {
    width: calc(100% - (var(--layer-index) * 8px));
    min-height: 68px;
    grid-template-columns: 36px minmax(0, 1fr) auto 18px;
    gap: 10px;
    padding: 10px 12px;
  }

  .mv7-account-layer-ratio {
    display: none;
  }

  .mv7-account-layer-amount {
    font-size: var(--v2-text-micro);
  }
}

@media (max-width: 980px) {
  .mv7-money-map-canvas {
    display: flex;
    min-height: 0;
    flex-direction: column;
    gap: 14px;
    padding: 20px;
  }

  .mv7-money-source,
  .mv7-money-nodes {
    position: relative;
    width: 100%;
    inset: auto;
    transform: none;
  }

  .mv7-money-source {
    min-height: 122px;
  }

  .mv7-money-routes {
    display: none;
  }

  .mv7-money-nodes {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: none;
  }

  .mv7-account-focus {
    grid-template-columns: minmax(0, 1fr);
  }

  .mv7-account-focus-insight {
    border-top: 1px solid var(--v2-line);
    border-left: 0;
  }

  .mv7-budget-inline-stats > div {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  .mv7-budget-lane-main {
    grid-template-columns: 150px minmax(180px, 1fr) 92px;
    gap: 12px;
    padding-inline: 16px;
  }

  .mv7-budget-lane-detail {
    grid-template-columns: minmax(0, 1fr) 170px;
    padding-left: 190px;
  }

  .mv7-future-stage {
    display: grid;
    min-height: 720px;
    grid-template-columns: repeat(3, minmax(110px, 1fr));
  }

  .mv7-goal-selected {
    min-width: 0;
    min-height: 430px;
    grid-column: 1 / -1;
  }

  .mv7-goal-compact {
    min-height: 270px;
  }
}

@media (max-width: 768px) {
  .mv7-money-nodes {
    grid-template-columns: minmax(0, 1fr);
  }

  .mv7-budgets-view {
    padding: 21px 14px calc(42px + env(safe-area-inset-bottom));
  }

  .mv7-budgets-heading {
    align-items: center;
    margin-bottom: 17px;
  }

  .mv7-budgets-heading h2 {
    font-size: 28px;
  }

  .mv7-budgets-heading > div > p:last-child {
    max-width: 255px;
    font-size: var(--v2-text-xs);
  }

  .mv7-budget-field {
    border-radius: 13px;
  }

  .mv7-budget-field-header {
    min-height: 0;
    align-items: stretch;
    flex-direction: column;
    gap: 15px;
    padding: 16px 14px 12px;
  }

  .mv7-budget-inline-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-top: 1px solid var(--v2-line);
  }

  .mv7-budget-inline-stats > div {
    gap: 5px;
    padding: 12px 7px 2px;
    border-left: 0;
  }

  .mv7-budget-inline-stats > div + div {
    border-left: 1px solid var(--v2-line);
  }

  .mv7-budget-inline-stats dd {
    overflow: hidden;
    max-width: 100%;
    font-size: var(--v2-text-micro);
    text-overflow: ellipsis;
  }

  .mv7-budget-master-axis {
    gap: 7px;
    padding: 23px 14px 19px;
    font-size: var(--v2-text-micro);
  }

  .mv7-budget-axis-track > b {
    max-width: 86px;
    overflow: hidden;
    font-size: var(--v2-text-micro);
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .mv7-budget-lane-main,
  .mv7-budget-lane.is-expanded .mv7-budget-lane-main {
    min-height: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 7px 12px;
    padding: 16px 14px 10px;
  }

  .mv7-budget-lane-identity {
    grid-column: 1;
  }

  .mv7-budget-lane-forecast {
    grid-column: 2;
    grid-row: 1;
  }

  .mv7-budget-lane-track {
    height: 82px;
    grid-column: 1 / -1;
  }

  .mv7-budget-lane.is-expanded .mv7-budget-lane-track {
    height: 118px;
  }

  .mv7-budget-lane-detail {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    padding: 0 14px 16px;
  }

  .mv7-budget-recent > div {
    grid-template-columns: minmax(0, 1fr) 52px auto;
  }

  .mv7-budget-lane-controls {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    column-gap: 10px;
    padding-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
  }

  .mv7-budget-lane-controls > span,
  .mv7-budget-lane-controls > strong {
    grid-column: 1;
    margin: 0;
  }

  .mv7-budget-lane-controls .mv7-secondary-button {
    grid-column: 2;
    grid-row: 1 / 3;
  }

  .mv7-budget-reserve {
    min-height: 70px;
    grid-template-columns: 36px minmax(0, 1fr);
    padding: 11px 14px;
  }

  .mv7-budget-reserve > i,
  .mv7-budget-reserve > small {
    display: none;
  }

  .mv7-budget-dialog footer {
    display: grid;
    grid-template-columns: auto 1fr auto;
  }

  .mv7-budget-dialog footer > span {
    display: none;
  }

  .mv7-budget-dialog footer .mv7-primary-button {
    grid-column: 3;
  }

  .mv7-goals-view {
    padding: 21px 14px calc(42px + env(safe-area-inset-bottom));
  }

  .mv7-goals-heading {
    align-items: center;
    margin-bottom: 17px;
  }

  .mv7-goals-heading h2 {
    font-size: 28px;
  }

  .mv7-goals-heading > div:first-child > p:last-child {
    max-width: 230px;
    font-size: var(--v2-text-xs);
  }

  .mv7-goals-heading-actions .mv7-secondary-button {
    width: 40px;
    min-width: 40px;
    padding: 0;
    font-size: 0;
  }

  .mv7-goals-heading-actions .mv7-secondary-button::after {
    content: '+';
    font-size: 18px;
  }

  .mv7-future-scene {
    min-height: 0;
    border-radius: 13px;
  }

  .mv7-future-scene-header {
    min-height: 116px;
    align-items: flex-start;
    padding: 17px 14px 12px;
  }

  .mv7-future-scene-header h3 {
    max-width: 270px;
    font-size: 24px;
  }

  .mv7-future-scene-header > div > p:last-child {
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 5px;
  }

  .mv7-future-scene-header > div > p:last-child i {
    display: none;
  }

  .mv7-future-scene-header > div > p:last-child span {
    width: 100%;
  }

  .mv7-future-stage {
    min-height: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2px;
    padding: 0 10px;
  }

  .mv7-goal-selected {
    min-height: 500px;
    grid-template-columns: 108px minmax(115px, 1fr);
    gap: 7px;
    padding: 0 6px 30px;
  }

  .mv7-goal-selected-copy {
    align-self: center;
  }

  .mv7-goal-selected-copy h4 {
    margin-bottom: 17px;
    font-size: 15px;
  }

  .mv7-goal-selected-copy > strong {
    font-size: 25px;
  }

  .mv7-goal-selected-copy > b {
    font-size: var(--v2-text-xs);
  }

  .mv7-goal-selected-copy > span {
    font-size: var(--v2-text-micro);
  }

  .mv7-goal-selected .mv7-goal-monolith {
    min-height: 330px;
  }

  .mv7-goal-selected .mv7-goal-monolith-shell {
    width: 74%;
  }

  .mv7-goal-annotation {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column: 1 / -1;
    gap: 12px;
    padding: 12px 0 0;
    border-top: 1px solid var(--v2-line);
  }

  .mv7-goal-annotation > div::before {
    display: none;
  }

  .mv7-goal-inline-contribute {
    grid-column: 1 / -1;
  }

  .mv7-goal-compact {
    min-width: 0;
    min-height: 250px;
    padding: 18px 3px 28px;
  }

  .mv7-goal-compact .mv7-goal-monolith {
    min-height: 170px;
  }

  .mv7-goal-compact .mv7-goal-monolith-shell {
    width: 68%;
  }

  .mv7-goal-compact > span strong {
    font-size: var(--v2-text-micro);
  }

  .mv7-goal-compact > span b {
    font-size: var(--v2-text-xs);
  }

  .mv7-goal-compact > span small {
    font-size: var(--v2-text-micro);
  }

  .mv7-goal-milestones {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 17px 14px;
  }

  .mv7-goal-milestones > div {
    gap: 10px;
  }

  .mv7-goal-milestones strong {
    font-size: var(--v2-text-xs);
  }

  .mv7-goal-dialog footer {
    display: grid;
    grid-template-columns: auto 1fr auto;
  }

  .mv7-goal-dialog footer > span {
    display: none;
  }
}

@media (max-width: 390px) {
  .mv7-topbar-actions .mv7-icon-button:nth-child(2) {
    display: none;
  }

  .mv7-page-identity p {
    max-width: 52vw;
  }

  .mv7-form-row {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto;
    transition-duration: 0.01ms;
    animation-duration: 0.01ms;
    animation-iteration-count: 1;
  }
}

[hidden] {
  display: none;
}

/* Patrimonio V2.1 - composicion fiel al concepto aprobado */
@media (min-width: 769px) {
  .mv7-networth-view {
    padding: 24px clamp(22px, 2.5vw, 42px) 36px;
  }

  .mv7-networth-heading {
    min-height: 54px;
    align-items: flex-start;
    margin-bottom: 8px;
  }

  .mv7-networth-heading h2 {
    margin: 0;
    font-size: 18px;
    font-weight: 480;
    letter-spacing: -0.025em;
  }

  .mv7-networth-heading .mv7-primary-button {
    min-height: 38px;
    border-radius: 8px;
  }

  .mv7-networth-section {
    display: grid;
    overflow: visible;
    min-height: 720px;
    grid-template-columns: minmax(245px, 0.68fr) minmax(540px, 1.7fr);
    grid-template-rows: minmax(550px, auto) 150px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  .mv7-networth-section::before {
    display: none;
  }

  .mv7-networth-summary {
    display: block;
    min-width: 0;
    min-height: 0;
    padding: 26px 24px 0 0;
    border: 0;
  }

  .mv7-networth-primary h3 {
    margin: 13px 0 9px;
    font-size: clamp(31px, 3.05vw, 48px);
    white-space: nowrap;
  }

  .mv7-networth-primary > span {
    font-size: var(--v2-text-xs);
  }

  .mv7-networth-totals {
    align-items: center;
    gap: 12px;
    margin-top: 28px;
  }

  .mv7-networth-totals div {
    display: flex;
    align-items: baseline;
    gap: 7px;
  }

  .mv7-networth-totals div + div {
    padding-left: 12px;
    border-left: 1px solid rgba(255, 255, 255, 0.15);
  }

  .mv7-networth-totals dt {
    color: #50e2b6;
    font-size: var(--v2-text-micro);
    letter-spacing: 0;
    text-transform: none;
  }

  .mv7-networth-totals div:last-child dt {
    color: #ff786e;
  }

  .mv7-networth-totals dd {
    color: rgba(255, 255, 255, 0.58);
    font-size: var(--v2-text-micro);
    font-weight: 520;
    white-space: nowrap;
  }

  .mv7-networth-cross-section {
    min-width: 0;
    min-height: 550px;
    padding: 42px 166px 30px 24px;
    perspective: 1200px;
  }

  .mv7-networth-cross-section::before {
    position: absolute;
    z-index: -1;
    inset: 22px 135px 22px 5px;
    background:
      linear-gradient(rgba(90, 240, 195, 0.035) 1px, transparent 1px),
      linear-gradient(90deg, rgba(90, 240, 195, 0.03) 1px, transparent 1px);
    background-size: 48px 48px;
    content: '';
    mask-image: radial-gradient(ellipse, #000 30%, transparent 76%);
    pointer-events: none;
  }

  .mv7-networth-depth-label {
    display: none;
  }

  .mv7-networth-layers {
    align-items: flex-start;
  }

  .mv7-networth-layer,
  .mv7-networth-layer.is-selected {
    width: min(94%, 650px);
    margin: 0 0 0 clamp(0px, var(--layer-offset), 24px);
    transition:
      transform 300ms cubic-bezier(0.2, 0.75, 0.25, 1),
      filter 220ms ease;
  }

  .mv7-networth-layer + .mv7-networth-layer {
    margin-top: 10px;
  }

  .mv7-networth-layer.is-selected {
    z-index: 8;
    margin-block: 1px 20px;
    transform: translateX(-10px);
  }

  .mv7-networth-layer-surface,
  .mv7-networth-layer-liability .mv7-networth-layer-surface {
    display: grid;
    width: calc(100% - 38px);
    min-height: 48px;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    margin-right: 38px;
    padding: 9px 18px;
    overflow: visible;
    border: 1px solid color-mix(in srgb, var(--layer-tone) 68%, transparent);
    background:
      linear-gradient(
        100deg,
        color-mix(in srgb, var(--layer-tone) 14%, transparent),
        color-mix(in srgb, var(--layer-tone) 5%, transparent) 72%
      ),
      rgba(6, 11, 10, 0.76);
    box-shadow:
      0 20px 34px rgba(0, 0, 0, 0.28),
      inset 0 1px color-mix(in srgb, var(--layer-tone) 22%, transparent),
      0 0 20px color-mix(in srgb, var(--layer-tone) 8%, transparent);
    clip-path: none;
    transform: none;
  }

  .mv7-networth-layer-surface::before {
    position: absolute;
    top: -12px;
    right: -1px;
    left: -1px;
    height: 12px;
    border-top: 1px solid color-mix(in srgb, var(--layer-tone) 76%, transparent);
    background: linear-gradient(
      90deg,
      color-mix(in srgb, var(--layer-tone) 5%, transparent),
      color-mix(in srgb, var(--layer-tone) 17%, transparent)
    );
    clip-path: polygon(0 100%, 8% 0, 84% 0, 100% 100%);
    content: '';
  }

  .mv7-networth-layer-surface::after {
    position: absolute;
    top: -1px;
    right: -39px;
    bottom: -1px;
    left: auto;
    width: 38px;
    height: auto;
    border-right: 1px solid color-mix(in srgb, var(--layer-tone) 70%, transparent);
    background: color-mix(in srgb, var(--layer-tone) 11%, transparent);
    box-shadow:
      inset 1px 0 color-mix(in srgb, var(--layer-tone) 52%, transparent),
      4px 0 18px color-mix(in srgb, var(--layer-tone) 10%, transparent);
    clip-path: polygon(0 0, 100% 22%, 100% 78%, 0 100%);
    content: '';
    opacity: 1;
  }

  .mv7-networth-layer.is-selected .mv7-networth-layer-surface {
    min-height: 112px;
    grid-template-rows: auto auto;
    padding: 18px 22px;
    background:
      linear-gradient(
        105deg,
        color-mix(in srgb, var(--layer-tone) 22%, transparent),
        color-mix(in srgb, var(--layer-tone) 7%, transparent) 74%
      ),
      rgba(7, 15, 13, 0.86);
  }

  .mv7-networth-layer-icon {
    width: 30px;
    height: 30px;
    padding: 6px;
    border: 1px solid color-mix(in srgb, var(--layer-tone) 45%, transparent);
    border-radius: 9px;
    fill: none;
    stroke: var(--layer-tone);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5;
  }

  .mv7-networth-layer.is-selected .mv7-networth-layer-icon {
    width: 46px;
    height: 46px;
    padding: 9px;
    border-radius: 12px;
  }

  .mv7-networth-layer-copy {
    display: flex;
    min-width: 0;
    align-items: baseline;
    gap: 8px;
  }

  .mv7-networth-layer-copy strong {
    font-size: 13px;
    white-space: nowrap;
  }

  .mv7-networth-layer-copy span {
    overflow: hidden;
    color: rgba(255, 255, 255, 0.8);
    font-size: var(--v2-text-xs);
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .mv7-networth-layer-copy span::before {
    margin-right: 8px;
    content: '\2022';
    color: rgba(255, 255, 255, 0.36);
  }

  .mv7-networth-layer-surface > b {
    color: var(--layer-tone);
    font-size: var(--v2-text-xs);
  }

  .mv7-networth-layer-detail {
    display: flex;
    width: auto;
    min-height: 0;
    grid-column: 2 / 4;
    align-items: center;
    justify-content: flex-start;
    gap: 18px;
    margin: -2px 0 0;
    padding: 0;
    border: 0;
    background: transparent;
  }

  .mv7-networth-layer-detail > span {
    display: flex;
    align-items: center;
    gap: 9px;
  }

  .mv7-networth-layer-detail small,
  .mv7-networth-layer-detail strong,
  .mv7-networth-layer-detail em {
    font-size: var(--v2-text-micro);
    font-style: normal;
    white-space: nowrap;
  }

  .mv7-networth-layer-detail small {
    color: rgba(255, 255, 255, 0.6);
    letter-spacing: 0;
    text-transform: none;
  }

  .mv7-networth-layer-detail strong,
  .mv7-networth-layer-detail em {
    color: var(--layer-tone);
    font-weight: 550;
  }

  .mv7-networth-layer-detail strong::before,
  .mv7-networth-layer-detail em::before {
    margin-right: 9px;
    content: '\2022';
    color: rgba(255, 255, 255, 0.32);
  }

  .mv7-networth-edit {
    margin-left: auto;
    font-size: var(--v2-text-micro);
  }

  .mv7-networth-zero {
    grid-template-columns: auto 8px minmax(0, 1fr);
    gap: 9px;
    margin: 22px -72px 20px -295px;
    color: rgba(255, 255, 255, 0.78);
    font-size: var(--v2-text-xs);
    font-weight: 500;
    letter-spacing: 0;
  }

  .mv7-networth-zero i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #f3f5f4;
    box-shadow: 0 0 12px rgba(255, 255, 255, 0.65);
  }

  .mv7-networth-zero::after {
    position: absolute;
    z-index: -1;
    right: 0;
    left: 51px;
    height: 1px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.85), rgba(90, 240, 195, 0.2));
    content: '';
  }

  .mv7-networth-zero span {
    display: none;
  }

  .mv7-networth-layer-liability,
  .mv7-networth-layer-liability.is-selected {
    margin-left: clamp(0px, var(--layer-offset), 20px);
  }

  .mv7-networth-layer-liability .mv7-networth-layer-surface::before {
    top: auto;
    bottom: -12px;
    border-top: 0;
    border-bottom: 1px solid color-mix(in srgb, var(--layer-tone) 70%, transparent);
    clip-path: polygon(0 0, 100% 0, 84% 100%, 8% 100%);
  }

  .mv7-networth-measure {
    top: 35px;
    right: 2px;
    bottom: 36px;
    width: 142px;
    gap: 18px;
  }

  .mv7-networth-measure > i {
    background: #42e8b3;
    box-shadow: 0 0 14px rgba(66, 232, 179, 0.75);
  }

  .mv7-networth-measure > i::before,
  .mv7-networth-measure > i::after {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #42e8b3;
    box-shadow: 0 0 12px rgba(66, 232, 179, 0.75);
    transform: translate(-4px, -4px);
  }

  .mv7-networth-measure > i::after {
    transform: translate(-4px, 4px);
  }

  .mv7-networth-measure span {
    color: #48e8b5;
    font-size: var(--v2-text-xs);
  }

  .mv7-networth-measure strong {
    color: #48e8b5;
    font-size: 17px;
  }

  .mv7-networth-ratio {
    position: absolute;
    z-index: 10;
    right: 10px;
    bottom: 94px;
    width: 210px;
    min-height: 72px;
    justify-content: center;
    padding: 13px 16px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 10px;
    background: rgba(13, 16, 15, 0.9);
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.28);
    backdrop-filter: blur(18px);
  }

  .mv7-networth-ratio > span,
  .mv7-networth-ratio small {
    display: none;
  }

  .mv7-networth-ratio strong {
    margin: 0;
    font-size: var(--v2-text-xs);
    font-weight: 450;
    line-height: 1.6;
  }

  .mv7-networth-footer {
    display: block;
    grid-column: 1 / -1;
    min-height: 150px;
    border-top: 1px solid rgba(255, 255, 255, 0.09);
  }

  .mv7-networth-history {
    padding: 16px 4px 0;
  }

  .mv7-networth-history svg {
    height: 92px;
    margin-top: 5px;
  }
}

@media (min-width: 769px) and (max-width: 1120px) {
  .mv7-networth-section {
    grid-template-columns: 235px minmax(460px, 1fr);
  }

  .mv7-networth-cross-section {
    padding-right: 135px;
    padding-left: 12px;
  }

  .mv7-networth-primary h3 {
    font-size: 32px;
  }

  .mv7-networth-zero {
    margin-left: -238px;
  }

  .mv7-networth-measure {
    width: 116px;
  }

  .mv7-networth-measure strong {
    font-size: 12px;
  }
}

@media (max-width: 768px) {
  .mv7-networth-heading h2 {
    font-size: 27px;
  }

  .mv7-networth-heading .mv7-primary-button {
    width: 40px;
    min-width: 40px;
    padding: 0;
    font-size: 0;
  }

  .mv7-networth-heading .mv7-primary-button svg {
    width: 15px;
    height: 15px;
  }

  .mv7-networth-section {
    overflow: hidden;
  }

  .mv7-networth-layer-surface {
    grid-template-columns: 27px minmax(0, 1fr) auto;
  }

  .mv7-networth-layer-icon {
    width: 25px;
    height: 25px;
    padding: 5px;
    fill: none;
    stroke: var(--layer-tone);
    stroke-width: 1.6;
  }

  .mv7-networth-layer-detail {
    grid-column: 2 / 4;
  }

  .mv7-networth-layer-detail em {
    display: none;
  }

  .mv7-networth-ratio {
    border-right: 0;
  }
}

/* Configuración V2 — respaldo y restauración de datos */
.mv7-community-view { min-height: calc(100vh - var(--v2-topbar-height)); }
.mv7-community-shell { display:grid; grid-template-columns:minmax(580px,790px) minmax(270px,360px); max-width:1180px; min-height:calc(100vh - var(--v2-topbar-height)); margin:0 auto; }
.mv7-community-feed { border-inline:1px solid rgba(255,255,255,.075); }
.mv7-community-tabs { position:sticky; top:0; z-index:8; display:flex; height:58px; align-items:stretch; border-bottom:1px solid var(--v2-line); background:var(--v2-surface); box-shadow:0 8px 24px -22px rgba(0,0,0,.8); }
.mv7-community-tabs button { position:relative; min-width:110px; padding:0 18px; background:transparent; color:var(--v2-muted); cursor:pointer; font-weight:550; }
.mv7-community-tabs button.is-active { color:var(--v2-text); }.mv7-community-tabs button.is-active::after { position:absolute; right:25px; bottom:0; left:25px; height:2px; border-radius:3px; background:var(--v2-green); content:''; }
.mv7-community-composer { display:grid; grid-template-columns:44px 1fr; gap:14px; padding:18px 20px 13px; border-bottom:1px solid var(--v2-line); }
.mv7-community-avatar { display:grid; width:38px; height:38px; flex:0 0 38px; place-items:center; border:1px solid rgba(255,255,255,.1); border-radius:50%; background:linear-gradient(145deg,#8f9692,#3d423f); color:white; font-size:var(--v2-text-sm); font-weight:650; overflow:hidden; }.mv7-community-avatar img{width:100%;height:100%;object-fit:cover}.mv7-community-avatar.is-purple{background:linear-gradient(145deg,#9b67dc,#443064)}.mv7-community-avatar.is-blue{background:linear-gradient(145deg,#5d91ef,#27487d)}.mv7-community-avatar.is-cyan{background:linear-gradient(145deg,#42b9d2,#1f6675)}.mv7-community-avatar.is-green{background:linear-gradient(145deg,#4fc98a,#1f5c3f)}.mv7-community-avatar.is-orange{background:linear-gradient(145deg,#ef9d5d,#7d4a27)}.mv7-community-avatar.is-red{background:linear-gradient(145deg,#e56b6b,#7d2727)}.mv7-community-avatar.is-teal{background:linear-gradient(145deg,#4ec3c0,#1f5c5a)}
.mv7-community-compose-image-preview{position:relative;max-width:220px;margin-top:8px;border-radius:12px;overflow:hidden}.mv7-community-compose-image-preview img{display:block;width:100%;max-height:200px;object-fit:cover}.mv7-community-compose-image-preview button{position:absolute;top:6px;right:6px;display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;cursor:pointer}.mv7-community-compose-image-preview button svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2}
.mv7-community-compose-actions #community-compose-image-btn.is-active{border-color:rgba(45,222,152,.5);color:var(--v2-green-bright)}
.mv7-community-compose-body textarea { display:block; width:100%; min-height:58px; padding:3px 0; resize:none; border:0; outline:0; background:transparent; color:var(--v2-text); font:500 15px/1.5 var(--v2-font); }.mv7-community-compose-body textarea::placeholder{color:#8e9691}
.mv7-community-compose-footer,.mv7-community-compose-actions{display:flex;align-items:center}.mv7-community-compose-footer{justify-content:space-between;gap:14px}.mv7-community-private{display:inline-flex;align-items:center;gap:7px;color:var(--v2-muted);font-size:var(--v2-text-xs)}.mv7-community-private svg{width:15px;height:15px;fill:none;stroke:var(--v2-green);stroke-width:1.7}.mv7-community-compose-actions{gap:7px}.mv7-community-compose-actions>button:not(.mv7-primary-button){display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--v2-line);border-radius:10px;background:transparent;color:var(--v2-muted);cursor:pointer}.mv7-community-compose-actions svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6}.mv7-community-compose-actions .mv7-primary-button{min-height:35px;padding:0 18px}.mv7-community-compose-actions .mv7-primary-button:disabled{opacity:.4;cursor:not-allowed}
.mv7-community-post { display:grid; grid-template-columns:38px 1fr; gap:13px; padding:15px 20px 12px; border-bottom:1px solid var(--v2-line); transition:background .15s; }.mv7-community-post:hover{background:rgba(255,255,255,.012)}.mv7-community-post-body{min-width:0}.mv7-community-post-body>header{display:flex;align-items:center;gap:7px;min-height:21px}.mv7-community-post-body>header strong{font-size:12px}.mv7-community-post-body>header span{color:var(--v2-muted);font-size:var(--v2-text-xs)}.mv7-community-post-body>header em{padding:3px 8px;border-radius:999px;background:var(--v2-green-soft);color:var(--v2-green-bright);font-size:var(--v2-text-micro);font-style:normal}.mv7-community-post-body>header button{margin-left:auto;background:transparent;color:var(--v2-muted);cursor:pointer}.mv7-community-post-body>p{margin:8px 0 10px;color:#e8ece9;font-size:13px;line-height:1.48}
/* Sin esto la imagen de un post render­eaba a su tamaño nativo en px (una
   foto de celular de 4000x3000 rompía el ancho de toda la publicación y
   el feed) — nunca tuvo reglas propias, a diferencia del preview del
   composer (mv7-community-compose-image-preview) que sí las tiene. */
.mv7-community-post-image{display:block;width:100%;max-height:420px;margin:2px 0 10px;border:1px solid var(--v2-line);border-radius:14px;object-fit:cover}
.mv7-community-progress-card{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid var(--v2-line);border-radius:12px;background:rgba(255,255,255,.025)}.mv7-community-progress-card>strong{display:grid;width:44px;height:44px;place-items:center;border-radius:50%;background:radial-gradient(circle at center,#111 58%,transparent 60%),conic-gradient(var(--v2-green) 74%,rgba(255,255,255,.1) 0);font-size:var(--v2-text-sm)}.mv7-community-progress-card>div{display:grid;flex:1;gap:4px}.mv7-community-progress-card span{font-size:var(--v2-text-xs)}.mv7-community-progress-card small{color:var(--v2-muted);font-size:var(--v2-text-micro)}.mv7-community-progress-card i{height:5px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.1)}.mv7-community-progress-card b{display:block;width:74%;height:100%;background:var(--v2-green)}
.mv7-community-post-actions{display:flex;justify-content:space-between;max-width:430px;margin-top:8px}.mv7-community-post-actions button{display:flex;align-items:center;gap:7px;padding:5px;background:transparent;color:var(--v2-muted);cursor:pointer;font-size:var(--v2-text-xs)}.mv7-community-post-actions svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}.mv7-community-post-actions button:hover,.mv7-community-post-actions button.is-active{color:var(--v2-green-bright)}.mv7-community-post-actions button.is-active svg{fill:rgba(45,222,152,.18)}
.mv7-community-post-actions button{min-width:38px;min-height:34px;justify-content:center;border-radius:9px}.mv7-community-post-body>header button{display:grid;min-width:34px;min-height:34px;place-items:center;margin-top:-7px;margin-bottom:-7px;border-radius:9px}.mv7-community-reply button{min-height:30px;padding:6px 0}
.mv7-community-poll{display:grid;gap:5px}.mv7-community-poll>button{position:relative;display:flex;overflow:hidden;justify-content:space-between;min-height:30px;align-items:center;padding:0 10px;border-radius:7px;background:rgba(255,255,255,.04);color:var(--v2-text);cursor:pointer;text-align:left}.mv7-community-poll button span,.mv7-community-poll button b{position:relative;z-index:2;font-size:var(--v2-text-xs)}.mv7-community-poll button i{position:absolute;inset:0 auto 0 0;background:rgba(255,255,255,.1)}.mv7-community-poll .poll-62{width:62%}.mv7-community-poll .poll-38{width:38%}.mv7-community-poll>small{color:var(--v2-muted);font-size:var(--v2-text-micro)}.mv7-community-poll.has-voted button i{background:rgba(45,222,152,.13)}
.mv7-community-reply{display:flex;gap:9px;margin:10px 0 0 3px;padding:10px 0 0 22px;border-top:1px solid rgba(255,255,255,.045)}.mv7-community-reply .mv7-community-avatar{width:28px;height:28px;flex-basis:28px;font-size:var(--v2-text-micro)}.mv7-community-reply strong{font-size:var(--v2-text-xs)}.mv7-community-reply strong small{color:var(--v2-muted);font-weight:400}.mv7-community-reply p{margin:4px 0;color:#dfe4e1;font-size:var(--v2-text-xs)}.mv7-community-reply button{padding:0;background:transparent;color:var(--v2-green-bright);cursor:pointer;font-size:var(--v2-text-xs)}.mv7-community-check{display:inline-grid;width:16px;height:16px;place-items:center;border-radius:50%;background:var(--v2-green);color:#06120d;font-size:var(--v2-text-xs);font-style:normal}
.mv7-community-rail{position:sticky;top:var(--v2-topbar-height);align-self:start;display:grid;gap:15px;padding:16px 0 24px 24px}.mv7-community-search{display:flex;align-items:center;gap:9px;height:42px;padding:0 13px;border:1px solid var(--v2-line);border-radius:12px;background:rgba(255,255,255,.025)}.mv7-community-search svg{width:15px;height:15px;fill:none;stroke:var(--v2-muted);stroke-width:1.6}.mv7-community-search input{width:100%;border:0;outline:0;background:transparent;color:var(--v2-text);font-size:var(--v2-text-sm)}.mv7-community-rail-module{padding:17px;border-radius:15px;background:rgba(255,255,255,.025)}.mv7-community-rail-module h3{margin:0 0 13px;font-size:14px}.mv7-community-rail-module>a{display:flex;gap:10px;align-items:center;padding:10px 0;color:inherit}.mv7-community-rail-module>a i{display:grid;width:25px;height:25px;place-items:center;border:1px solid rgba(45,222,152,.25);border-radius:50%;color:var(--v2-green);font-style:normal}.mv7-community-rail-module>a span{display:flex;flex:1;justify-content:space-between;gap:10px}.mv7-community-rail-module>a strong{font-size:var(--v2-text-xs)}.mv7-community-rail-module>a small{color:var(--v2-muted);font-size:var(--v2-text-xs)}.mv7-community-person{display:flex;align-items:center;gap:10px;padding:8px 0}.mv7-community-person p{display:grid;flex:1;gap:3px;margin:0}.mv7-community-person strong{font-size:var(--v2-text-xs)}.mv7-community-person small{color:var(--v2-muted);font-size:var(--v2-text-micro)}.mv7-community-person button{padding:7px 14px;border:1px solid rgba(45,222,152,.35);border-radius:999px;background:transparent;color:var(--v2-text);cursor:pointer;font-size:var(--v2-text-xs)}.mv7-community-person button.is-following{background:var(--v2-green-soft);color:var(--v2-green-bright)}.mv7-community-rail-privacy{display:flex;align-items:center;gap:9px;margin:0;padding:0 12px;color:var(--v2-muted);font-size:var(--v2-text-xs)}.mv7-community-rail-privacy svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5}.mv7-community-empty{padding:60px 20px;color:var(--v2-muted);text-align:center}
#community-trending-list{display:grid}.mv7-community-rail-module #community-trending-list>a{display:grid;grid-template-columns:27px minmax(0,1fr);align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.055);color:inherit;text-decoration:none}.mv7-community-rail-module #community-trending-list>a:last-child{border-bottom:0}.mv7-community-rail-module #community-trending-list>a i{display:grid;width:25px;height:25px;place-items:center;border:1px solid rgba(45,222,152,.22);border-radius:50%;color:var(--v2-green);font-style:normal}.mv7-community-rail-module #community-trending-list>a span{display:grid;min-width:0;gap:3px}.mv7-community-rail-module #community-trending-list>a strong{overflow:hidden;font-size:var(--v2-text-xs);text-overflow:ellipsis;white-space:nowrap}.mv7-community-rail-module #community-trending-list>a small{color:var(--v2-muted);font-size:var(--v2-text-xs)}
@media(max-width:1100px){.mv7-community-shell{grid-template-columns:minmax(0,760px)}.mv7-community-rail{display:none}}
@media(max-width:768px){.mv7-community-shell{display:block}.mv7-community-feed{border:0}.mv7-community-tabs{top:var(--v2-topbar-height);overflow-x:auto}.mv7-community-tabs button{min-width:95px}.mv7-community-composer,.mv7-community-post{padding-inline:14px}.mv7-community-private{font-size:0;width:18px}.mv7-community-private svg{width:17px;height:17px}.mv7-community-progress-card>strong{width:38px;height:38px}.mv7-community-post-actions{max-width:280px}}

.mv7-settings-view {
  --mv7-settings-sticky-top: 18px;
  --mv7-settings-sticky-bottom: 44px;
  width: 100%;
  max-width: 1500px;
  padding: 26px clamp(20px, 2.2vw, 36px) 44px;
  margin: 0 auto;
}

.mv7-settings-panel {
  padding: 20px 22px 24px;
}

.mv7-settings-panel-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.mv7-settings-panel-header h3 {
  margin: 6px 0 0;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -0.03em;
}

.mv7-settings-panel-header p {
  margin: 8px 0 0;
  max-width: 52ch;
  color: var(--v2-muted);
  font-size: 12px;
  line-height: 1.5;
}

.mv7-settings-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 20px 0 0;
  padding: 16px 4px 0;
  border-top: 1px solid var(--v2-line);
}

.mv7-settings-summary dt {
  margin: 0;
  color: var(--v2-muted);
  font-size: var(--v2-text-xs);
  letter-spacing: 0;
}

.mv7-settings-summary dd {
  margin: 4px 0 0;
  color: var(--v2-text);
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0;
}

.mv7-settings-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 22px;
}

.mv7-settings-file-label {
  display: inline-flex;
}

.mv7-category-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.mv7-category-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px 8px 10px;
  border: 1px solid var(--v2-line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.025);
  color: var(--v2-text);
  cursor: pointer;
  font-size: 12px;
  font-weight: 550;
  transition:
    border-color 140ms ease,
    background 140ms ease;
}

.mv7-category-chip:hover {
  border-color: var(--v2-line-strong);
  background: rgba(255, 255, 255, 0.055);
}

.mv7-category-chip-dot {
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
  border-radius: 50%;
  background: var(--chip-color, var(--v2-muted));
}

.mv7-category-empty {
  margin: 18px 0 0;
  color: var(--v2-muted);
  font-size: 12px;
}

.mv7-color-picker {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
  margin-bottom: 14px;
}

.mv7-color-swatch {
  width: 100%;
  aspect-ratio: 1;
  border: 2px solid transparent;
  border-radius: 10px;
  background: var(--swatch-color, var(--v2-muted));
  cursor: pointer;
  transition: transform 120ms ease;
}

.mv7-color-swatch:hover {
  transform: scale(1.08);
}

.mv7-color-swatch.is-selected {
  border-color: var(--v2-text);
  box-shadow: 0 0 0 2px #0b0e0c, 0 0 0 3px var(--swatch-color, var(--v2-muted));
}

.mv7-settings-hint {
  margin: 14px 0 0;
  color: var(--v2-muted);
  font-size: var(--v2-text-sm);
  line-height: 1.5;
}

/* Settings Hub — navegación interna y paneles Apple Glass */
.mv7-settings-hub { display: grid; grid-template-columns: 228px minmax(480px, 1fr) 286px; gap: 16px; align-items: start; }
.mv7-settings-nav, .mv7-settings-context-card, .mv7-settings-card {
  border: 1px solid rgba(255,255,255,.105); border-radius: 18px;
  background: linear-gradient(145deg, rgba(255,255,255,.045), transparent 42%), linear-gradient(150deg, rgba(24,29,26,.88), rgba(9,12,11,.91));
  box-shadow: inset 0 1px rgba(255,255,255,.055), inset 0 -1px rgba(255,255,255,.015), 0 22px 60px rgba(0,0,0,.22);
  backdrop-filter: blur(22px); -webkit-backdrop-filter: blur(22px);
}
.mv7-settings-nav { position: sticky; top: var(--mv7-settings-sticky-top); display: flex; flex-direction: column; gap: 5px; min-height: 730px; padding: 14px; }
.mv7-settings-search { display: flex; align-items: center; gap: 9px; min-height: 39px; padding: 0 12px; border: 1px solid var(--v2-line); border-radius: 11px; background: rgba(0,0,0,.16); }
.mv7-settings-search svg { width: 14px; height: 14px; fill: none; stroke: var(--v2-muted); stroke-width: 1.7; }
.mv7-settings-search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--v2-text); font-size: 12px; }
.mv7-settings-nav-item { display: flex; align-items: center; gap: 11px; min-height: 44px; padding: 0 12px; border-radius: 11px; background: transparent; color: #c6ccc8; cursor: pointer; text-align: left; }
.mv7-settings-nav-item svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.mv7-settings-nav-item:hover { background: rgba(255,255,255,.045); }
.mv7-settings-nav-item.is-active { background: linear-gradient(90deg, rgba(45,222,152,.15), rgba(45,222,152,.055)); color: var(--v2-green-bright); }
.mv7-settings-preview-status { display: grid; grid-template-columns:auto 1fr auto; gap: 10px; align-items:start; margin-top: auto; padding: 13px; border: 1px solid var(--v2-line); border-radius: 12px; background: linear-gradient(145deg,rgba(45,222,152,.045),rgba(255,255,255,.018)); }
.mv7-settings-preview-status i { width: 7px; height: 7px; margin-top: 5px; border-radius: 50%; background: var(--v2-green); box-shadow: 0 0 12px rgba(45,222,152,.5); }
.mv7-settings-preview-status div { display: grid; gap: 5px; }
.mv7-settings-preview-status strong { font-size: var(--v2-text-sm); }.mv7-settings-preview-status small { color: var(--v2-muted); font-size: var(--v2-text-xs); line-height: 1.45; }
.mv7-settings-preview-eye { display:grid; width:27px; height:27px; place-items:center; border:1px solid rgba(255,255,255,.09); border-radius:9px; color:var(--v2-muted); }
.mv7-settings-preview-eye svg { width:13px; height:13px; fill:none; stroke:currentColor; stroke-width:1.6; }
.mv7-settings-stage { min-width: 0; }.mv7-settings-tab { display: grid; gap: 14px; }.mv7-settings-tab[hidden] { display: none; }
.mv7-settings-title { margin: 1px 2px 4px; }.mv7-settings-title h3 { margin: 0; font-size: 22px; font-weight: 560; letter-spacing: -.04em; }.mv7-settings-title p { margin: 5px 0 0; color: var(--v2-muted); font-size: var(--v2-text-sm); }
.mv7-settings-title-action { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.mv7-settings-card { padding: 18px; }.mv7-settings-card h4, .mv7-settings-context-card h4 { margin: 0 0 12px; font-size: 15px; font-weight: 580; }.mv7-settings-card > p { margin: -5px 0 12px; color: var(--v2-muted); font-size: var(--v2-text-sm); line-height: 1.5; }
.mv7-settings-row { display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,.065); }.mv7-settings-row:last-child { border-bottom: 0; }.mv7-settings-row > span { display: grid; flex: 1; gap: 4px; font-size: 12px; }.mv7-settings-row > svg { width: 18px; height: 18px; flex: 0 0 18px; fill: none; stroke: var(--v2-muted); stroke-width: 1.6; }.mv7-settings-row small, .mv7-device-row small { color: var(--v2-muted); font-size: var(--v2-text-xs); font-weight: 400; }.mv7-settings-row select, .mv7-settings-fields select, .mv7-settings-fields input { min-height: 38px; padding: 0 11px; border: 1px solid var(--v2-line); border-radius: 10px; outline: 0; background: rgba(255,255,255,.025); color: var(--v2-text); font-size: var(--v2-text-sm); }.mv7-settings-row select option, .mv7-settings-fields select option { background: #101311; }
.mv7-switch { width: 40px; height: 23px; appearance: none; border-radius: 999px; background: rgba(255,255,255,.12); cursor: pointer; transition: .2s; }.mv7-switch::after { display: block; width: 19px; height: 19px; margin: 2px; border-radius: 50%; background: #a6ada9; content: ''; transition: .2s; }.mv7-switch:checked { background: var(--v2-green); }.mv7-switch:checked::after { transform: translateX(17px); background: #fff; }
.mv7-settings-row-slider { flex-wrap: wrap; }.mv7-settings-row input[type="range"] { width: 140px; max-width: 100%; accent-color: var(--v2-green); cursor: pointer; }
.mv7-profile-card { display: grid; grid-template-columns: 135px 1fr; gap: 16px; align-items: start; }.mv7-settings-avatar { display: grid; width: 104px; height: 104px; place-items: center; border: 1px solid rgba(255,255,255,.14); border-radius: 50%; background: linear-gradient(145deg,#aeb6b1,#3e4541); color: white; font-size: 34px; }.mv7-settings-avatar.is-small { width: 52px; height: 52px; font-size: 18px; }.mv7-profile-card .mv7-text-action { grid-column: 1; }.mv7-settings-fields { display: grid; grid-column: 2; grid-row: 1 / span 2; grid-template-columns: 1fr 1fr; gap: 13px; }.mv7-settings-fields label { display: grid; gap: 6px; color: var(--v2-muted); font-size: var(--v2-text-xs); }.mv7-settings-save { justify-self: end; margin-top: 3px; }
.mv7-text-action { border: 0; background: transparent; color: var(--v2-green-bright); cursor: pointer; font-size: var(--v2-text-sm); }
.mv7-settings-view .mv7-text-action{min-height:34px;padding-block:7px}.mv7-settings-view select{min-height:38px}.mv7-settings-view button:focus-visible,.mv7-settings-view input:focus-visible,.mv7-settings-view select:focus-visible{outline:2px solid var(--v2-green-bright);outline-offset:2px}.mv7-settings-nav-item:focus-visible{outline-offset:-3px}
.mv7-settings-fields label.is-disabled { opacity: .5; }
.mv7-whatsapp-card .mv7-whatsapp-step { display: flex; flex-direction: column; gap: 12px; }
.mv7-whatsapp-card .mv7-whatsapp-step[hidden] { display: none; }
.mv7-whatsapp-card .mv7-whatsapp-step + .mv7-whatsapp-step { margin-top: 12px; }
.mv7-whatsapp-card .mv7-settings-fields { grid-column: auto; grid-row: auto; grid-template-columns: 1fr; }
.mv7-whatsapp-step-actions { display: flex; align-items: center; gap: 14px; }
.mv7-whatsapp-card .mv7-settings-row { padding: 12px 0 0; min-height: 0; border-bottom: 0; }
.mv7-whatsapp-card .mv7-settings-hint.is-error { color: #ff9b9b; }
.mv7-whatsapp-quick-link:hover, .mv7-whatsapp-quick-link:focus-visible { color: #25d366; }
.mv7-settings-avatar img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }
.mv7-theme-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.mv7-theme-grid button {
  position: relative;
  display: grid;
  min-width: 0;
  gap: 11px;
  padding: 10px;
  border: 1px solid var(--v2-line);
  border-radius: 8px;
  background: rgba(255,255,255,.022);
  color: var(--v2-text);
  cursor: pointer;
  text-align: left;
  transition: border-color .18s ease, background-color .18s ease, transform .18s ease;
}
.mv7-theme-grid button:hover {
  border-color: rgba(255,255,255,.18);
  background: rgba(255,255,255,.038);
  transform: translateY(-1px);
}
.mv7-theme-grid button.is-selected {
  border-color: var(--v2-green);
  background: color-mix(in srgb, var(--v2-green) 5%, transparent);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--v2-green) 16%, transparent);
}
.mv7-theme-preview {
  --preview-bg: #080b09;
  --preview-rail: #040605;
  --preview-surface: #111713;
  --preview-surface-strong: #19221d;
  --preview-line: rgba(255,255,255,.1);
  --preview-ink: rgba(228,239,232,.64);
  --preview-accent: #2dde98;
  --preview-accent-soft: rgba(45,222,152,.18);
  display: grid;
  grid-template-columns: 27% minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  height: 118px;
  overflow: hidden;
  box-sizing: border-box;
  border: 1px solid var(--preview-line);
  border-radius: 7px;
  background: var(--preview-bg);
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
}
.mv7-theme-preview.is-system {
  --preview-bg: #edf1ef;
  --preview-rail: #101512;
  --preview-surface: #fff;
  --preview-surface-strong: #dce4e0;
  --preview-line: rgba(17,29,23,.15);
  --preview-ink: rgba(29,49,39,.62);
  --preview-accent: #3788f5;
  --preview-accent-soft: rgba(55,136,245,.16);
}
.mv7-theme-preview.is-contrast {
  --preview-bg: #000;
  --preview-rail: #000;
  --preview-surface: #030303;
  --preview-surface-strong: #090909;
  --preview-line: #fff;
  --preview-ink: #fff;
  --preview-accent: #45f2a8;
  --preview-accent-soft: rgba(69,242,168,.24);
  border-width: 2px;
  box-shadow: none;
}
.mv7-theme-preview-rail {
  display: grid;
  align-content: start;
  gap: 10px;
  padding: 11px 8px;
  border-right: 1px solid var(--preview-line);
  background: var(--preview-rail);
}
.mv7-theme-preview-rail i {
  display: block;
  width: 72%;
  height: 3px;
  border-radius: 2px;
  background: var(--preview-ink);
  opacity: .42;
}
.mv7-theme-preview-rail i:first-child {
  width: 11px;
  height: 11px;
  margin-bottom: 5px;
  border-radius: 3px;
  background: var(--preview-accent);
  opacity: 1;
  box-shadow: 0 0 10px var(--preview-accent-soft);
}
.mv7-theme-preview-rail i:nth-child(2) {
  width: 100%;
  height: 6px;
  background: var(--preview-accent-soft);
  box-shadow: inset 2px 0 var(--preview-accent);
  opacity: 1;
}
.mv7-theme-preview-canvas {
  display: grid;
  grid-template-rows: 14px 24px minmax(0,1fr);
  gap: 8px;
  min-width: 0;
  padding: 10px;
  background: var(--preview-bg);
}
.mv7-theme-preview-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mv7-theme-preview-toolbar i:first-child {
  width: 38%;
  height: 4px;
  border-radius: 2px;
  background: var(--preview-ink);
}
.mv7-theme-preview-toolbar i:last-child {
  width: 10px;
  height: 10px;
  border: 2px solid var(--preview-accent);
  border-radius: 50%;
  background: var(--preview-accent-soft);
}
.mv7-theme-preview-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 6px;
}
.mv7-theme-preview-stats i {
  display: block;
  border: 1px solid var(--preview-line);
  border-radius: 4px;
  background: linear-gradient(135deg, var(--preview-surface), var(--preview-surface-strong));
}
.mv7-theme-preview-stats i:first-child {
  box-shadow: inset 2px 0 var(--preview-accent);
}
.mv7-theme-preview-chart {
  display: flex;
  align-items: end;
  justify-content: space-around;
  gap: 4px;
  min-height: 0;
  padding: 7px 6px 4px;
  border: 1px solid var(--preview-line);
  border-radius: 4px;
  background: repeating-linear-gradient(to bottom, transparent 0 9px, var(--preview-line) 9px 10px), var(--preview-surface);
}
.mv7-theme-preview-chart i {
  display: block;
  width: 8%;
  min-width: 3px;
  border-radius: 2px 2px 0 0;
  background: var(--preview-accent);
  box-shadow: 0 0 7px var(--preview-accent-soft);
}
.mv7-theme-preview-chart i:nth-child(1) { height: 36%; }
.mv7-theme-preview-chart i:nth-child(2) { height: 68%; }
.mv7-theme-preview-chart i:nth-child(3) { height: 48%; }
.mv7-theme-preview-chart i:nth-child(4) { height: 82%; }
.mv7-theme-preview-chart i:nth-child(5) { height: 62%; }
.mv7-theme-option-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.mv7-theme-option-copy strong {
  font-size: var(--v2-text-sm);
  font-weight: 650;
  line-height: 1.25;
}
.mv7-theme-option-copy small {
  color: var(--v2-muted);
  font-size: var(--v2-text-xs);
  line-height: 1.35;
}
.mv7-theme-option-state {
  position: absolute;
  top: 16px;
  right: 16px;
  display: grid;
  width: 22px;
  height: 22px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 50%;
  background: rgba(5,9,7,.82);
  color: white;
  opacity: 0;
  transform: scale(.8);
  transition: opacity .18s ease, transform .18s ease;
}
.mv7-theme-option-state svg {
  width: 13px;
  height: 13px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.5;
}
.mv7-theme-grid button.is-selected .mv7-theme-option-state {
  border-color: var(--v2-green);
  background: var(--v2-green);
  color: #06110c;
  opacity: 1;
  transform: scale(1);
}
.mv7-accent-swatches { display: flex; gap: 15px; margin: 10px 0 23px; }.mv7-accent-swatches button { width: 35px; height: 35px; border: 3px solid transparent; border-radius: 50%; background: var(--v2-green); cursor: pointer; }.mv7-accent-swatches button:nth-child(2){background:#3788f5}.mv7-accent-swatches button:nth-child(3){background:#994cef}.mv7-accent-swatches button:nth-child(4){background:#f5a30b}.mv7-accent-swatches button:nth-child(5){background:#fa5e5e}.mv7-accent-swatches button.is-selected{box-shadow:0 0 0 2px #0b0e0c,0 0 0 4px var(--v2-green)}
.mv7-settings-segments { display: grid; grid-template-columns: repeat(3,1fr); padding: 3px; border: 1px solid var(--v2-line); border-radius: 11px; background: rgba(0,0,0,.14); }.mv7-settings-segments button { min-height: 34px; border-radius: 8px; background: transparent; color: var(--v2-muted); cursor: pointer; }.mv7-settings-segments button.is-selected { background: rgba(45,222,152,.12); color: var(--v2-green-bright); }
.mv7-settings-segments button:disabled { opacity: .5; cursor: not-allowed; }
.mv7-category-list-table { display: grid; margin-top: 13px; }.mv7-category-list-table .mv7-category-chip { width: 100%; min-height: 48px; border-radius: 11px; }.mv7-settings-search-wide { width: 100%; }
.mv7-settings-hub:has(.mv7-settings-tab[data-settings-panel='categories']:not([hidden])) { grid-template-columns:228px minmax(0,1fr); }
.mv7-settings-hub:has(.mv7-settings-tab[data-settings-panel='categories']:not([hidden])) > .mv7-settings-context { display:none; }
.mv7-category-toolbar { display:grid; grid-template-columns:minmax(230px,1fr) auto auto; gap:14px; align-items:center; }
.mv7-category-filters { display:grid; grid-template-columns:repeat(3,86px); padding:3px; border:1px solid var(--v2-line); border-radius:11px; background:rgba(255,255,255,.018); }
.mv7-category-filters button { min-height:34px; border-radius:8px; background:transparent; color:var(--v2-muted); }
.mv7-category-filters button.is-selected { background:rgba(45,222,152,.1); color:var(--v2-green-bright); }
.mv7-category-toolbar>.mv7-primary-button { min-height:41px; white-space:nowrap; }
.mv7-category-workspace { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:18px; align-items:start; }
.mv7-category-table-card { padding:12px; }
.mv7-category-table-head { display:grid; grid-template-columns:minmax(190px,1.2fr) minmax(120px,.7fr) minmax(110px,.55fr) 24px; gap:14px; padding:8px 13px 11px; color:var(--v2-muted); font-size:var(--v2-text-xs); }
.mv7-category-list-table { gap:7px; margin:0; }
.mv7-category-list-table .mv7-category-chip { display:grid; grid-template-columns:42px minmax(130px,1.2fr) minmax(110px,.7fr) minmax(100px,.55fr) 24px; gap:14px; align-items:center; min-height:64px; padding:7px 13px; border-radius:12px; text-align:left; }
.mv7-category-list-table .mv7-category-chip:hover { border-color:color-mix(in srgb,var(--chip-color) 62%,transparent); background:linear-gradient(90deg,color-mix(in srgb,var(--chip-color) 9%,transparent),rgba(255,255,255,.025)); }
.mv7-category-list-table .mv7-category-chip-dot { display:grid; width:38px; height:38px; place-items:center; border-radius:9px; background:linear-gradient(145deg,color-mix(in srgb,var(--chip-color) 88%,white 12%),var(--chip-color)); color:white; font-size:var(--v2-text-sm); font-weight:650; box-shadow:inset 0 1px rgba(255,255,255,.22),0 8px 18px color-mix(in srgb,var(--chip-color) 13%,transparent); }
.mv7-category-row-name { color:var(--v2-text); font-size:var(--v2-text-sm); font-weight:560; }
.mv7-category-row-uses { color:var(--v2-muted); font-size:var(--v2-text-xs); }
.mv7-category-row-type { justify-self:start; padding:5px 9px; border:1px solid color-mix(in srgb,var(--chip-color) 42%,transparent); border-radius:7px; background:color-mix(in srgb,var(--chip-color) 8%,transparent); color:var(--chip-color); font-size:var(--v2-text-xs); }
.mv7-category-row-grip { width:18px; height:18px; fill:none; stroke:var(--v2-muted); stroke-width:1.5; }
.mv7-category-empty { display:grid; min-height:350px; place-items:center; align-content:center; gap:10px; margin:0; color:var(--v2-muted); text-align:center; }
.mv7-category-empty>span { display:grid; width:58px; height:58px; place-items:center; border:1px solid rgba(45,222,152,.2); border-radius:18px; background:rgba(45,222,152,.055); color:var(--v2-green-bright); font-size:25px; }
.mv7-category-empty strong { color:var(--v2-text); font-size:13px; }.mv7-category-empty small{max-width:34ch;font-size:var(--v2-text-xs);line-height:1.5}
.mv7-category-inspector { display:grid; gap:16px; }
.mv7-category-inspector>.mv7-settings-card { padding:20px; }
.mv7-category-inspector-empty { display:grid; min-height:300px; place-items:center; align-content:center; gap:10px; text-align:center; }
.mv7-category-inspector-empty>span { display:grid; width:72px; height:72px; place-items:center; border:1px solid rgba(255,255,255,.09); border-radius:20px; background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.015)); }
.mv7-category-inspector-empty svg { width:30px; height:30px; fill:none; stroke:var(--v2-green); stroke-width:1.4; }
.mv7-category-inspector-empty strong { font-size:12px; }.mv7-category-inspector-empty small{max-width:28ch;color:var(--v2-muted);font-size:var(--v2-text-xs);line-height:1.5}
.mv7-category-tip { display:flex; gap:12px; }.mv7-category-tip>svg{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:var(--v2-green);stroke-width:1.5}.mv7-category-tip h4{margin-bottom:8px}.mv7-category-tip p{margin:0!important;color:var(--v2-muted);font-size:var(--v2-text-xs);line-height:1.55}
.mv7-backup-card {
  padding: 0;
  overflow: hidden;
  container-type: inline-size;
}
.mv7-backup-header {
  display: grid;
  grid-template-columns: 48px minmax(0,1fr) auto;
  align-items: center;
  gap: 13px;
  padding: 20px;
}
.mv7-backup-header-icon {
  position: relative;
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--v2-green) 28%, transparent);
  border-radius: 8px;
  background: color-mix(in srgb, var(--v2-green) 9%, transparent);
  color: var(--v2-green-bright);
}
.mv7-backup-header-icon svg {
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
}
.mv7-backup-header-icon i {
  position: absolute;
  right: 7px;
  bottom: 7px;
  width: 7px;
  height: 7px;
  border: 2px solid #111512;
  border-radius: 50%;
  background: var(--v2-green-bright);
}
.mv7-backup-header h4 {
  margin-bottom: 4px;
  font-size: 16px;
}
.mv7-backup-header p {
  margin: 0;
  color: var(--v2-muted);
  font-size: var(--v2-text-sm);
  line-height: 1.45;
}
.mv7-backup-local-badge {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  gap: 7px;
  padding: 0 10px;
  border: 1px solid var(--v2-line);
  border-radius: 999px;
  background: rgba(255,255,255,.025);
  color: var(--v2-muted);
  font-size: var(--v2-text-xs);
  white-space: nowrap;
}
.mv7-backup-local-badge i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--v2-green-bright);
  box-shadow: 0 0 9px color-mix(in srgb, var(--v2-green) 55%, transparent);
}
.mv7-backup-security-note {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 20px 18px;
  padding: 10px 12px;
  border-left: 2px solid color-mix(in srgb, var(--v2-green) 68%, transparent);
  background: color-mix(in srgb, var(--v2-green) 5%, transparent);
  color: var(--v2-muted);
  font-size: var(--v2-text-xs);
  line-height: 1.4;
}
.mv7-backup-security-note svg {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  fill: none;
  stroke: var(--v2-green-bright);
  stroke-width: 1.7;
}
.mv7-backup-inventory {
  border-block: 1px solid var(--v2-line);
  background: rgba(0,0,0,.12);
}
.mv7-backup-inventory-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 15px 20px;
  border-bottom: 1px solid var(--v2-line);
}
.mv7-backup-inventory-heading > div {
  display: grid;
  gap: 3px;
}
.mv7-backup-inventory-heading strong {
  color: var(--v2-text);
  font-size: var(--v2-text-sm);
  font-weight: 630;
}
.mv7-backup-inventory-heading small {
  color: var(--v2-muted);
  font-size: var(--v2-text-xs);
  line-height: 1.35;
}
.mv7-backup-inventory-heading > strong:last-child {
  flex: 0 0 auto;
  color: var(--v2-green-bright);
}
.mv7-backup-card .mv7-settings-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.mv7-backup-card .mv7-settings-metric {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  min-height: 67px;
  gap: 10px;
  padding: 12px 16px;
  border-right: 1px solid var(--v2-line);
  border-bottom: 1px solid var(--v2-line);
}
.mv7-backup-card .mv7-settings-metric:nth-child(3n) {
  border-right: 0;
}
.mv7-backup-card .mv7-settings-metric:nth-last-child(-n+3) {
  border-bottom: 0;
}
.mv7-backup-card .mv7-settings-metric dt {
  display: grid;
  grid-template-columns: 30px minmax(0,1fr);
  align-items: center;
  gap: 9px;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--v2-text);
  font-size: var(--v2-text-xs);
  font-weight: 540;
  line-height: 1.3;
  text-transform: none;
}
.mv7-backup-card .mv7-settings-metric dt svg {
  width: 30px;
  height: 30px;
  padding: 7px;
  box-sizing: border-box;
  border: 1px solid color-mix(in srgb, var(--v2-green) 22%, transparent);
  border-radius: 7px;
  background: color-mix(in srgb, var(--v2-green) 6%, transparent);
  fill: none;
  stroke: var(--v2-green-bright);
  stroke-width: 1.7;
}
.mv7-backup-card .mv7-settings-metric dd {
  min-width: 24px;
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--v2-text);
  font-size: 18px;
  font-weight: 650;
  line-height: 1;
  text-align: right;
}
.mv7-backup-card .mv7-settings-metric.is-empty dd {
  color: var(--v2-dim);
  font-weight: 540;
}
.mv7-backup-footer {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 14px 20px;
  padding: 18px 20px 20px;
}
.mv7-backup-action-copy {
  display: grid;
  gap: 4px;
}
.mv7-backup-action-copy strong {
  color: var(--v2-text);
  font-size: var(--v2-text-sm);
  font-weight: 630;
}
.mv7-backup-action-copy small {
  color: var(--v2-muted);
  font-size: var(--v2-text-xs);
  line-height: 1.4;
}
.mv7-backup-actions {
  flex-wrap: nowrap;
  margin: 0;
}
.mv7-backup-actions button {
  min-height: 40px;
  padding-inline: 14px;
  white-space: nowrap;
}
.mv7-backup-card #settings-export {
  border-color: color-mix(in srgb, var(--v2-green) 48%, transparent);
  background: var(--v2-green);
  color: #06110c;
  font-weight: 650;
}
.mv7-backup-card #settings-import-trigger {
  border-color: rgba(255,255,255,.15);
  background: rgba(255,255,255,.045);
  color: var(--v2-text);
  font-weight: 590;
}
.mv7-backup-card #settings-import-trigger:hover {
  border-color: rgba(255,255,255,.24);
  background: rgba(255,255,255,.075);
}
.mv7-backup-warning {
  display: flex;
  grid-column: 1 / -1;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  padding: 11px 12px;
  border: 1px solid rgba(245,163,11,.2);
  border-radius: 7px;
  background: rgba(245,163,11,.055);
}
.mv7-backup-warning svg {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  fill: none;
  stroke: #f5b33d;
  stroke-width: 1.8;
}
.mv7-backup-warning span {
  display: grid;
  gap: 2px;
}
.mv7-backup-warning strong {
  color: #f4d39a;
  font-size: var(--v2-text-xs);
  font-weight: 630;
}
.mv7-backup-warning small {
  color: var(--v2-muted);
  font-size: var(--v2-text-xs);
  line-height: 1.4;
}
.mv7-reports-card {
  padding: 0;
  overflow: hidden;
}
.mv7-reports-header {
  display: grid;
  grid-template-columns: 36px minmax(0,1fr);
  align-items: center;
  gap: 10px;
  padding: 14px 16px 13px;
  border-bottom: 1px solid var(--v2-line);
  background: linear-gradient(110deg, rgba(255,255,255,.035), transparent 55%);
}
.mv7-reports-header-icon {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid rgba(45,222,152,.2);
  border-radius: 10px;
  background: rgba(45,222,152,.07);
  color: var(--v2-green-bright);
  box-shadow: inset 0 1px rgba(255,255,255,.06);
}
.mv7-reports-header-icon svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
}
.mv7-reports-header h4 { margin: 0 0 5px; }
.mv7-reports-header p {
  margin: 0;
  color: var(--v2-muted);
  font-size: var(--v2-text-xs);
  line-height: 1.45;
}
.mv7-reports-count { display: none; }
.mv7-report-options {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
  padding: 12px;
}
.mv7-report-option {
  --report-color: var(--v2-green);
  position: relative;
  display: grid;
  grid-template-rows: auto 1fr;
  min-width: 0;
  min-height: 102px;
  gap: 6px;
  padding: 11px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--report-color) 23%, var(--v2-line));
  border-radius: 11px;
  background: linear-gradient(145deg, color-mix(in srgb, var(--report-color) 7%, transparent), rgba(255,255,255,.018) 56%);
  color: var(--v2-text);
  cursor: pointer;
  text-align: left;
  box-shadow: inset 0 1px rgba(255,255,255,.045);
  transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}
.mv7-report-option::before {
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--report-color), transparent);
  opacity: .65;
  content: '';
}
.mv7-report-option.is-pdf { --report-color: #ff6b63; }
.mv7-report-option.is-image { --report-color: #7d9cff; }
.mv7-report-option:hover {
  border-color: color-mix(in srgb, var(--report-color) 48%, transparent);
  background: linear-gradient(145deg, color-mix(in srgb, var(--report-color) 11%, transparent), rgba(255,255,255,.026) 60%);
  box-shadow: inset 0 1px rgba(255,255,255,.07), 0 8px 18px rgba(0,0,0,.14);
}
.mv7-report-format-icon {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  color: var(--report-color);
}
.mv7-report-format-icon img {
  display: block;
  width: 30px;
  height: 30px;
  object-fit: contain;
  filter: drop-shadow(0 5px 9px color-mix(in srgb, var(--report-color) 24%, transparent));
}
.mv7-report-format-icon b {
  padding: 3px 5px;
  border: 1px solid color-mix(in srgb, var(--report-color) 28%, transparent);
  border-radius: 6px;
  background: color-mix(in srgb, var(--report-color) 8%, transparent);
  color: var(--report-color);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .06em;
}
.mv7-report-copy {
  display: grid;
  align-content: start;
  gap: 3px;
  padding-right: 24px;
}
.mv7-report-copy strong {
  font-size: var(--v2-text-sm);
  font-weight: 640;
  line-height: 1.3;
}
.mv7-report-copy small {
  color: var(--v2-muted);
  font-size: var(--v2-text-micro);
  line-height: 1.4;
}
.mv7-report-download {
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: grid;
  width: 26px;
  height: 26px;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--report-color) 24%, transparent);
  border-radius: 8px;
  background: color-mix(in srgb, var(--report-color) 7%, transparent);
  color: var(--report-color);
  transition: background-color .18s ease, transform .18s ease;
}
.mv7-report-download svg {
  width: 13px;
  height: 13px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}
.mv7-report-option:hover .mv7-report-download {
  background: color-mix(in srgb, var(--report-color) 14%, transparent);
  transform: translateY(1px);
}
.mv7-reports-note {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 9px 14px 11px;
  border-top: 1px solid rgba(255,255,255,.045);
  color: var(--v2-muted);
  font-size: var(--v2-text-micro);
  line-height: 1.45;
}
.mv7-reports-note svg {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  fill: none;
  stroke: var(--v2-green);
  stroke-width: 1.6;
}
@media (max-width: 768px) {
  .mv7-reports-header {
    grid-template-columns: 36px minmax(0,1fr);
    padding-inline: 16px;
  }
  .mv7-report-options {
    grid-template-columns: 1fr;
    padding-inline: 13px;
  }
  .mv7-report-option {
    grid-template-columns: 38px minmax(0,1fr) 26px;
    grid-template-rows: auto;
    align-items: center;
    min-height: 76px;
    gap: 9px;
    padding: 10px;
  }
  .mv7-report-copy { padding-right: 0; }
  .mv7-report-format-icon {
    justify-content: flex-start;
  }
  .mv7-report-format-icon b { display: none; }
  .mv7-report-download {
    position: static;
    justify-self: end;
  }
}
@container (max-width: 560px) {
  .mv7-backup-header {
    grid-template-columns: 44px minmax(0,1fr);
    padding: 18px;
  }
  .mv7-backup-local-badge {
    grid-column: 2;
    justify-self: start;
  }
  .mv7-backup-card .mv7-settings-summary {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
  .mv7-backup-card .mv7-settings-metric:nth-child(3n) {
    border-right: 1px solid var(--v2-line);
  }
  .mv7-backup-card .mv7-settings-metric:nth-child(2n) {
    border-right: 0;
  }
  .mv7-backup-card .mv7-settings-metric:nth-last-child(-n+3) {
    border-bottom: 1px solid var(--v2-line);
  }
  .mv7-backup-card .mv7-settings-metric:last-child {
    grid-column: 1 / -1;
    border-right: 0;
    border-bottom: 0;
  }
  .mv7-backup-footer {
    grid-template-columns: 1fr;
  }
  .mv7-backup-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 8px;
  }
  .mv7-backup-actions button {
    width: 100%;
  }
}
.mv7-categories-preview { display:grid; grid-template-columns:1fr auto; align-items:center; gap:14px 18px; }.mv7-categories-preview h4 { margin-bottom: 5px; }.mv7-categories-preview-copy>p{margin:0;color:var(--v2-muted);font-size:var(--v2-text-sm)}.mv7-categories-preview-chips{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px}.mv7-categories-preview-chips span{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid var(--v2-line);border-radius:999px;background:rgba(255,255,255,.022);color:#dce2de;font-size:var(--v2-text-xs);font-weight:520}.mv7-categories-preview-chips span::before{width:7px;height:7px;border-radius:50%;background:var(--preview-chip);box-shadow:0 0 10px color-mix(in srgb,var(--preview-chip) 38%,transparent);content:''}
.mv7-settings-empty-hero { display: grid; justify-items: center; padding: 36px 20px; text-align: center; }.mv7-settings-empty-hero > svg { width: 70px; height: 70px; margin-bottom: 14px; fill: none; stroke: var(--v2-muted); stroke-width: 1; }.mv7-settings-empty-hero p { max-width: 430px; }.mv7-how-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin-bottom: 12px; }.mv7-how-grid > div { display: grid; justify-items: center; gap: 8px; padding: 16px 10px; border: 1px solid var(--v2-line); border-radius: 12px; text-align: center; }.mv7-how-grid b { display:grid;width:25px;height:25px;place-items:center;border-radius:50%;background:var(--v2-green-soft);color:var(--v2-green-bright)}.mv7-how-grid strong{font-size:var(--v2-text-sm)}.mv7-how-grid small{color:var(--v2-muted);font-size:var(--v2-text-xs)}.mv7-settings-row.is-disabled{opacity:.45}
.mv7-settings-notice { display: flex; gap: 10px; align-items: center; margin-top: 12px!important; padding: 12px; border: 1px solid var(--v2-line); border-radius: 11px; }.mv7-settings-notice svg { width: 22px; height: 22px; fill:none;stroke:var(--v2-green);stroke-width:1.5; }
.mv7-settings-hub:has(.mv7-notifications-workspace:not([hidden])) { grid-template-columns:228px minmax(0,1fr); }
.mv7-settings-hub:has(.mv7-notifications-workspace:not([hidden])) > .mv7-settings-context { display:none; }
.mv7-notifications-title { text-align:center; margin-bottom:4px; }
.mv7-notifications-layout { display:grid; grid-template-columns:minmax(0,1fr) 382px; gap:18px; align-items:start; }
.mv7-notifications-main,.mv7-notifications-rail { display:grid; gap:14px; min-width:0; }
.mv7-notifications-master { display:flex; align-items:center; gap:18px; padding:17px 19px; }
.mv7-notifications-master>span { display:grid; flex:1; gap:6px; }
.mv7-notifications-master strong { font-size:12px; }.mv7-notifications-master small{color:var(--v2-muted);font-size:var(--v2-text-xs)}
.mv7-notification-group { display:grid; gap:7px; }.mv7-notification-group>h4{margin:0;font-size:12px}.mv7-notification-group>p{margin:-3px 0 2px;color:var(--v2-muted);font-size:var(--v2-text-xs)}
.mv7-notification-list { padding:4px 18px; }
.mv7-notification-row { display:grid; grid-template-columns:34px minmax(0,1fr) auto 116px; gap:11px; align-items:center; min-height:68px; border-bottom:1px solid rgba(255,255,255,.065); }
.mv7-notification-row:last-child { border-bottom:0; }
.mv7-notification-icon { display:grid; width:30px; height:30px; place-items:center; border-radius:9px; color:#cbd2ce; }
.mv7-notification-icon svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.55; }
.mv7-notification-row>span:nth-child(2) { display:grid; gap:4px; }
.mv7-notification-row strong { font-size:var(--v2-text-sm); }.mv7-notification-row small{color:var(--v2-muted);font-size:var(--v2-text-micro);line-height:1.35}
.mv7-notification-row select,.mv7-notification-frequency { min-height:37px; padding:0 11px; border:1px solid var(--v2-line); border-radius:10px; outline:0; background:rgba(255,255,255,.025); color:#ccd3cf; font-size:var(--v2-text-xs); }
.mv7-notification-row:not(:has(select)) { grid-template-columns:34px minmax(0,1fr) auto; }
.mv7-notification-row.is-master-off { opacity: 0.45; }
.mv7-notification-row.is-master-off select { cursor: not-allowed; }
.mv7-notification-channels { display:grid; grid-template-columns:repeat(3,1fr); overflow:hidden; border:1px solid var(--v2-line); border-radius:11px; }
.mv7-notification-channels button { display:flex; align-items:center; justify-content:center; gap:9px; min-height:48px; border-right:1px solid var(--v2-line); background:rgba(255,255,255,.018); color:var(--v2-muted); }
.mv7-notification-channels button:last-child{border-right:0}.mv7-notification-channels button.is-selected{background:rgba(45,222,152,.075);box-shadow:inset 0 0 0 1px rgba(45,222,152,.55);color:var(--v2-green-bright)}
.mv7-notification-channels svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}
.mv7-notification-save { width:100%; min-height:49px; margin-top:-1px; font-size:12px; }
.mv7-notification-autosave-note { margin:-8px 0 0; color:var(--v2-muted); font-size:var(--v2-text-micro); text-align:center; }
.mv7-notifications-rail .mv7-settings-card { padding:19px; }.mv7-notifications-rail .mv7-settings-card>p{margin:-5px 0 13px;color:var(--v2-muted);font-size:var(--v2-text-xs)}
.mv7-notification-preview-stage { position:relative; display:flex; min-height:294px; align-items:center; padding:15px; overflow:hidden; border-radius:14px; background:radial-gradient(circle at 28% 25%,rgba(141,82,213,.2),transparent 31%),radial-gradient(circle at 68% 72%,rgba(45,222,152,.21),transparent 34%),linear-gradient(145deg,#10141b,#091312); box-shadow:inset 0 1px rgba(255,255,255,.035); }
.mv7-notification-preview-stage::after{position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.025),transparent 45%);content:''}
.mv7-notification-toast { position:relative; z-index:1; display:grid; grid-template-columns:42px 1fr auto; gap:11px; width:100%; align-items:center; padding:14px; border:1px solid rgba(255,255,255,.1); border-radius:14px; background:rgba(20,25,24,.76); box-shadow:0 18px 45px rgba(0,0,0,.32); backdrop-filter:blur(16px); }
.mv7-notification-toast i { display:grid; width:38px; height:38px; place-items:center; border-radius:50%; background:rgba(45,222,152,.12); color:var(--v2-green-bright); }
.mv7-notification-toast svg{width:19px;height:19px;fill:none;stroke:currentColor}.mv7-notification-toast span{display:grid;gap:6px}.mv7-notification-toast strong{font-size:var(--v2-text-xs)}.mv7-notification-toast small,.mv7-notification-toast em{color:var(--v2-muted);font-size:var(--v2-text-micro);font-style:normal}
.mv7-notification-quiet { display:flex; align-items:center; gap:11px; min-height:51px; padding:0 13px; border:1px solid var(--v2-line); border-radius:11px; background:rgba(255,255,255,.018); }
.mv7-notification-quiet svg{width:17px;height:17px;fill:none;stroke:var(--v2-muted)}.mv7-notification-quiet strong{flex:1;font-size:var(--v2-text-xs)}
.mv7-notification-frequency { width:100%; }.mv7-notification-caption{display:block;margin:11px 0 0;color:var(--v2-muted);font-size:var(--v2-text-micro)}
.mv7-security-hero { display: flex; align-items: center; gap: 16px; }.mv7-security-hero > svg { width: 54px; height: 54px; fill:none;stroke:var(--v2-green);stroke-width:1.4; }.mv7-security-hero > div { flex:1; }.mv7-security-hero h4{margin-bottom:4px}.mv7-security-hero > strong { color:var(--v2-green-bright);font-size:32px }.mv7-security-hero > strong small{color:var(--v2-muted);font-size:15px}.mv7-device-row{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding:14px;border:1px solid var(--v2-line);border-radius:12px}.mv7-device-row>div{display:grid;flex:1;gap:4px}.mv7-device-row em{padding:4px 9px;border-radius:999px;background:var(--v2-green-soft);color:var(--v2-green-bright);font-size:var(--v2-text-xs);font-style:normal}
.mv7-settings-hub:has(.mv7-security-workspace:not([hidden])) { grid-template-columns:228px minmax(0,1fr); }
.mv7-settings-hub:has(.mv7-security-workspace:not([hidden])) > .mv7-settings-context { display:none; }
/* Mismo patrón que Seguridad (arriba): cada pestaña que trae su propia
   barra lateral real (en vez de la genérica .mv7-settings-context) declara
   su clase de "workspace" acá para que el grid se achique a 2 columnas y la
   aside genérica se oculte — evita mostrar dos sidebars a la vez. */
.mv7-settings-hub:has(.mv7-appearance-workspace:not([hidden])),
.mv7-settings-hub:has(.mv7-sync-workspace:not([hidden])),
.mv7-settings-hub:has(.mv7-privacy-workspace:not([hidden])),
.mv7-settings-hub:has(.mv7-profile-workspace:not([hidden])) { grid-template-columns:228px minmax(0,1fr); }
.mv7-settings-hub:has(.mv7-appearance-workspace:not([hidden])) > .mv7-settings-context,
.mv7-settings-hub:has(.mv7-sync-workspace:not([hidden])) > .mv7-settings-context,
.mv7-settings-hub:has(.mv7-privacy-workspace:not([hidden])) > .mv7-settings-context,
.mv7-settings-hub:has(.mv7-profile-workspace:not([hidden])) > .mv7-settings-context { display:none; }
.mv7-tab-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:16px; align-items:start; }
.mv7-tab-main, .mv7-tab-rail { display:grid; gap:16px; min-width:0; }
.mv7-tab-rail .mv7-settings-card { padding:20px; }
.mv7-appearance-preview-card { padding:14px; border:1px solid var(--v2-line); border-radius:11px; background:rgba(255,255,255,.02); }
.mv7-appearance-preview-card > small { color:var(--v2-muted); font-size:var(--v2-text-xs); }
.mv7-appearance-preview-row { display:flex; justify-content:space-between; gap:12px; padding:8px 0; }
.mv7-appearance-preview-row strong { font-size:15px; }
.mv7-profile-workspace .mv7-tab-layout { grid-template-columns:minmax(0,1fr) 330px; }
.mv7-profile-workspace .mv7-profile-card { position:relative; display:grid; grid-template-columns:155px minmax(0,1fr); gap:15px 20px; padding:24px; }
.mv7-profile-card-title { grid-column:1/-1; }
.mv7-profile-avatar-zone { display:grid; justify-items:center; gap:11px; align-content:start; }
.mv7-profile-avatar-zone .mv7-settings-avatar { width:120px; height:120px; font-size:36px; }
.mv7-profile-avatar-zone .mv7-text-action { display:flex;align-items:center;gap:7px }.mv7-profile-avatar-zone .mv7-text-action svg{width:16px;height:16px;fill:none;stroke:currentColor}
.mv7-profile-workspace .mv7-settings-fields { position:static; display:grid; grid-column:2; grid-row:auto; grid-template-columns:1fr; gap:13px; }
.mv7-profile-workspace .mv7-profile-card>#settings-profile-session-hint { grid-column:1/-1; margin:0; }
.mv7-profile-workspace .mv7-profile-card>#settings-profile-save { grid-column:2; justify-self:end; min-width:180px; }
.mv7-profile-region { padding:22px; }.mv7-profile-region>.mv7-settings-hint{margin:-4px 0 10px}
.mv7-profile-progress-card>p,.mv7-profile-public-card>p{margin:-5px 0 12px!important;color:var(--v2-muted);font-size:var(--v2-text-xs);line-height:1.5}
.mv7-profile-progress-ring { display:grid; width:120px; height:120px; margin:20px auto; place-items:center; border-radius:50%; background:radial-gradient(circle,#111512 58%,transparent 60%),conic-gradient(var(--v2-green) var(--profile-progress,180deg),rgba(255,255,255,.08) 0); }
.mv7-profile-progress-ring strong { font-size:25px; letter-spacing:-.04em; }
.mv7-profile-check { display:flex;align-items:center;gap:10px;min-height:38px;font-size:var(--v2-text-xs)}.mv7-profile-check i{display:grid;width:18px;height:18px;place-items:center;border:1px solid rgba(45,222,152,.4);border-radius:50%;color:var(--v2-green-bright)}.mv7-profile-check i svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2}.mv7-profile-check.is-warning i{border-color:#f5a30b}.mv7-profile-check.is-warning i::after{width:6px;height:6px;border-radius:50%;background:#f5a30b;content:''}
.mv7-profile-public-card .mv7-settings-notice{font-size:var(--v2-text-micro);line-height:1.55}.mv7-profile-session-button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;width:100%}.mv7-profile-session-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}
.mv7-appearance-workspace .mv7-tab-layout { grid-template-columns:minmax(0,1fr) 350px; }
.mv7-appearance-preview-panel>p,.mv7-appearance-accessibility>p{margin:-5px 0 14px!important;color:var(--v2-muted);font-size:var(--v2-text-xs)}
.mv7-appearance-preview-card { padding:15px; }
.mv7-appearance-preview-card header { display:flex;justify-content:space-between;gap:10px;align-items:start }.mv7-appearance-preview-card header>div{display:grid;gap:4px}.mv7-appearance-preview-card header strong{font-size:var(--v2-text-xs)}.mv7-appearance-preview-card header small,.mv7-appearance-preview-card header>span{color:var(--v2-muted);font-size:var(--v2-text-micro)}.mv7-appearance-preview-card header>span{padding:6px 8px;border:1px solid var(--v2-line);border-radius:7px}
.mv7-appearance-preview-balance { display:grid;grid-template-columns:1fr 1.25fr;gap:10px;align-items:end;margin-top:14px }.mv7-appearance-preview-balance>div{display:grid;gap:5px}.mv7-appearance-preview-balance small{color:var(--v2-muted);font-size:var(--v2-text-micro)}.mv7-appearance-preview-balance strong{font-size:14px}.mv7-appearance-preview-balance strong:first-of-type{color:var(--v2-green-bright)}.mv7-appearance-preview-balance svg{width:100%;height:90px;color:var(--v2-green)}
.mv7-appearance-budget-preview { display:grid;gap:8px;margin-top:13px;padding:14px;border:1px solid var(--v2-line);border-radius:11px;background:rgba(255,255,255,.02)}.mv7-appearance-budget-preview>strong{font-size:var(--v2-text-xs)}.mv7-appearance-budget-preview>small{color:var(--v2-muted);font-size:var(--v2-text-micro)}.mv7-appearance-budget-preview>div{display:flex;justify-content:space-between;gap:10px;font-size:var(--v2-text-micro)}.mv7-appearance-budget-preview i{height:7px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.1)}.mv7-appearance-budget-preview em{display:block;width:60%;height:100%;background:var(--v2-green)}
.mv7-appearance-accessibility .mv7-settings-row-slider{display:grid}.mv7-appearance-font-range{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;width:100%}.mv7-appearance-font-range b:first-child{font-size:var(--v2-text-xs)}.mv7-appearance-font-range b:last-child{font-size:18px}.mv7-appearance-font-range input{width:100%}
.mv7-privacy-workspace .mv7-tab-layout { grid-template-columns:minmax(0,1fr) 342px; }
.mv7-privacy-section { padding:18px; }.mv7-privacy-section>h4{margin-bottom:5px}.mv7-privacy-section>p,.mv7-privacy-visibility>p{margin:0 0 10px;color:var(--v2-muted);font-size:var(--v2-text-xs)}
.mv7-privacy-section .mv7-settings-row { min-height:59px; padding:8px 0; }
.mv7-privacy-visibility { padding:18px; }
.mv7-privacy-visibility-options { display:grid; grid-template-columns:repeat(3,1fr); overflow:hidden; border:1px solid var(--v2-line); border-radius:11px; background:rgba(255,255,255,.02); }
.mv7-privacy-visibility-options button { display:flex; align-items:center; justify-content:center; gap:9px; min-height:68px; padding:9px; border-right:1px solid var(--v2-line); background:transparent; color:var(--v2-muted); }
.mv7-privacy-visibility-options button:last-child{border-right:0}.mv7-privacy-visibility-options button.is-selected{background:rgba(45,222,152,.08);box-shadow:inset 0 0 0 1px rgba(45,222,152,.55);color:var(--v2-green-bright)}
.mv7-privacy-visibility-options svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5}.mv7-privacy-visibility-options span{display:grid;gap:4px;text-align:left}.mv7-privacy-visibility-options strong{font-size:var(--v2-text-xs)}.mv7-privacy-visibility-options small{font-size:var(--v2-text-micro);color:var(--v2-muted)}
.mv7-privacy-visibility .mv7-settings-notice>span{display:grid;gap:5px}.mv7-privacy-visibility .mv7-settings-notice small{color:var(--v2-muted);font-size:var(--v2-text-micro)}
.mv7-privacy-actions { display:grid; grid-template-columns:1fr 1.12fr; gap:14px; }
.mv7-privacy-actions button { display:flex; align-items:center; justify-content:center; gap:9px; min-height:51px; }
.mv7-privacy-actions svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}
.mv7-privacy-score-card { display:grid; justify-items:center; text-align:center; }
.mv7-privacy-shield { position:relative; display:grid; width:108px; height:108px; margin:5px 0 15px; place-items:center; border:1px solid rgba(45,222,152,.28); border-radius:50%; background:radial-gradient(circle,rgba(45,222,152,.18),rgba(45,222,152,.04) 53%,transparent 55%); box-shadow:0 0 28px rgba(45,222,152,.08); }
.mv7-privacy-shield svg:first-child{width:68px;height:68px;fill:rgba(45,222,152,.14);stroke:var(--v2-green);stroke-width:1.45}.mv7-privacy-shield svg:last-child{position:absolute;width:28px;height:28px;fill:none;stroke:var(--v2-green-bright);stroke-width:2.3}
.mv7-privacy-score-card>h4{margin:0 0 7px}.mv7-privacy-score-card>p{margin:0;color:var(--v2-muted);font-size:var(--v2-text-xs)}.mv7-privacy-score-card>strong{margin:12px 0 8px;padding:6px 15px;border-radius:8px;background:rgba(45,222,152,.1);color:var(--v2-green-bright);font-size:13px}
.mv7-privacy-check { display:grid; grid-template-columns:25px 1fr; gap:9px; width:100%; padding:9px 0; text-align:left; }
.mv7-privacy-check i{display:grid;width:20px;height:20px;place-items:center;border-radius:50%;background:rgba(45,222,152,.1);color:var(--v2-green-bright)}.mv7-privacy-check i svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2}.mv7-privacy-check span{display:grid;gap:4px}.mv7-privacy-check b{font-size:var(--v2-text-xs)}.mv7-privacy-check small{color:var(--v2-muted);font-size:var(--v2-text-micro)}
.mv7-privacy-live-state { display:none; }
.mv7-privacy-session-card>p{margin:-5px 0 12px;color:var(--v2-muted);font-size:var(--v2-text-xs)}.mv7-privacy-device{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;padding:13px;border:1px solid var(--v2-line);border-radius:11px;background:rgba(255,255,255,.018)}.mv7-privacy-device>span{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;background:rgba(255,255,255,.04)}.mv7-privacy-device svg{width:21px;height:21px;fill:none;stroke:#dbe1dd}.mv7-privacy-device>div{display:grid;gap:4px}.mv7-privacy-device strong{font-size:var(--v2-text-xs)}.mv7-privacy-device small{color:var(--v2-muted);font-size:var(--v2-text-micro)}.mv7-privacy-device em{padding:5px 9px;border-radius:8px;background:rgba(45,222,152,.1);color:var(--v2-green-bright);font-size:var(--v2-text-micro);font-style:normal}.mv7-privacy-session-card>button{width:100%;margin-top:10px}
.mv7-privacy-policy { display:grid;grid-template-columns:34px 1fr auto;gap:11px;align-items:center}.mv7-privacy-policy>svg{width:27px;height:27px;fill:none;stroke:var(--v2-green);stroke-width:1.5}.mv7-privacy-policy h4{margin:0 0 5px}.mv7-privacy-policy p{margin:0!important;color:var(--v2-muted);font-size:var(--v2-text-micro)}.mv7-privacy-policy>span{color:var(--v2-muted);font-size:20px}
.mv7-sync-workspace .mv7-tab-layout { grid-template-columns:minmax(0,1fr) 330px; }
.mv7-sync-hero { min-height:280px; padding:25px 20px 28px; }
.mv7-sync-cloud { position:relative; display:grid; width:138px; height:92px; margin-bottom:9px; place-items:center; }
.mv7-sync-cloud>span { position:absolute; inset:24px 12px 6px; border:4px solid #8d9691; border-radius:38px; opacity:.9; }
.mv7-sync-cloud>span::before,.mv7-sync-cloud>span::after { position:absolute; border:4px solid #8d9691; border-bottom:0; border-radius:50% 50% 0 0; background:#111512; content:''; }
.mv7-sync-cloud>span::before { width:49px;height:37px;left:17px;top:-35px; }.mv7-sync-cloud>span::after{width:35px;height:25px;right:13px;top:-23px}
.mv7-sync-cloud svg { z-index:2; width:42px!important; height:42px!important; margin:17px 0 0!important; stroke:#b6bdb9!important; stroke-width:1.7!important; }
.mv7-sync-cloud>i { position:absolute; width:6px; height:6px; transform:rotate(45deg); background:rgba(255,255,255,.22); }.mv7-sync-cloud>i:nth-of-type(1){left:0;top:25px}.mv7-sync-cloud>i:nth-of-type(2){right:0;top:49px}
.mv7-sync-hero>p { max-width:52ch!important; margin:0 0 17px!important; text-align:center; }.mv7-sync-hero>.mv7-primary-button{min-width:244px}
.mv7-sync-flow { padding:19px; }.mv7-sync-flow>h4{margin-bottom:13px}
.mv7-sync-flow .mv7-how-grid { position:relative; gap:12px; }
.mv7-sync-flow .mv7-how-grid>div { position:relative; min-height:164px; padding:19px 11px 13px; }
.mv7-sync-flow .mv7-how-grid>div:not(:last-child)::after { position:absolute; z-index:3; right:-20px; top:50%; display:grid; width:26px; height:26px; place-items:center; transform:translateY(-50%); border:1px solid var(--v2-line); border-radius:50%; background:#121614; color:var(--v2-muted); content:'›'; font-size:17px; }
.mv7-sync-flow .mv7-how-grid i { display:grid; width:43px; height:43px; place-items:center; color:#9ea6a1; font-style:normal; }
.mv7-sync-flow .mv7-how-grid i svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.25}.mv7-sync-flow .mv7-how-grid b{position:absolute;left:11px;top:11px}
.mv7-sync-control { display:grid; grid-template-columns:38px 1fr auto; gap:11px; align-items:center; min-height:65px; padding:8px 10px; border-bottom:1px solid rgba(255,255,255,.065); }.mv7-sync-control:last-child{border-bottom:0}
.mv7-sync-control-icon { display:grid; width:32px; height:32px; place-items:center; border-radius:50%; background:rgba(255,255,255,.045); }.mv7-sync-control-icon svg{width:17px;height:17px;fill:none;stroke:var(--v2-muted);stroke-width:1.5}
.mv7-sync-control>span:nth-child(2){display:grid;gap:5px}.mv7-sync-control strong{font-size:var(--v2-text-xs)}.mv7-sync-control small{color:var(--v2-muted);font-size:var(--v2-text-micro)}.mv7-sync-control select{min-width:130px;border:0;background:transparent;color:var(--v2-muted);font-size:var(--v2-text-xs)}.mv7-sync-control.is-disabled{opacity:.55}
.mv7-sync-device-card { padding:22px!important; }.mv7-sync-device-card>h4{margin-bottom:16px}.mv7-sync-device { display:grid; grid-template-columns:66px 1fr; gap:14px; align-items:center; min-height:134px; padding:18px; border:1px solid var(--v2-line); border-radius:14px; background:rgba(255,255,255,.018); }
.mv7-sync-device>span { display:grid; width:58px; height:58px; place-items:center; border-radius:50%; background:linear-gradient(145deg,#929b96,#353b38); color:white; font-size:31px; }.mv7-sync-device>div{display:grid;gap:5px}.mv7-sync-device strong{font-size:12px}.mv7-sync-device small{color:var(--v2-muted);font-size:var(--v2-text-micro)}
.mv7-sync-local-state { display:flex;align-items:center;gap:8px;margin:14px 3px 0;color:var(--v2-green-bright);font-size:var(--v2-text-xs)}.mv7-sync-local-state i{width:7px;height:7px;border-radius:50%;background:var(--v2-green)}
.mv7-sync-status-card { padding:20px!important; }.mv7-sync-status-row{display:grid;grid-template-columns:22px 1fr auto;gap:9px;align-items:center;min-height:57px;border-bottom:1px solid rgba(255,255,255,.065)}.mv7-sync-status-row:last-child{border-bottom:0}.mv7-sync-status-row i{display:grid;width:17px;height:17px;place-items:center;border-radius:50%;background:var(--v2-green);color:#052416}.mv7-sync-status-row svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2}.mv7-sync-status-row span,.mv7-sync-status-row b{font-size:var(--v2-text-xs)}.mv7-sync-status-row b{font-weight:500;color:var(--v2-muted)}
.mv7-sync-offline { display:grid;grid-template-columns:38px 1fr;gap:12px;padding:20px!important}.mv7-sync-offline>svg{width:34px;height:34px;fill:rgba(45,222,152,.08);stroke:var(--v2-green);stroke-width:1.5}.mv7-sync-offline h4{margin:0 0 8px}.mv7-sync-offline p{margin:0 0 18px!important;color:var(--v2-muted);font-size:var(--v2-text-xs);line-height:1.55}.mv7-sync-offline small{color:var(--v2-muted);font-size:var(--v2-text-micro);line-height:1.55}
@media (max-width: 1400px) {
  .mv7-tab-layout { grid-template-columns:minmax(0,1fr); }
  .mv7-tab-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mv7-privacy-workspace .mv7-tab-layout { grid-template-columns:1fr; }
  .mv7-privacy-workspace .mv7-tab-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mv7-privacy-policy { grid-column:1/-1; }
  .mv7-sync-workspace .mv7-tab-layout { grid-template-columns:1fr; }
  .mv7-sync-workspace .mv7-tab-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mv7-sync-offline { grid-column:1/-1; }
  .mv7-appearance-workspace .mv7-tab-layout { grid-template-columns:1fr; }
  .mv7-profile-workspace .mv7-tab-layout { grid-template-columns:1fr; }
  .mv7-profile-workspace .mv7-tab-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }.mv7-profile-session-button{grid-column:1/-1}
}
.mv7-security-workspace { gap:14px; }
.mv7-security-title { margin-bottom:3px; }
.mv7-security-layout { display:grid; grid-template-columns:minmax(0,1fr) 338px; gap:16px; align-items:start; }
.mv7-security-main,.mv7-security-rail { display:grid; gap:16px; min-width:0; }
.mv7-security-hero { display:grid; grid-template-columns:170px minmax(0,1fr) 190px; min-height:196px; padding:22px 28px; }
.mv7-security-shield { position:relative; display:grid; width:132px; height:132px; place-items:center; justify-self:center; border:1px solid rgba(45,222,152,.3); border-radius:50%; background:radial-gradient(circle,rgba(45,222,152,.16),rgba(45,222,152,.035) 48%,transparent 50%); box-shadow:0 0 0 14px rgba(45,222,152,.025), inset 0 0 35px rgba(45,222,152,.08); }
.mv7-security-shield>svg:first-child { width:88px; height:88px; fill:rgba(45,222,152,.12); stroke:var(--v2-green); stroke-width:1.4; filter:drop-shadow(0 8px 18px rgba(45,222,152,.16)); }
.mv7-security-shield .mv7-security-check { position:absolute; width:42px; height:42px; fill:none; stroke:#dbe9e2; stroke-width:2.5; }
.mv7-security-hero-copy { display:grid; align-content:center; gap:7px; }
.mv7-security-hero-copy h4 { margin:0; font-size:19px; }
.mv7-security-hero-copy p { max-width:38ch; margin:0; color:var(--v2-muted); font-size:var(--v2-text-sm); line-height:1.55; }
.mv7-security-score { display:grid; align-content:center; gap:7px; }
.mv7-security-score>small { color:var(--v2-muted); font-size:var(--v2-text-xs); }
.mv7-security-score strong { color:var(--v2-green-bright); font-size:34px; letter-spacing:-.04em; }
.mv7-security-score strong em { color:var(--v2-muted); font-size:18px; font-style:normal; font-weight:500; }
.mv7-security-score progress { width:100%; height:6px; overflow:hidden; appearance:none; border:0; border-radius:999px; background:rgba(255,255,255,.08); }
.mv7-security-score progress::-webkit-progress-bar { border-radius:999px; background:rgba(255,255,255,.08); }
.mv7-security-score progress::-webkit-progress-value { border-radius:999px; background:linear-gradient(90deg,#17b97a,#39e9a6); }
.mv7-security-score progress::-moz-progress-bar { border-radius:999px; background:linear-gradient(90deg,#17b97a,#39e9a6); }
.mv7-security-access,.mv7-security-sessions { padding:20px; }
.mv7-security-access-row { display:grid; grid-template-columns:44px minmax(0,1fr) minmax(120px,auto) 112px; gap:12px; align-items:center; min-height:69px; border-bottom:1px solid rgba(255,255,255,.065); }
.mv7-security-access-row:last-of-type { border-bottom:0; }
/* Passkey: fila oculta por defecto hasta el feature-detect de WebAuthn en
   JS — .mv7-security-access-row fija display:grid sin condición, así que
   [hidden] necesita su propio override (mismo bug de especificidad que ya
   apareció 5 veces esta sesión). Igual para el botón de login del dialog,
   que hereda display:inline-flex de .mv7-secondary-button. */
.mv7-security-access-row[hidden],
#auth-passkey-login[hidden] { display: none; }
.mv7-security-row-icon { display:grid; width:38px; height:38px; place-items:center; border:1px solid var(--v2-line); border-radius:10px; background:rgba(255,255,255,.018); }
.mv7-security-row-icon svg { width:19px; height:19px; fill:none; stroke:#cfd6d2; stroke-width:1.55; }
.mv7-security-access-row>span:nth-child(2) { display:grid; gap:4px; }
.mv7-security-access-row strong { font-size:12px; }
.mv7-security-access-row small { color:var(--v2-muted); font-size:var(--v2-text-xs); }
.mv7-security-access-row>em { display:inline-flex; align-items:center; gap:6px; color:var(--v2-muted); font-size:var(--v2-text-xs); font-style:normal; }
.mv7-security-access-row>em svg { width:15px; height:15px; fill:none; stroke:currentColor; }
.mv7-security-access-row>em.is-ok { color:var(--v2-green-bright); }
.mv7-security-access-row .is-accent { border-color:rgba(45,222,152,.65); color:var(--v2-green-bright); }
.mv7-security-access-row select { min-height:38px; padding:0 11px; border:1px solid var(--v2-line); border-radius:10px; background:rgba(255,255,255,.025); color:var(--v2-muted); }
.mv7-security-access-row.is-visual-only { grid-template-columns:44px minmax(0,1fr) 226px; }
.mv7-security-access-row.is-visual-only .mv7-switch { justify-self:end; }
.mv7-security-privacy-row { display:flex; align-items:center; gap:14px; min-height:62px; margin-top:8px; padding:10px 12px; border:1px solid rgba(45,222,152,.13); border-radius:11px; background:rgba(45,222,152,.035); }
.mv7-security-privacy-row>span { display:grid; flex:1; gap:4px; }
.mv7-security-privacy-row strong { font-size:var(--v2-text-sm); }.mv7-security-privacy-row small{color:var(--v2-muted);font-size:var(--v2-text-xs)}
.mv7-security-sessions>p { margin:-5px 0 10px; color:var(--v2-muted); font-size:var(--v2-text-xs); }
.mv7-device-symbol { display:grid; width:36px; height:36px; place-items:center; color:var(--v2-green-bright); font-size:20px; }
.mv7-security-guest-note { padding:12px 18px; }
.mv7-security-guest-note .mv7-security-privacy-row { margin:0 0 6px; }
.mv7-security-guest-note .mv7-settings-notice { margin:0!important; border:0; padding:8px 2px 5px; }
.mv7-security-rail .mv7-settings-card { padding:20px; }
.mv7-security-list-item { display:grid; grid-template-columns:34px 1fr; gap:11px; align-items:start; padding:12px 0; border-bottom:1px solid rgba(255,255,255,.065); }
.mv7-security-list-item i { display:grid; width:28px; height:28px; place-items:center; border-radius:50%; background:rgba(45,222,152,.09); color:var(--v2-green-bright); font-size:12px; font-style:normal; }
.mv7-security-list-item i svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.8; }
.mv7-security-list-item.is-warning i { border:1px solid rgba(245,163,11,.34); background:rgba(245,163,11,.07); color:#f5a30b; }
.mv7-security-list-item span { display:grid; gap:5px; }
.mv7-security-list-item strong { font-size:var(--v2-text-sm); line-height:1.35; }
.mv7-security-list-item small { color:var(--v2-muted); font-size:var(--v2-text-xs); line-height:1.45; }
.mv7-security-rail-link { width:100%; padding:15px 0 0; text-align:left; }
.mv7-security-alert { border-color:rgba(255,98,89,.55); background:linear-gradient(145deg,rgba(255,98,89,.055),rgba(20,16,17,.88)); }
.mv7-security-alert-title { display:flex; align-items:center; gap:11px; }
.mv7-security-alert-title i { display:grid; width:36px; height:36px; place-items:center; border-radius:50%; background:rgba(255,98,89,.12); color:#ff6259; }
.mv7-security-alert-title svg { width:20px; height:20px; fill:none; stroke:currentColor; }
.mv7-security-alert-title h4 { margin:0; }
.mv7-security-alert>p { margin:12px 0 16px; color:var(--v2-muted); font-size:var(--v2-text-xs); line-height:1.6; }
.mv7-security-alert .mv7-danger-button { width:100%; }
.mv7-visual-only-button:disabled,.mv7-security-access-row :disabled { cursor:not-allowed; opacity:.72; }
.mv7-danger-card { border-color: rgba(255, 98, 89, 0.28); }.mv7-danger-card strong { color: var(--v2-text); }
.mv7-settings-context { display: grid; gap: 14px; }.mv7-settings-context-card { padding: 18px; }.mv7-settings-context-card:first-child { display: grid; grid-template-columns: auto 1fr; gap: 13px; align-items: center; }.mv7-settings-context-card:first-child div:not(.mv7-settings-avatar) { display:grid;gap:4px }.mv7-settings-context-card:first-child small,.mv7-security-note small{color:var(--v2-muted);font-size:var(--v2-text-xs)}.mv7-settings-context-card:first-child button{grid-column:1/-1;width:100%;margin-top:6px}.mv7-data-ring{display:grid;width:126px;height:126px;margin:18px auto;place-items:center;border-radius:50%;background:conic-gradient(var(--v2-green) 100%,rgba(255,255,255,.1) 0);position:relative}.mv7-data-ring::before{position:absolute;inset:10px;border-radius:50%;background:#111512;content:''}.mv7-data-ring span{z-index:1;display:grid;justify-items:center;color:var(--v2-muted);font-size:var(--v2-text-xs)}.mv7-data-ring strong{color:var(--v2-text);font-size:25px}.mv7-context-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--v2-line);color:var(--v2-muted);font-size:var(--v2-text-xs)}.mv7-context-row b{color:var(--v2-text);font-weight:500}.mv7-security-note{display:flex;gap:12px}.mv7-security-note svg{width:28px;height:28px;fill:none;stroke:var(--v2-green);stroke-width:1.5}.mv7-security-note div{display:grid;gap:6px}

/* En paneles largos, los laterales permanecen completos y accesibles en el
   viewport. Si un rail supera la altura disponible, desplaza solo su propio
   contenido en vez de quedar cortado al hacer scroll en la pagina. */
@media (min-width: 1041px) {
  .mv7-settings-nav,
  .mv7-category-inspector,
  .mv7-notifications-rail,
  .mv7-security-rail {
    top: var(--mv7-settings-sticky-top);
    max-height: calc(100vh - var(--mv7-settings-sticky-top) - var(--mv7-settings-sticky-bottom));
    max-height: calc(100dvh - var(--mv7-settings-sticky-top) - var(--mv7-settings-sticky-bottom));
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-color: rgba(255,255,255,.18) transparent;
    scrollbar-width: thin;
  }

  .mv7-settings-nav {
    min-height: min(730px, calc(100dvh - var(--mv7-settings-sticky-top) - var(--mv7-settings-sticky-bottom)));
  }

  .mv7-category-inspector,
  .mv7-notifications-rail,
  .mv7-security-rail {
    position: sticky;
    align-self: start;
  }
}

@media (min-width: 1181px) {
  .mv7-tab-rail,
  .mv7-settings-context {
    position: sticky;
    top: var(--mv7-settings-sticky-top);
    align-self: start;
    max-height: calc(100vh - var(--mv7-settings-sticky-top) - var(--mv7-settings-sticky-bottom));
    max-height: calc(100dvh - var(--mv7-settings-sticky-top) - var(--mv7-settings-sticky-bottom));
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-color: rgba(255,255,255,.18) transparent;
    scrollbar-width: thin;
  }
}

@media (max-width: 1180px) { .mv7-settings-hub { grid-template-columns: 210px minmax(0,1fr); }.mv7-settings-context { display:none; } }
@media (max-width: 1320px) { .mv7-security-layout{grid-template-columns:minmax(0,1fr) 292px}.mv7-security-hero{grid-template-columns:140px minmax(0,1fr) 160px;padding-inline:20px}.mv7-security-shield{width:112px;height:112px}.mv7-security-access-row{grid-template-columns:42px minmax(0,1fr) auto 96px}.mv7-security-access-row.is-visual-only{grid-template-columns:42px minmax(0,1fr) 190px} }
@media (max-width: 1320px) { .mv7-notifications-layout{grid-template-columns:minmax(0,1fr) 320px}.mv7-notification-row{grid-template-columns:32px minmax(0,1fr) auto 102px}.mv7-notification-row:not(:has(select)){grid-template-columns:32px minmax(0,1fr) auto} }
@media (max-width: 1320px) { .mv7-category-workspace{grid-template-columns:minmax(0,1fr) 290px}.mv7-category-filters{grid-template-columns:repeat(3,72px)} }
@media (max-width: 1040px) { .mv7-security-layout{grid-template-columns:1fr}.mv7-security-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.mv7-security-alert{grid-column:1/-1} }
@media (max-width: 1040px) { .mv7-notifications-layout{grid-template-columns:1fr}.mv7-notifications-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.mv7-notification-preview{grid-row:span 2} }
@media (max-width: 1040px) { .mv7-category-workspace{grid-template-columns:1fr}.mv7-category-inspector{grid-template-columns:1fr 1fr}.mv7-category-inspector-empty{min-height:180px} }

/* Con la barra principal todavía visible, la navegación interna vertical
   dejaba menos de 400 px al contenido entre 769 y 1040 px. */
@media (max-width: 1040px) {
  .mv7-settings-hub,.mv7-settings-hub:has(.mv7-settings-tab[data-settings-panel='categories']:not([hidden])),.mv7-settings-hub:has(.mv7-settings-tab[data-settings-panel='faq']:not([hidden])),.mv7-settings-hub:has(.mv7-settings-tab[data-settings-panel='danger']:not([hidden])){display:block}
  .mv7-settings-nav{position:static;min-height:0;margin-bottom:14px;padding:8px;flex-direction:row;overflow-x:auto;scrollbar-width:none}.mv7-settings-nav::-webkit-scrollbar{display:none}.mv7-settings-nav .mv7-settings-search,.mv7-settings-preview-status{display:none}.mv7-settings-nav-item{flex:0 0 auto;min-height:40px;padding:0 12px;white-space:nowrap}
  .mv7-settings-context{display:none!important}
  .mv7-category-toolbar{grid-template-columns:minmax(190px,1fr) auto auto;gap:10px}.mv7-category-workspace{width:100%}
  .mv7-appearance-workspace .mv7-tab-rail{grid-template-columns:1fr 1fr}.mv7-appearance-font-range{min-width:0}.mv7-appearance-font-range input{min-width:0;width:100%}
}

@media (max-width: 768px) {
  .mv7-settings-view {
    padding: 21px 14px calc(42px + env(safe-area-inset-bottom));
  }

  .mv7-settings-hub { display: block; }
  .mv7-settings-nav { position: static; min-height: 0; margin-bottom: 14px; padding: 8px; flex-direction: row; overflow-x: auto; }
  .mv7-settings-nav .mv7-settings-search, .mv7-settings-preview-status { display: none; }
  .mv7-settings-nav-item { flex: 0 0 auto; min-height: 38px; padding: 0 11px; }
  .mv7-settings-nav-item svg { width: 14px; height: 14px; }
  .mv7-settings-title-action { align-items: flex-start; }
  .mv7-settings-title-action .mv7-primary-button { padding-inline: 12px; }
  .mv7-profile-card { grid-template-columns: 82px 1fr; }
  .mv7-settings-avatar { width: 72px; height: 72px; font-size: 24px; }
  .mv7-settings-fields { grid-template-columns: 1fr; }
  .mv7-theme-grid { grid-template-columns: 1fr; }
  .mv7-how-grid { grid-template-columns: 1fr; }
  .mv7-settings-row { flex-wrap: wrap; }
  .mv7-settings-row select { max-width: 100%; }

  .mv7-settings-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mv7-backup-header {
    grid-template-columns: 44px minmax(0, 1fr);
    padding: 18px;
  }

  .mv7-backup-header-icon {
    width: 44px;
    height: 44px;
  }

  .mv7-backup-local-badge {
    grid-column: 2;
    justify-self: start;
  }

  .mv7-backup-security-note {
    margin: 0 18px 16px;
  }

  .mv7-backup-card .mv7-settings-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mv7-backup-card .mv7-settings-metric:nth-child(3n) {
    border-right: 1px solid var(--v2-line);
  }

  .mv7-backup-card .mv7-settings-metric:nth-child(2n) {
    border-right: 0;
  }

  .mv7-backup-card .mv7-settings-metric:nth-last-child(-n+3) {
    border-bottom: 1px solid var(--v2-line);
  }

  .mv7-backup-card .mv7-settings-metric:last-child {
    border-right: 0;
    border-bottom: 0;
  }

  .mv7-backup-footer {
    grid-template-columns: 1fr;
    padding: 17px 18px 18px;
  }

  .mv7-settings-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .mv7-settings-actions .mv7-primary-button,
  .mv7-settings-file-label {
    width: 100%;
  }

  .mv7-backup-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 8px;
  }

  .mv7-backup-actions .mv7-primary-button,
  .mv7-backup-actions .mv7-secondary-button {
    width: 100%;
  }
  .mv7-security-layout,.mv7-security-rail { grid-template-columns:1fr; }
  .mv7-security-alert { grid-column:auto; }
  .mv7-security-hero { grid-template-columns:88px 1fr; min-height:0; padding:18px; }
  .mv7-security-shield { width:76px; height:76px; }
  .mv7-security-shield>svg:first-child { width:52px; height:52px; }
  .mv7-security-shield .mv7-security-check { width:26px; height:26px; }
  .mv7-security-score { grid-column:1/-1; grid-template-columns:1fr auto; margin-top:8px; }
  .mv7-security-score progress { grid-column:1/-1; }
  .mv7-security-access-row,.mv7-security-access-row.is-visual-only { grid-template-columns:40px minmax(0,1fr) auto; padding:10px 0; }
  .mv7-security-access-row>button,.mv7-security-access-row>select { grid-column:2/-1; width:100%; }
  .mv7-notifications-layout,.mv7-notifications-rail { grid-template-columns:1fr; }
  .mv7-notification-preview { grid-row:auto; }
  .mv7-notifications-title { text-align:left; }
  .mv7-notification-row,.mv7-notification-row:not(:has(select)) { grid-template-columns:32px minmax(0,1fr) auto; padding:9px 0; }
  .mv7-notification-row select { grid-column:2/-1; width:100%; }
  .mv7-notification-channels { grid-template-columns:1fr; }
  .mv7-notification-channels button { border-right:0; border-bottom:1px solid var(--v2-line); }
  .mv7-notification-channels button:last-child { border-bottom:0; }
  .mv7-category-toolbar { grid-template-columns:1fr; }
  .mv7-category-filters { grid-template-columns:repeat(3,1fr); }
  .mv7-category-workspace,.mv7-category-inspector { grid-template-columns:1fr; }
  .mv7-category-table-head { display:none; }
  .mv7-category-list-table .mv7-category-chip { grid-template-columns:42px 1fr auto; }
  .mv7-category-row-uses,.mv7-category-row-type { grid-column:2; }
  .mv7-category-row-grip { grid-column:3; grid-row:1/span 3; }
  .mv7-privacy-visibility-options,.mv7-privacy-actions,.mv7-privacy-workspace .mv7-tab-rail { grid-template-columns:1fr; }
  .mv7-privacy-policy { grid-column:auto; }
  .mv7-privacy-visibility-options button { border-right:0; border-bottom:1px solid var(--v2-line); }
  .mv7-privacy-visibility-options button:last-child { border-bottom:0; }
  .mv7-sync-workspace .mv7-tab-rail { grid-template-columns:1fr; }
  .mv7-sync-offline { grid-column:auto; }
  .mv7-sync-flow .mv7-how-grid>div:not(:last-child)::after { display:none; }
  .mv7-sync-control { grid-template-columns:34px 1fr auto; }
  .mv7-profile-workspace .mv7-tab-rail { grid-template-columns:1fr; }.mv7-profile-session-button{grid-column:auto}
  .mv7-profile-workspace .mv7-profile-card { grid-template-columns:1fr; }
  .mv7-profile-workspace .mv7-settings-fields,.mv7-profile-workspace .mv7-profile-card>#settings-profile-save { grid-column:1; }
  .mv7-profile-workspace .mv7-profile-card>#settings-profile-save { width:100%; }
}

