    :root {
      --surface: #faf8f5;
      --surface-2: #fff;
      --font: 'DM Sans', system-ui, sans-serif;
      --font-display: 'Lora', Georgia, serif;
      --ink: #1a2332;
      --ink-soft: #5c6573;
      --border: rgba(26, 35, 50, 0.10);
      --accent: #ef6c00;
      --accent-soft: rgba(239, 108, 0, 0.12);
      --purple: #6b468b;
      --blue: #4a90b8;
      --green: #3d8f62;
      --c-laranja: #ef6c00;
      --c-laranja-dark: #c25d00;
      --c-laranja-soft: rgba(239, 108, 0, 0.12);
      --ink-muted: #718096;
      --percurso-heading: #6b4b1a;
      --percurso-border: rgba(107, 75, 26, 0.12);
      --percurso-surface: rgba(255, 255, 255, 0.92);
      --opp-mix: #3a7ca5;
      --opp-campaign: #4c8c4a;
      --opp-project: #ef6c00;
      --opp-group: #7b5ea7;
      --cta-green: #4c8c4a;
      --accent-login: #ef6c00;
      --accent-rede: #7c5cbf;
      --accent-campanhas: #3d8f62;
      --accent-escola: #4a90b8;
      --accent-gradient: linear-gradient(145deg, #ff9a3d, #ef6c00);
      --accent-glow: 0 4px 14px rgba(239, 108, 0, 0.24);
      --accent-glow-mark: 0 6px 16px rgba(239, 108, 0, 0.28);
      --filter-bg-active-rede: rgba(124, 92, 191, 0.10);
      --filter-border-active-rede: rgba(124, 92, 191, 0.35);
      --filter-text-active-rede: #4a3568;
      --filter-bg-active-escola: rgba(74, 144, 184, 0.10);
      --filter-border-active-escola: rgba(74, 144, 184, 0.35);
      --filter-text-active-escola: #2d6a9f;
      --filter-bg-active-campanhas: rgba(61, 143, 98, 0.10);
      --filter-border-active-campanhas: rgba(61, 143, 98, 0.35);
      --filter-text-active-campanhas: #2d6b47;
      --filter-bg-active-musicas: rgba(239, 108, 0, 0.10);
      --filter-border-active-musicas: rgba(239, 108, 0, 0.35);
      --filter-text-active-musicas: #8b4513;
      --topbar-height: 3.65rem;
      --dock-height: 7.5rem;
    }

    * { box-sizing: border-box; }

    html,
    body {
      height: 100%;
      overflow: hidden;
    }

    body {
      margin: 0;
      min-height: 100vh;
      padding: 0;
      font-family: var(--font);
      background: var(--surface);
      color: var(--ink);
    }

    .tablet-shell {
      width: 100%;
      height: 100vh;
      min-height: 100vh;
      max-height: 100vh;
      margin: 0;
      display: flex;
      flex-direction: column;
      background: var(--surface);
      overflow: hidden;
    }

    .tablet-topbar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 1rem;
      width: 100%;
      padding: 0.85rem 1.35rem;
      flex-shrink: 0;
      background:
        linear-gradient(180deg, rgba(255, 236, 210, 0.55) 0%, rgba(255, 255, 255, 0) 100%),
        var(--surface);
      border-bottom: 1px solid var(--border);
      position: relative;
      z-index: 60;
    }

    .tablet-topbar__start {
      display: flex;
      align-items: center;
      gap: 0.65rem;
      min-width: 0;
    }

    .tablet-menu-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2.5rem;
      height: 2.5rem;
      padding: 0;
      border: 1px solid var(--border);
      border-radius: 0.7rem;
      background: rgba(255, 255, 255, 0.82);
      color: var(--ink);
      cursor: pointer;
      flex-shrink: 0;
      transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
    }

    .tablet-menu-btn svg {
      width: 1.35rem;
      height: 1.35rem;
      display: block;
    }

    .tablet-menu-btn:hover {
      border-color: rgba(239, 108, 0, 0.28);
      color: var(--accent);
    }

    .tablet-shell--drawer-open .tablet-menu-btn {
      background: var(--accent-soft);
      border-color: rgba(239, 108, 0, 0.35);
      color: var(--accent);
      box-shadow: 0 0 0 3px rgba(239, 108, 0, 0.12);
    }

    .tablet-drawer-backdrop {
      position: fixed;
      inset: 0;
      top: var(--topbar-height);
      bottom: 0;
      z-index: 54;
      border: none;
      padding: 0;
      margin: 0;
      background: rgba(26, 35, 50, 0.42);
      opacity: 0;
      pointer-events: none;
      cursor: pointer;
      transition: opacity 0.26s ease;
    }

    .tablet-shell--drawer-open .tablet-drawer-backdrop {
      opacity: 1;
      pointer-events: auto;
    }

    .tablet-brand {
      display: flex;
      align-items: center;
      gap: 0.75rem;
      min-width: 0;
    }

    .tablet-brand__mark {
      width: 2.35rem;
      height: 2.35rem;
      border-radius: 0.7rem;
      background: var(--accent-gradient);
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: var(--accent-glow-mark);
      flex-shrink: 0;
    }

    .tablet-brand__mark svg {
      width: 1.35rem;
      height: 1.35rem;
      display: block;
    }

    .tablet-brand__text strong {
      display: block;
      font-family: var(--font-display);
      font-size: 1.38rem;
      line-height: 1.1;
      color: #6b4b1a;
    }

    .tablet-topbar__end {
      display: flex;
      align-items: center;
      gap: 0.35rem;
      flex-shrink: 0;
    }

    .tablet-notifications,
    .tablet-messages {
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2.5rem;
      height: 2.5rem;
      padding: 0;
      border: none;
      border-radius: 0.7rem;
      background: transparent;
      color: var(--ink-soft);
      cursor: pointer;
      transition: background 0.18s ease, color 0.18s ease;
    }

    .tablet-notifications:hover,
    .tablet-notifications:focus-visible,
    .tablet-messages:hover,
    .tablet-messages:focus-visible {
      color: var(--accent);
      background: rgba(239, 108, 0, 0.08);
    }

    .tablet-notifications__icon,
    .tablet-messages__icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }

    .tablet-notifications__icon svg,
    .tablet-messages__icon svg {
      width: 1.45rem;
      height: 1.45rem;
      display: block;
    }

    .tablet-notifications__badge {
      position: absolute;
      top: 0.1rem;
      right: 0.06rem;
      min-width: 1.05rem;
      height: 1.05rem;
      padding: 0 0.22rem;
      border-radius: 999px;
      background: #e53935;
      color: #fff;
      font-size: 0.58rem;
      font-weight: 700;
      line-height: 1.05rem;
      text-align: center;
      font-variant-numeric: tabular-nums;
      box-shadow: 0 0 0 1.5px var(--surface);
      pointer-events: none;
    }

    .tablet-notifications--empty .tablet-notifications__badge {
      display: none;
    }

    .tablet-messages__badge {
      position: absolute;
      top: 0.1rem;
      right: 0.06rem;
      min-width: 1.05rem;
      height: 1.05rem;
      padding: 0 0.22rem;
      border-radius: 999px;
      background: #e53935;
      color: #fff;
      font-size: 0.58rem;
      font-weight: 700;
      line-height: 1.05rem;
      text-align: center;
      font-variant-numeric: tabular-nums;
      box-shadow: 0 0 0 1.5px var(--surface);
      pointer-events: none;
    }

    .tablet-messages--empty .tablet-messages__badge {
      display: none;
    }

    .tablet-profile {
      display: flex;
      align-items: center;
      gap: 0.45rem;
      padding: 0;
      border: none;
      background: transparent;
      cursor: pointer;
      font: inherit;
    }

    .tablet-profile__avatar {
      width: 2.85rem;
      height: 2.85rem;
      border-radius: 50%;
      object-fit: cover;
      border: 1.5px solid rgba(26, 35, 50, 0.14);
      flex-shrink: 0;
    }

    .tablet-profile__initial {
      width: 2.85rem;
      height: 2.85rem;
      border-radius: 50%;
      border: none;
      flex-shrink: 0;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      color: #fff;
      background: var(--accent-gradient);
      box-shadow: var(--accent-glow);
    }

    .tablet-profile__initial svg {
      width: 1.45rem;
      height: 1.45rem;
      display: block;
    }

    .tablet-profile__initial[hidden],
    .tablet-profile__avatar[hidden] {
      display: none !important;
    }

    .tablet-profile {
      transition: background-color 0.18s ease, box-shadow 0.18s ease;
    }

    .tablet-profile--open {
      background: rgba(30, 58, 95, 0.08);
      box-shadow: inset 0 0 0 1px rgba(30, 58, 95, 0.12);
    }

    .tablet-profile__chev {
      width: 1.2rem;
      height: 1.2rem;
      color: var(--accent);
      flex-shrink: 0;
      transition: transform 0.18s ease;
    }

    .tablet-profile__chev svg {
      width: 100%;
      height: 100%;
      display: block;
    }

    .tablet-player__btn > svg,
    .tablet-player__btn > span,
    .tablet-nav__fab > svg,
    .tablet-nav__fab > span,
    .project-row__play > svg,
    .project-row__heart > svg {
      display: block;
    }

    .tablet-player__btn svg,
    .tablet-nav__fab svg {
      width: 100%;
      height: 100%;
    }

    .hub-card--active {
      box-shadow:
        inset 0 0 0 2px rgba(239, 108, 0, 0.45),
        0 4px 10px rgba(26, 35, 50, 0.07),
        0 14px 34px rgba(210, 140, 70, 0.18);
    }

    @media (max-width: 900px) {
      .tablet-brand__text strong {
        font-size: 1.035rem;
        white-space: nowrap;
      }

      .hub-summary__title--desktop,
      .hub-summary__sub--desktop {
        display: none;
      }

      .hub-summary__sub--mobile {
        display: block;
        margin: 0 0 0.75rem;
      }

      .hub-stat {
        padding: 0.6rem 0.65rem;
      }

      .hub-stat__value {
        font-size: 1.15rem;
      }

      .tablet-sidebar {
        width: min(100vw, 500px);
        max-width: 100%;
      }

      .tablet-player { grid-template-columns: 1fr; }
      .tablet-player__controls { justify-content: center; }

      .tablet-nav {
        --tablet-nav-icon-size: calc(var(--tablet-nav-fab-base) * 0.85 * 0.75);
        padding: 0.28rem 0.55rem 0.34rem;
      }
    }

    @media (max-width: 640px) {
      .project-row {
        grid-template-columns: 1fr;
      }
      .project-row__main {
        width: 100%;
      }
    }

    .tablet-body {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      flex: 1;
      min-height: 0;
      width: 100%;
      position: relative;
      overflow: hidden;
      padding-bottom: var(--dock-height);
    }

    .tablet-shell:not(.tablet-shell--section-musicas) .tablet-body {
      grid-template-columns: minmax(0, 1fr);
    }

    .tablet-shell:not(.tablet-shell--section-musicas) .tablet-main {
      grid-column: 1;
    }

    .hub-summary__title {
      margin: 0 0 0.2rem;
      font-family: var(--font-display);
      font-size: 1.15rem;
      color: #6b4b1a;
    }

    .hub-summary__sub {
      margin: 0 0 1rem;
      font-size: 0.84rem;
      color: var(--ink-soft);
      line-height: 1.4;
    }

    .hub-stats {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 0.55rem;
      margin-bottom: 1rem;
    }

    .hub-stat {
      padding: 0.75rem 0.8rem;
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.82);
      border: 1px solid var(--border);
      box-shadow: 0 4px 14px rgba(26, 35, 50, 0.04);
    }

    .hub-stat__value {
      display: block;
      font-size: 1.35rem;
      font-weight: 700;
      line-height: 1.1;
      color: var(--ink);
    }

    .hub-stat__label {
      display: block;
      margin-top: 0.2rem;
      font-size: 0.72rem;
      font-weight: 600;
      color: var(--ink-soft);
      line-height: 1.25;
    }

    .hub-stat--accent .hub-stat__value { color: var(--accent); }
    .hub-stat--purple .hub-stat__value { color: var(--purple); }
    .hub-stat--blue .hub-stat__value { color: var(--blue); }
    .hub-stat--green .hub-stat__value { color: var(--green); }

    .hub-cloud-stack {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
    }

    .hub-summary__sub--mobile {
      display: none;
    }

    .hub-accordion {
      margin: 0;
    }

    .hub-accordion > summary {
      list-style: none;
      cursor: pointer;
    }

    .hub-accordion > summary::-webkit-details-marker {
      display: none;
    }

    .hub-accordion__summary {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.65rem;
    }

    .hub-accordion__summary-main {
      min-width: 0;
      flex: 1;
    }

    .hub-accordion__chev {
      width: 1.1rem;
      height: 1.1rem;
      flex-shrink: 0;
      color: var(--ink-soft);
      transition: transform 0.2s ease;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }

    .hub-accordion__chev svg {
      width: 100%;
      height: 100%;
      display: block;
    }

    .hub-accordion[open] > .hub-accordion__summary .hub-accordion__chev {
      transform: rotate(180deg);
    }

    @media (max-width: 900px) {
      .hub-accordion {
        border: 1px solid var(--border);
        border-radius: 14px;
        background: rgba(255, 255, 255, 0.82);
        box-shadow: 0 2px 10px rgba(26, 35, 50, 0.04);
        margin-bottom: 0.65rem;
      }

      .hub-accordion--summary {
        margin-bottom: 0.75rem;
      }

      .hub-accordion__summary {
        padding: 0.8rem 0.9rem;
      }

      .hub-accordion__panel {
        padding: 0 0.9rem 0.9rem;
      }

      .hub-accordion__title {
        display: block;
        font-family: var(--font-display);
        font-size: 1rem;
        color: #6b4b1a;
      }

      .hub-accordion__meta {
        display: block;
        margin-top: 0.15rem;
        font-size: 0.72rem;
        color: var(--ink-soft);
        font-weight: 500;
        line-height: 1.35;
      }

      .hub-accordion__summary--cloud {
        align-items: flex-start;
      }

      .hub-accordion__cloud-preview {
        display: flex;
        align-items: flex-start;
        gap: 0.65rem;
        min-width: 0;
        flex: 1;
      }

      .hub-accordion__cloud-preview strong {
        display: block;
        font-size: 0.9rem;
        color: var(--ink);
      }

      .hub-accordion__cloud-preview .hub-accordion__cloud-hint {
        display: block;
        margin-top: 0.12rem;
        font-size: 0.75rem;
        color: var(--ink-soft);
        line-height: 1.35;
        font-weight: 500;
      }

      .hub-accordion__summary-badge {
        flex-shrink: 0;
        align-self: center;
        padding: 0.28rem 0.55rem;
        border-radius: 999px;
        background: var(--c-laranja-soft);
        color: var(--c-laranja-dark);
        font-size: 0.68rem;
        font-weight: 600;
        line-height: 1;
        white-space: nowrap;
      }

      .hub-accordion__summary-end {
        display: inline-flex;
        align-items: center;
        flex-shrink: 0;
      }

      .hub-accordion__panel--cloud {
        padding-top: 0;
      }

      .hub-accordion__panel--cloud .home-cloud-card {
        border: none;
        box-shadow: none;
        padding: 0.35rem 0 0;
        background: transparent;
      }

      .hub-cloud-stack {
        gap: 0.65rem;
        margin-bottom: 0.25rem;
      }
    }

    @media (min-width: 901px) {
      .hub-accordion > summary {
        display: none;
      }

      .hub-accordion {
        border: none;
        background: transparent;
        box-shadow: none;
        margin: 0;
      }

      .hub-accordion__panel {
        padding: 0;
      }

      .hub-accordion--summary {
        margin-bottom: 1rem;
      }
    }

    .home-cloud-card {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.85rem;
      padding: 0.85rem 1rem;
      border-radius: 16px;
      background: var(--surface-2);
      border: 1px solid var(--border);
      box-shadow: 0 4px 18px rgba(26, 35, 50, 0.04);
    }

    .home-cloud-card--ors {
      align-items: flex-start;
    }

    .home-cloud-card-icon {
      flex-shrink: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 2.25rem;
      height: 2.25rem;
      border-radius: 10px;
      background: var(--c-laranja-soft);
    }

    .home-cloud-card-icon .mer-icon {
      width: 1.25rem;
      height: 1.25rem;
      color: var(--c-laranja-dark);
    }

    .home-cloud-card-icon--gdrive {
      background: transparent;
    }

    .home-cloud-card-icon--gdrive .mer-icon--gdrive {
      width: 1.75rem;
      height: 1.625rem;
    }

    .home-cloud-card-icon--gdrive.is-dimmed .mer-icon--gdrive {
      opacity: 0.42;
      filter: grayscale(1);
    }

    .home-cloud-card-body {
      flex: 1;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 0.5rem;
    }

    .home-cloud-card-text {
      display: flex;
      flex-direction: column;
      gap: 0.2rem;
      min-width: 0;
    }

    .home-cloud-card-text strong {
      font-size: 0.9375rem;
      color: var(--ink);
    }

    .home-cloud-card-text span {
      font-size: 0.8125rem;
      color: var(--ink-soft);
      line-height: 1.45;
    }

    .home-cloud-card-badge {
      flex-shrink: 0;
      align-self: center;
      padding: 0.35rem 0.65rem;
      border-radius: 999px;
      background: var(--c-laranja-soft);
      color: var(--c-laranja-dark);
      font-size: 0.75rem;
      font-weight: 600;
      line-height: 1;
      white-space: nowrap;
    }

    .home-cloud-quota-bar {
      height: 6px;
      border-radius: 999px;
      background: var(--border);
      overflow: hidden;
    }

    .home-cloud-quota-fill {
      height: 100%;
      border-radius: 999px;
      background: linear-gradient(90deg, var(--c-laranja), var(--c-laranja-dark));
      min-width: 2px;
    }

    .home-cloud-quota-label {
      margin: 0.3rem 0 0;
      font-size: 0.75rem;
      color: var(--ink-soft);
      line-height: 1.35;
    }

    .hub-cloud-btn {
      flex-shrink: 0;
      min-height: 2.5rem;
      padding: 0 1.1rem;
      border-radius: 999px;
      border: none;
      font: inherit;
      font-size: 0.9rem;
      font-weight: 600;
      cursor: pointer;
      white-space: nowrap;
    }

    .hub-cloud-btn--primary {
      background: linear-gradient(145deg, #ff9a3d, #ef6c00);
      color: #fff;
      box-shadow: 0 4px 12px rgba(239, 108, 0, 0.22);
    }

    .hub-cloud-btn--secondary {
      background: rgba(255, 255, 255, 0.9);
      color: var(--ink);
      border: 1px solid var(--border);
    }

    .tablet-sidebar {
      position: fixed;
      top: var(--topbar-height);
      left: 0;
      bottom: 0;
      width: min(500px, 92vw);
      max-width: 500px;
      z-index: 55;
      padding: 1rem;
      border-right: 1px solid var(--border);
      background: var(--surface);
      overflow: auto;
      transform: translateX(-105%);
      transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.28s ease;
      box-shadow: none;
    }

    .tablet-shell--drawer-open .tablet-sidebar {
      transform: translateX(0);
      box-shadow: 12px 0 40px rgba(26, 35, 50, 0.18);
    }

    .tablet-shell--drawer-open {
      overflow: hidden;
    }

    .tablet-main {
      grid-column: 2;
      grid-row: 1;
      display: flex;
      flex-direction: column;
      width: 100%;
      max-width: none;
      margin-inline: 0;
      min-width: 0;
      min-height: 0;
      height: 100%;
      overflow: hidden;
      padding: 0 1.35rem 0.75rem;
      background: transparent;
      container-type: inline-size;
      container-name: tablet-main;
    }

    .hub-view {
      display: flex;
      flex-direction: column;
      min-height: 0;
      flex: 1;
    }

    /* Músicas: hero full-bleed abaixo do topbar; conteúdo na linha de baixo */
    @media (min-width: 901px) {
      .tablet-shell--section-musicas .tablet-body {
        grid-template-rows: auto minmax(0, 1fr);
      }

      .tablet-shell--section-musicas .tablet-main {
        display: contents;
      }

      .tablet-shell--section-musicas .hub-view--musicas:not([hidden]) {
        display: contents;
      }

      .tablet-shell--section-musicas .hub-view--musicas > .hub-section-hero {
        grid-column: 1 / -1;
        grid-row: 1;
        margin: 0 0 0.75rem;
      }

      .tablet-shell--section-musicas .hub-view--musicas > .hub-musicas-root {
        grid-column: 1 / -1;
        grid-row: 2;
        min-width: 0;
        min-height: 0;
        height: 100%;
        overflow: auto;
        padding: 0 1.35rem 0.75rem;
      }

      .tablet-shell--section-rede .tablet-body {
        grid-template-rows: auto minmax(0, 1fr);
      }

      .tablet-shell--section-rede .tablet-main {
        display: contents;
      }

      .tablet-shell--section-rede .hub-view--rede:not([hidden]) {
        display: contents;
      }

      .tablet-shell--section-rede .hub-view--rede > .hub-section-hero,
      .tablet-shell--section-rede .hub-view--rede > .hub-rede-hero {
        grid-column: 1 / -1;
        grid-row: 1;
        margin: 0 0 0.75rem;
      }

      .tablet-shell--section-rede .hub-view--rede > .hub-rede-root {
        grid-column: 1 / -1;
        grid-row: 2;
        min-width: 0;
        min-height: 0;
        height: 100%;
        overflow: auto;
        padding: 0 1.35rem 0.75rem;
      }

      .tablet-shell--section-campanhas .tablet-body {
        grid-template-rows: auto minmax(0, 1fr);
      }

      .tablet-shell--section-campanhas .tablet-main {
        display: contents;
      }

      .tablet-shell--section-campanhas .hub-view--campanhas:not([hidden]) {
        display: contents;
      }

      .tablet-shell--section-campanhas .hub-view--campanhas > .hub-section-hero {
        grid-column: 1 / -1;
        grid-row: 1;
        margin: 0 0 0.75rem;
      }

      .tablet-shell--section-campanhas .hub-view--campanhas > .hub-campanhas-root {
        grid-column: 1 / -1;
        grid-row: 2;
        min-width: 0;
        min-height: 0;
        height: 100%;
        overflow: auto;
        padding: 0 1.35rem 0.75rem;
      }

      .tablet-shell--section-escola .tablet-body {
        grid-template-rows: auto minmax(0, 1fr);
      }

      .tablet-shell--section-escola .tablet-main {
        display: contents;
      }

      .tablet-shell--section-escola .hub-view--escola:not([hidden]) {
        display: contents;
      }

      .tablet-shell--section-escola .hub-view--escola > .hub-section-hero {
        grid-column: 1 / -1;
        grid-row: 1;
        margin: 0 0 0.75rem;
      }

      .tablet-shell--section-escola .hub-view--escola > .hub-escola-root {
        grid-column: 1 / -1;
        grid-row: 2;
        min-width: 0;
        min-height: 0;
        height: 100%;
        overflow: auto;
        padding: 0 1.35rem 0.75rem;
      }
    }

    .hub-view[hidden],
    .hub-editor-host[hidden] {
      display: none !important;
    }

    .hub-section-hero,
    .hub-rede-hero {
      position: relative;
      flex: 0 0 auto;
      margin: 0 -1.35rem 0.75rem;
    }

    .hub-section-hero__surface,
    .hub-rede-hero__surface {
      position: relative;
      overflow: hidden;
      padding: 1rem 1.35rem 0.9rem;
    }

    .hub-section-hero--musicas .hub-section-hero__surface {
      --hero-accent: #ef6c00;
      --hero-title: #4a3210;
      --hero-sub: #523716;
      --hero-art: rgba(180, 98, 12, 0.16);
      --hero-tabs-border: rgba(107, 75, 26, 0.14);
      --hero-tab-text: #6b4b1a;
      --hero-tab-divider: rgba(107, 75, 26, 0.14);
      --hero-bg-base: #fdf8f2;
      --hero-bg-image: url('../assets/hub-cards/musicas-bg.png');
      --hero-scrim-rgb: 253, 248, 242;
      --hero-scrim-a: rgba(253, 248, 242, 0.88);
      --hero-scrim-b: rgba(253, 248, 242, 0.72);
      --hero-scrim-c: rgba(253, 248, 242, 0.42);
      --hero-scrim-solid: rgba(253, 248, 242, 0.84);
      --hero-scrim-solid-mid: rgba(253, 248, 242, 0.48);
      background: var(--hero-bg-base);
    }

    .hub-section-hero--rede .hub-section-hero__surface,
    .hub-rede-hero .hub-rede-hero__surface {
      --hero-accent: #7c5cbf;
      --hero-title: #352650;
      --hero-sub: #3d2d5c;
      --hero-art: rgba(120, 80, 180, 0.14);
      --hero-tabs-border: rgba(74, 53, 104, 0.14);
      --hero-tab-text: #4a3568;
      --hero-tab-divider: rgba(74, 53, 104, 0.12);
      --hero-bg-base: #f5effa;
      --hero-bg-image: url('../assets/hub-cards/rede-bg.png');
      --hero-scrim-rgb: 245, 239, 250;
      --hero-scrim-a: rgba(248, 242, 252, 0.88);
      --hero-scrim-b: rgba(248, 242, 252, 0.72);
      --hero-scrim-c: rgba(248, 242, 252, 0.42);
      --hero-scrim-solid: rgba(248, 242, 252, 0.84);
      --hero-scrim-solid-mid: rgba(248, 242, 252, 0.48);
      background: var(--hero-bg-base);
    }

    .hub-section-hero--campanhas .hub-section-hero__surface {
      --hero-accent: #3d8f62;
      --hero-title: #1e3a2a;
      --hero-sub: #244832;
      --hero-art: rgba(61, 143, 98, 0.14);
      --hero-tabs-border: rgba(42, 77, 56, 0.14);
      --hero-tab-text: #2a4d38;
      --hero-tab-divider: rgba(42, 77, 56, 0.12);
      --hero-bg-base: #f5faf6;
      --hero-bg-image: url('../assets/hub-cards/campanhas-bg.png');
      --hero-scrim-rgb: 245, 250, 246;
      --hero-scrim-a: rgba(245, 250, 246, 0.88);
      --hero-scrim-b: rgba(245, 250, 246, 0.72);
      --hero-scrim-c: rgba(245, 250, 246, 0.42);
      --hero-scrim-solid: rgba(245, 250, 246, 0.84);
      --hero-scrim-solid-mid: rgba(245, 250, 246, 0.48);
      background: var(--hero-bg-base);
    }

    .hub-section-hero--escola .hub-section-hero__surface {
      --hero-accent: #4a90b8;
      --hero-title: #1e4458;
      --hero-sub: #245068;
      --hero-art: rgba(74, 144, 184, 0.14);
      --hero-tabs-border: rgba(42, 85, 112, 0.14);
      --hero-tab-text: #2a5570;
      --hero-tab-divider: rgba(42, 85, 112, 0.12);
      --hero-bg-base: #f0f6fb;
      --hero-bg-image: url('../assets/hub-cards/escola-bg.png');
      --hero-scrim-rgb: 240, 246, 251;
      --hero-scrim-a: rgba(240, 246, 252, 0.88);
      --hero-scrim-b: rgba(240, 246, 252, 0.72);
      --hero-scrim-c: rgba(240, 246, 252, 0.42);
      --hero-scrim-solid: rgba(240, 246, 252, 0.84);
      --hero-scrim-solid-mid: rgba(240, 246, 252, 0.48);
      background: var(--hero-bg-base);
    }

    .hub-section-hero--musicas .hub-section-hero__art,
    .hub-section-hero--rede .hub-section-hero__art,
    .hub-rede-hero .hub-rede-hero__art,
    .hub-section-hero--campanhas .hub-section-hero__art,
    .hub-section-hero--escola .hub-section-hero__art {
      background-color: var(--hero-bg-base);
    }

    .hub-section-hero__body,
    .hub-rede-hero__body {
      position: relative;
      z-index: 2;
      width: 100%;
      padding-inline: 0;
    }

    .hub-section-hero__overlay {
      position: absolute;
      inset: 0;
      z-index: 1;
      pointer-events: none;
      background: linear-gradient(
        to bottom right,
        rgba(255, 255, 255, 1) 0%,
        rgba(255, 255, 255, 0) 100%
      );
    }

    .hub-section-hero__copy,
    .hub-rede-hero__copy {
      position: relative;
      z-index: 1;
      min-width: 0;
      padding-right: 4.5rem;
    }

    .hub-section-hero__copy-scrim {
      position: absolute;
      z-index: 1;
      left: 0;
      top: 0;
      width: 33.333%;
      height: 55%;
      min-height: 50%;
      background:
        radial-gradient(
          ellipse 108% 96% at 0% 0%,
          var(--hero-scrim-a) 0%,
          var(--hero-scrim-b) 44%,
          var(--hero-scrim-c) 62%,
          transparent 84%
        );
      pointer-events: none;
      filter: blur(5px);
    }

    .hub-section-hero__copy-scrim::before {
      content: '';
      position: absolute;
      inset: 0;
      border-radius: 0 0 42% 0 / 0 0 38% 0;
      background: var(--hero-scrim-solid);
      opacity: 0.68;
      filter: blur(8px);
      pointer-events: none;
    }

    .hub-section-hero__title,
    .hub-rede-hero__title {
      position: relative;
      z-index: 1;
      margin: 0;
      font-family: var(--font-display);
      font-size: clamp(1.65rem, 2.4vw, 2rem);
      line-height: 1.08;
      color: var(--hero-title, #6b4b1a);
      text-shadow: 0 1px 14px var(--hero-scrim-solid), 0 0 3px var(--hero-scrim-b);
    }

    .hub-section-hero__sub,
    .hub-rede-hero__sub {
      position: relative;
      z-index: 1;
      margin: 0.2rem 0 0;
      color: var(--hero-sub, #523716);
      font-size: 0.95rem;
      font-weight: 500;
      text-shadow:
        0 0 2px rgba(255, 255, 255, 1),
        0 0 4px rgba(255, 255, 255, 1),
        0 0 6px rgba(255, 255, 255, 0.98),
        0 0 10px rgba(255, 255, 255, 0.92),
        0 0 14px rgba(255, 255, 255, 0.85);
    }

    .hub-section-hero__art,
    .hub-rede-hero__art {
      position: absolute;
      inset: 0;
      z-index: 0;
      pointer-events: none;
    }

    .hub-section-hero__art::before,
    .hub-section-hero__art::after,
    .hub-rede-hero__art::before,
    .hub-rede-hero__art::after {
      position: absolute;
      pointer-events: none;
      color: var(--hero-art, rgba(180, 98, 12, 0.16));
      line-height: 1;
    }

    .hub-section-hero__art::before,
    .hub-rede-hero__art::before {
      content: '𝄞';
      right: 12%;
      top: 42%;
      transform: translateY(-50%);
      font-size: clamp(1.5rem, 4.5vw, 2.1rem);
    }

    .hub-section-hero__art::after,
    .hub-rede-hero__art::after {
      content: '♪  ♫';
      right: 3%;
      top: 52%;
      font-size: 0.82rem;
      letter-spacing: 0.18em;
    }

    .hub-section-hero--musicas .hub-section-hero__art::before,
    .hub-section-hero--rede .hub-section-hero__art::before,
    .hub-rede-hero .hub-rede-hero__art::before,
    .hub-section-hero--campanhas .hub-section-hero__art::before,
    .hub-section-hero--escola .hub-section-hero__art::before {
      content: '';
      inset: 0;
      right: 0;
      top: 0;
      transform: scaleX(-1);
      font-size: inherit;
      background-image:
        linear-gradient(rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.15)),
        var(--hero-bg-image);
      background-repeat: no-repeat;
      background-position: top center;
      background-size: 100% auto;
    }

    .hub-section-hero--musicas .hub-section-hero__art::after,
    .hub-section-hero--rede .hub-section-hero__art::after,
    .hub-rede-hero .hub-rede-hero__art::after,
    .hub-section-hero--campanhas .hub-section-hero__art::after,
    .hub-section-hero--escola .hub-section-hero__art::after {
      content: '';
      inset: 0;
      right: 0;
      top: 0;
      font-size: inherit;
      letter-spacing: normal;
      background: linear-gradient(
        to top,
        rgba(var(--hero-scrim-rgb), 0.42) 0%,
        rgba(var(--hero-scrim-rgb), 0.14) 34%,
        transparent 58%
      );
    }

    .hub-rede-hero--detail .hub-rede-hero__copy {
      padding-left: 2.35rem;
      padding-right: 0;
    }

    .hub-rede-back {
      position: absolute;
      left: 1.35rem;
      top: 1rem;
      z-index: 2;
      width: 2rem;
      height: 2rem;
      padding: 0;
      border: none;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.72);
      color: var(--hero-tab-text, #6b4b1a);
      cursor: pointer;
      box-shadow: inset 0 0 0 1px var(--hero-tabs-border, rgba(107, 75, 26, 0.12));
    }

    .hub-rede-back svg {
      width: 1.1rem;
      height: 1.1rem;
      display: block;
      margin: 0 auto;
    }

    .hub-section-tabs[hidden],
    .hub-rede-tabs[hidden] {
      display: none !important;
    }

    .hub-section-tabs,
    .hub-rede-tabs {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      width: 100%;
      max-width: 800px;
      margin: 0.85rem auto 0;
      padding: 0;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.78);
      border: 1px solid var(--hero-tabs-border, rgba(107, 75, 26, 0.14));
      overflow: hidden;
      gap: 0;
    }

    .hub-section-tabs--cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hub-section-tabs--cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .hub-section-tab[hidden],
    .hub-rede-tab[hidden] {
      display: none !important;
    }

    .hub-section-tab,
    .hub-rede-tab {
      position: relative;
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: center;
      gap: 0.35rem;
      min-height: 2.75rem;
      padding: 0.5rem 0.45rem;
      border: none;
      border-radius: 0;
      background: transparent;
      color: var(--hero-tab-text, #6b4b1a);
      font: inherit;
      font-size: 0.78rem;
      font-weight: 600;
      line-height: 1.1;
      cursor: pointer;
    }

    .hub-section-tab:not(:last-child)::after,
    .hub-rede-tab:not(:last-child)::after {
      content: '';
      position: absolute;
      top: 18%;
      right: 0;
      bottom: 18%;
      width: 1px;
      background: var(--hero-tab-divider, rgba(107, 75, 26, 0.14));
    }

    .hub-section-tab__icon,
    .hub-rede-tab__icon {
      display: flex;
      align-items: center;
      justify-content: center;
      flex: 0 0 auto;
      width: 1.15rem;
      height: 1.15rem;
    }

    .hub-section-tab__icon svg,
    .hub-rede-tab__icon svg {
      width: 1.15rem;
      height: 1.15rem;
      display: block;
    }

    .hub-section-tab__label,
    .hub-rede-tab__label {
      display: block;
      white-space: nowrap;
    }

    .hub-section-tab--active,
    .hub-rede-tab--active {
      background: var(--hero-accent, var(--accent));
      color: #fff;
    }

    .hub-section-tab--active::after,
    .hub-section-tab--active + .hub-section-tab::after,
    .hub-rede-tab--active::after,
    .hub-rede-tab--active + .hub-rede-tab::after {
      opacity: 0;
    }

    .hub-section-tab:first-child.hub-section-tab--active,
    .hub-rede-tab:first-child.hub-rede-tab--active {
      border-radius: 999px 0 0 999px;
    }

    .hub-section-tab:last-child.hub-section-tab--active,
    .hub-rede-tab:last-child.hub-rede-tab--active {
      border-radius: 0 999px 999px 0;
    }

    .hub-section-tab:only-child.hub-section-tab--active,
    .hub-rede-tab:only-child.hub-rede-tab--active {
      border-radius: 999px;
    }

    /* Rede: abas tipo pasta (folder tabs) */
    .hub-rede-tabs.hub-folder-tabs {
      display: flex;
      flex-wrap: nowrap;
      align-items: flex-end;
      gap: 0.28rem;
      width: 100%;
      max-width: none;
      margin: 0.85rem 0 0;
      padding: 0;
      border: none;
      border-radius: 0;
      background: transparent;
      overflow: visible;
    }

    .hub-rede-tabs.hub-folder-tabs .hub-rede-tab::after {
      display: none;
    }

    .hub-folder-tabs--cols-3 .hub-folder-tab {
      flex: 1 1 0;
      min-width: 0;
    }

    .hub-rede-tabs.hub-folder-tabs .hub-folder-tab,
    .hub-rede-tabs.hub-folder-tabs .hub-rede-tab {
      border-radius: 10px 10px 0 0;
    }

    .hub-rede-tabs.hub-folder-tabs .hub-folder-tab:first-child,
    .hub-rede-tabs.hub-folder-tabs .hub-folder-tab:last-child,
    .hub-rede-tabs.hub-folder-tabs .hub-rede-tab:first-child,
    .hub-rede-tabs.hub-folder-tabs .hub-rede-tab:last-child,
    .hub-rede-tabs.hub-folder-tabs .hub-folder-tab:first-child.hub-folder-tab--active,
    .hub-rede-tabs.hub-folder-tabs .hub-folder-tab:last-child.hub-folder-tab--active,
    .hub-rede-tabs.hub-folder-tabs .hub-rede-tab:first-child.hub-rede-tab--active,
    .hub-rede-tabs.hub-folder-tabs .hub-rede-tab:last-child.hub-rede-tab--active {
      border-radius: 10px 10px 0 0;
    }

    .hub-folder-tab {
      position: relative;
      display: inline-flex;
      flex-direction: row;
      align-items: center;
      justify-content: center;
      gap: 0.35rem;
      min-height: 2.35rem;
      padding: 0.42rem 0.65rem 0.48rem;
      border: 1px solid transparent;
      border-bottom: none;
      border-radius: 10px 10px 0 0;
      background: rgba(255, 255, 255, 0.42);
      color: var(--hero-tab-text, #4a3568);
      font: inherit;
      font-size: 0.76rem;
      font-weight: 600;
      line-height: 1.1;
      cursor: pointer;
      transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
    }

    .hub-folder-tab::after {
      display: none;
    }

    .hub-folder-tab:hover {
      background: rgba(255, 255, 255, 0.62);
    }

    .hub-rede-tabs.hub-folder-tabs .hub-folder-tab--active,
    .hub-rede-tabs.hub-folder-tabs .hub-rede-tab--active {
      z-index: 2;
      background: var(--hero-accent, #7c5cbf);
      border-color: var(--hero-accent, #7c5cbf);
      border-bottom-color: var(--hero-accent, #7c5cbf);
      color: #fff;
      margin-bottom: -1px;
    }

    .hub-rede-tabs.hub-folder-tabs .hub-folder-tab--active .hub-folder-tab__icon,
    .hub-rede-tabs.hub-folder-tabs .hub-folder-tab--active .hub-rede-tab__icon,
    .hub-rede-tabs.hub-folder-tabs .hub-rede-tab--active .hub-folder-tab__icon,
    .hub-rede-tabs.hub-folder-tabs .hub-rede-tab--active .hub-rede-tab__icon {
      color: #fff;
    }

    .hub-rede-tabs.hub-folder-tabs .hub-folder-tab--active .hub-folder-tab__icon svg,
    .hub-rede-tabs.hub-folder-tabs .hub-folder-tab--active .hub-rede-tab__icon svg,
    .hub-rede-tabs.hub-folder-tabs .hub-rede-tab--active .hub-folder-tab__icon svg,
    .hub-rede-tabs.hub-folder-tabs .hub-rede-tab--active .hub-rede-tab__icon svg {
      color: #fff;
    }

    .hub-folder-tab__icon {
      display: flex;
      align-items: center;
      justify-content: center;
      flex: 0 0 auto;
      width: 1.05rem;
      height: 1.05rem;
    }

    .hub-folder-tab__icon svg {
      width: 1.05rem;
      height: 1.05rem;
      display: block;
    }

    .hub-folder-tab__label {
      display: block;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .hub-rede-hero--folder-tabs .hub-rede-hero__surface {
      padding-bottom: 0;
    }

    .hub-rede-hero--folder-tabs + .hub-rede-root {
      margin-top: 0;
      padding: 0.85rem 1rem 1rem;
      background: var(--surface, #fff);
      border: none;
      border-radius: 0 12px 12px 12px;
    }

    .hub-rede-hero--folder-tabs.hub-rede-hero--tab-members + .hub-rede-root {
      border-radius: 12px;
    }

    .hub-rede-hero--folder-tabs.hub-rede-hero--tab-groups + .hub-rede-root {
      border-radius: 12px 0 12px 12px;
    }

    /* Músicas: abas tipo pasta (folder tabs) */
    .hub-musicas-tabs.hub-folder-tabs {
      display: flex;
      flex-wrap: nowrap;
      align-items: flex-end;
      gap: 0.28rem;
      width: 100%;
      max-width: none;
      margin: 0.85rem 0 0;
      padding: 0;
      border: none;
      border-radius: 0;
      background: transparent;
      overflow: visible;
    }

    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab::after {
      display: none;
    }

    .hub-musicas-tabs.hub-folder-tabs .hub-folder-tab,
    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab {
      border-radius: 10px 10px 0 0;
      color: var(--hero-tab-text, #6b4b1a);
    }

    .hub-musicas-tabs.hub-folder-tabs .hub-folder-tab:first-child,
    .hub-musicas-tabs.hub-folder-tabs .hub-folder-tab:last-child,
    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab:first-child,
    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab:last-child,
    .hub-musicas-tabs.hub-folder-tabs .hub-folder-tab:first-child.hub-folder-tab--active,
    .hub-musicas-tabs.hub-folder-tabs .hub-folder-tab:last-child.hub-folder-tab--active,
    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab:first-child.hub-musicas-tab--active,
    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab:last-child.hub-musicas-tab--active {
      border-radius: 10px 10px 0 0;
    }

    .hub-musicas-tabs.hub-folder-tabs .hub-folder-tab--active,
    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab--active {
      z-index: 2;
      background: var(--hero-accent, #ef6c00);
      border-color: var(--hero-accent, #ef6c00);
      border-bottom-color: var(--hero-accent, #ef6c00);
      color: #fff;
      margin-bottom: -1px;
    }

    .hub-musicas-tabs.hub-folder-tabs .hub-folder-tab--active:hover,
    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab--active:hover {
      background: var(--hero-accent, #ef6c00);
      color: #fff;
    }

    .hub-musicas-tabs.hub-folder-tabs .hub-folder-tab--active .hub-folder-tab__icon,
    .hub-musicas-tabs.hub-folder-tabs .hub-folder-tab--active .hub-musicas-tab__icon,
    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab--active .hub-folder-tab__icon,
    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab--active .hub-musicas-tab__icon {
      color: #fff;
    }

    .hub-musicas-tabs.hub-folder-tabs .hub-folder-tab--active .hub-folder-tab__icon svg,
    .hub-musicas-tabs.hub-folder-tabs .hub-folder-tab--active .hub-musicas-tab__icon svg,
    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab--active .hub-folder-tab__icon svg,
    .hub-musicas-tabs.hub-folder-tabs .hub-musicas-tab--active .hub-musicas-tab__icon svg {
      color: #fff;
    }

    .hub-musicas-hero--folder-tabs .hub-musicas-hero__surface {
      padding-bottom: 0;
    }

    .hub-musicas-hero--folder-tabs + .hub-musicas-root {
      margin-top: 0;
      padding: 0.85rem 1rem 1rem;
      background: var(--surface, #fff);
      border: none;
      border-radius: 0 12px 12px 12px;
      min-height: 8rem;
      overflow: auto;
      flex: 1;
    }

    .hub-musicas-hero--folder-tabs.hub-musicas-hero--tab-groups + .hub-musicas-root {
      border-radius: 12px;
    }

    .hub-musicas-hero--folder-tabs.hub-musicas-hero--tab-storage + .hub-musicas-root {
      border-radius: 12px 0 12px 12px;
    }

    /* Escola: abas tipo pasta (folder tabs) */
    .hub-escola-tabs.hub-folder-tabs {
      display: flex;
      flex-wrap: nowrap;
      align-items: flex-end;
      gap: 0.28rem;
      width: 100%;
      max-width: none;
      margin: 0.85rem 0 0;
      padding: 0;
      border: none;
      border-radius: 0;
      background: transparent;
      overflow: visible;
    }

    .hub-escola-tabs.hub-folder-tabs .hub-escola-tab::after {
      display: none;
    }

    .hub-escola-tabs.hub-folder-tabs .hub-folder-tab,
    .hub-escola-tabs.hub-folder-tabs .hub-escola-tab {
      border-radius: 10px 10px 0 0;
      color: var(--hero-tab-text, #2a5570);
    }

    .hub-escola-tabs.hub-folder-tabs .hub-folder-tab--active,
    .hub-escola-tabs.hub-folder-tabs .hub-escola-tab--active {
      z-index: 2;
      background: var(--hero-accent, #4a90b8);
      border-color: var(--hero-accent, #4a90b8);
      border-bottom-color: var(--hero-accent, #4a90b8);
      color: #fff;
      margin-bottom: -1px;
    }

    .hub-escola-tabs.hub-folder-tabs .hub-folder-tab--active:hover,
    .hub-escola-tabs.hub-folder-tabs .hub-escola-tab--active:hover {
      background: var(--hero-accent, #4a90b8);
      color: #fff;
    }

    .hub-escola-tabs.hub-folder-tabs .hub-folder-tab--active .hub-folder-tab__icon,
    .hub-escola-tabs.hub-folder-tabs .hub-folder-tab--active .hub-escola-tab__icon,
    .hub-escola-tabs.hub-folder-tabs .hub-escola-tab--active .hub-folder-tab__icon,
    .hub-escola-tabs.hub-folder-tabs .hub-escola-tab--active .hub-escola-tab__icon {
      color: #fff;
    }

    .hub-escola-tabs.hub-folder-tabs .hub-folder-tab--active .hub-folder-tab__icon svg,
    .hub-escola-tabs.hub-folder-tabs .hub-folder-tab--active .hub-escola-tab__icon svg,
    .hub-escola-tabs.hub-folder-tabs .hub-escola-tab--active .hub-folder-tab__icon svg,
    .hub-escola-tabs.hub-folder-tabs .hub-escola-tab--active .hub-escola-tab__icon svg {
      color: #fff;
    }

    .hub-escola-hero--folder-tabs .hub-escola-hero__surface {
      padding-bottom: 0;
    }

    .hub-escola-hero--folder-tabs + .hub-escola-root {
      margin-top: 0;
      padding: 0.85rem 1rem 1rem;
      background: var(--surface, #fff);
      border: none;
      border-radius: 0 12px 12px 12px;
      min-height: 8rem;
      overflow: auto;
      flex: 1;
    }

    .hub-escola-hero--folder-tabs.hub-escola-hero--tab-forum + .hub-escola-root {
      border-radius: 12px;
    }

    .hub-escola-hero--folder-tabs.hub-escola-hero--tab-aulas + .hub-escola-root {
      border-radius: 12px 0 12px 12px;
    }

    /* Campanhas: abas tipo pasta (folder tabs) */
    .hub-campanhas-tabs.hub-folder-tabs {
      display: flex;
      flex-wrap: nowrap;
      align-items: flex-end;
      gap: 0.28rem;
      width: 100%;
      max-width: none;
      margin: 0.85rem 0 0;
      padding: 0;
      border: none;
      border-radius: 0;
      background: transparent;
      overflow: visible;
    }

    .hub-campanhas-tabs.hub-folder-tabs .hub-campanhas-tab::after {
      display: none;
    }

    .hub-campanhas-tabs.hub-folder-tabs .hub-folder-tab,
    .hub-campanhas-tabs.hub-folder-tabs .hub-campanhas-tab {
      border-radius: 10px 10px 0 0;
      color: var(--hero-tab-text, #2a4d38);
    }

    .hub-campanhas-tabs.hub-folder-tabs .hub-folder-tab--active,
    .hub-campanhas-tabs.hub-folder-tabs .hub-campanhas-tab--active {
      z-index: 2;
      background: var(--hero-accent, #3d8f62);
      border-color: var(--hero-accent, #3d8f62);
      border-bottom-color: var(--hero-accent, #3d8f62);
      color: #fff;
      margin-bottom: -1px;
    }

    .hub-campanhas-tabs.hub-folder-tabs .hub-folder-tab--active:hover,
    .hub-campanhas-tabs.hub-folder-tabs .hub-campanhas-tab--active:hover {
      background: var(--hero-accent, #3d8f62);
      color: #fff;
    }

    .hub-campanhas-tabs.hub-folder-tabs .hub-folder-tab--active .hub-folder-tab__icon,
    .hub-campanhas-tabs.hub-folder-tabs .hub-folder-tab--active .hub-campanhas-tab__icon,
    .hub-campanhas-tabs.hub-folder-tabs .hub-campanhas-tab--active .hub-folder-tab__icon,
    .hub-campanhas-tabs.hub-folder-tabs .hub-campanhas-tab--active .hub-campanhas-tab__icon {
      color: #fff;
    }

    .hub-campanhas-tabs.hub-folder-tabs .hub-folder-tab--active .hub-folder-tab__icon svg,
    .hub-campanhas-tabs.hub-folder-tabs .hub-folder-tab--active .hub-campanhas-tab__icon svg,
    .hub-campanhas-tabs.hub-folder-tabs .hub-campanhas-tab--active .hub-folder-tab__icon svg,
    .hub-campanhas-tabs.hub-folder-tabs .hub-campanhas-tab--active .hub-campanhas-tab__icon svg {
      color: #fff;
    }

    .hub-campanhas-tabs.hub-folder-tabs .hub-folder-tab:not(.hub-folder-tab--active) .hub-folder-tab__icon,
    .hub-campanhas-tabs.hub-folder-tabs .hub-campanhas-tab:not(.hub-campanhas-tab--active) .hub-campanhas-tab__icon {
      color: var(--hero-accent, #3d8f62);
    }

    .hub-campanhas-tabs.hub-folder-tabs .hub-folder-tab:not(.hub-folder-tab--active) .hub-folder-tab__icon svg,
    .hub-campanhas-tabs.hub-folder-tabs .hub-campanhas-tab:not(.hub-campanhas-tab--active) .hub-campanhas-tab__icon svg {
      color: var(--hero-accent, #3d8f62);
      stroke-width: 2;
    }

    .hub-campanhas-hero--folder-tabs .hub-campanhas-hero__surface {
      padding-bottom: 0;
    }

    .hub-campanhas-hero--folder-tabs + .hub-campanhas-root {
      margin-top: 0;
      padding: 0.85rem 1rem 1rem;
      background: var(--surface, #fff);
      border: none;
      border-radius: 0 12px 12px 12px;
      min-height: 8rem;
      overflow: auto;
      flex: 1;
    }

    .hub-campanhas-hero--folder-tabs.hub-campanhas-hero--tab-mix-semanal + .hub-campanhas-root {
      border-radius: 12px;
    }

    .hub-campanhas-hero--folder-tabs.hub-campanhas-hero--tab-festivais + .hub-campanhas-root {
      border-radius: 0 12px 12px 12px;
    }

    .hub-forum-section {
      margin: 0;
    }

    .hub-forum-filters {
      display: flex;
      flex-wrap: wrap;
      gap: 0.4rem;
      margin: 0.75rem 0 1rem;
    }

    .hub-forum-filters__btn {
      padding: 0.38rem 0.72rem;
      border: 1px solid var(--border);
      background: var(--surface-2, #fff);
      border-radius: 999px;
      font: inherit;
      font-size: 0.78rem;
      font-weight: 600;
      color: var(--ink-soft);
      cursor: pointer;
    }

    .hub-forum-filters__btn.is-active {
      border-color: var(--filter-border-active-escola);
      background: var(--filter-bg-active-escola);
      color: var(--filter-text-active-escola);
    }

    .hub-forum-channel-lead {
      margin: 0 0 0.85rem;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .hub-forum-empty {
      padding: 1.25rem 1rem;
      border: 1px dashed var(--border);
      border-radius: 12px;
      background: var(--surface-soft, #f8f4ef);
      text-align: center;
    }

    .hub-forum-empty__title {
      margin: 0 0 0.35rem;
      font-weight: 700;
      color: var(--ink);
    }

    .hub-forum-empty__hint {
      margin: 0;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .hub-forum-toolbar {
      display: flex;
      justify-content: flex-end;
      margin: 0 0 0.85rem;
    }

    .hub-forum-search {
      margin: 0 0 0.85rem;
    }

    .hub-forum-search__field {
      margin: 0;
    }

    .hub-forum-search__row {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
      align-items: center;
    }

    .hub-forum-search__row input[type="search"] {
      flex: 1 1 12rem;
      min-width: 0;
    }

    .hub-forum-more-wrap {
      margin: 1rem 0 0;
      text-align: center;
    }

    .hub-forum-topic-list {
      display: flex;
      flex-direction: column;
      gap: 0.55rem;
    }

    .hub-forum-topic-row {
      display: flex;
      align-items: center;
      gap: 0.65rem;
      width: 100%;
      padding: 0.75rem 0.85rem;
      border: 1px solid var(--border);
      border-radius: 12px;
      background: var(--surface, #fff);
      text-align: left;
      font: inherit;
      cursor: pointer;
      transition: border-color 0.15s ease, box-shadow 0.15s ease;
    }

    .hub-forum-topic-row:hover {
      border-color: var(--hero-accent, #4a90b8);
      box-shadow: 0 2px 10px rgba(74, 144, 184, 0.12);
    }

    .hub-forum-topic-row__main {
      flex: 1;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 0.2rem;
    }

    .hub-forum-topic-row__title {
      font-weight: 700;
      color: var(--ink);
      line-height: 1.3;
    }

    .hub-forum-topic-row__meta {
      font-size: 0.82rem;
      color: var(--ink-soft);
      line-height: 1.35;
    }

    .hub-forum-topic-row__chev {
      flex: 0 0 auto;
      color: var(--ink-soft);
    }

    .hub-forum-back {
      display: inline-flex;
      align-items: center;
      gap: 0.25rem;
      margin: 0 0 0.75rem;
      padding: 0.15rem 0.35rem 0.15rem 0;
      border: none;
      background: transparent;
      color: var(--hero-accent, #4a90b8);
      font: inherit;
      font-size: 0.88rem;
      font-weight: 600;
      cursor: pointer;
    }

    .hub-forum-back .mer-icon {
      width: 1rem;
      height: 1rem;
    }

    .hub-forum-compose {
      margin-top: 0.5rem;
    }

    .hub-forum-compose-note {
      margin: 0 0 0.85rem;
      font-size: 0.84rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .hub-forum-thread {
      padding: 0.85rem 0 1rem;
      border-bottom: 1px solid var(--border);
    }

    .hub-forum-thread__title {
      margin: 0 0 0.35rem;
      font-family: var(--font-display, 'Lora', Georgia, serif);
      font-size: 1.15rem;
      line-height: 1.35;
      color: var(--ink);
    }

    .hub-forum-thread__meta,
    .hub-forum-reply__meta {
      display: flex;
      align-items: center;
      gap: 0.4rem;
      margin: 0 0 0.65rem;
      font-size: 0.82rem;
      color: var(--ink-soft);
    }

    .hub-forum-thread__meta .mer-mod-menu-btn,
    .hub-forum-reply__meta .mer-mod-menu-btn {
      margin-left: auto;
    }

    .hub-forum-thread__body,
    .hub-forum-reply__body {
      font-size: 0.92rem;
      line-height: 1.55;
      color: var(--ink);
      white-space: normal;
      word-break: break-word;
    }

    .hub-forum-bug-meta {
      margin-top: 0.85rem;
      font-size: 0.82rem;
      color: var(--ink-soft);
    }

    .hub-forum-bug-meta__body {
      margin-top: 0.5rem;
      display: flex;
      flex-direction: column;
      gap: 0.35rem;
    }

    .hub-forum-bug-meta__row {
      margin: 0;
      line-height: 1.45;
      word-break: break-word;
    }

    .hub-forum-bug-meta__label {
      font-weight: 600;
      color: var(--ink-soft);
    }

    .hub-forum-bug-meta__ua {
      color: var(--ink-soft);
      font-size: 0.75rem;
    }

    .hub-forum-bug-meta pre {
      margin: 0.45rem 0 0;
      padding: 0.65rem 0.75rem;
      border-radius: 8px;
      background: var(--surface-soft, #f8f4ef);
      overflow: auto;
      font-size: 0.78rem;
      line-height: 1.45;
      white-space: pre-wrap;
      word-break: break-word;
    }

    .hub-forum-replies {
      margin-top: 1rem;
    }

    .hub-forum-replies__title {
      margin: 0 0 0.65rem;
      font-size: 0.95rem;
      font-weight: 700;
      color: var(--ink);
    }

    .hub-forum-reply {
      padding: 0.75rem 0;
      border-top: 1px solid var(--border);
    }

    .hub-forum-guest-reply {
      margin-top: 1rem;
      padding: 0.85rem 1rem;
      border: 1px dashed var(--border);
      border-radius: 12px;
      background: var(--surface-soft, #f8f4ef);
      text-align: center;
    }

    .hub-forum-guest-reply__hint {
      margin: 0 0 0.65rem;
      font-size: 0.88rem;
      color: var(--ink-soft);
    }

    .hub-forum-login-gate {
      max-width: 480px;
      margin: 0 auto;
    }

    .hub-forum-login-gate__lead {
      margin: 0 0 0.85rem;
      font-size: 0.92rem;
      line-height: 1.5;
      color: var(--ink-soft);
      text-align: center;
    }

    .hub-escola-hero--detail .hub-escola-hero__surface {
      padding-bottom: 0.9rem;
    }

    .hub-placeholder__title {
      margin: 0 0 0.35rem;
      font-size: 1rem;
      color: var(--ink);
    }

    .hub-musicas-root {
      min-height: 0;
      overflow: auto;
      flex: 1;
    }

    .hub-view--musicas {
      --hub-musicas-content-max: 71.875rem;
      --hub-musicas-card-max: 21.875rem;
      --hub-musicas-card-min: 15.625rem;
      --hub-musicas-grid-gap: 1rem;
    }

    .hub-musicas-root,
    .hub-musicas-group-block__body {
      container-type: inline-size;
      container-name: hub-musicas-pane;
    }

    @media (min-width: 640px) {
      .hub-view--musicas .hub-musicas-hero__body {
        max-width: var(--hub-musicas-content-max);
        margin-inline: auto;
        width: 100%;
        box-sizing: border-box;
      }

      .hub-view--musicas > .hub-musicas-root,
      .tablet-shell--section-musicas .hub-view--musicas > .hub-musicas-root {
        max-width: var(--hub-musicas-content-max);
        margin-inline: auto;
        width: 100%;
        box-sizing: border-box;
      }
    }

    .hub-view--rede {
      --hub-rede-content-max: 71.875rem;
      display: flex;
      flex-direction: column;
      min-height: 0;
      flex: 1;
    }

    .hub-rede-root {
      container-type: inline-size;
      container-name: hub-rede-pane;
    }

    .hub-view--rede .mural-app .project-list {
      flex: 0 0 auto;
      min-height: auto;
      overflow: visible;
    }

    @media (min-width: 640px) {
      .hub-view--rede .hub-rede-hero__body {
        max-width: var(--hub-rede-content-max);
        margin-inline: auto;
        width: 100%;
        box-sizing: border-box;
      }

      .hub-view--rede > .hub-rede-root,
      .tablet-shell--section-rede .hub-view--rede > .hub-rede-root {
        max-width: var(--hub-rede-content-max);
        margin-inline: auto;
        width: 100%;
        box-sizing: border-box;
      }
    }

    .hub-view--campanhas {
      --hub-campanhas-content-max: 71.875rem;
      display: flex;
      flex-direction: column;
      min-height: 0;
      flex: 1;
    }

    .hub-view--escola {
      --hub-escola-content-max: 71.875rem;
      display: flex;
      flex-direction: column;
      min-height: 0;
      flex: 1;
    }

    @media (min-width: 640px) {
      .hub-view--campanhas .hub-section-hero__body {
        max-width: var(--hub-campanhas-content-max);
        margin-inline: auto;
        width: 100%;
        box-sizing: border-box;
      }

      .hub-view--campanhas > .hub-campanhas-root,
      .tablet-shell--section-campanhas .hub-view--campanhas > .hub-campanhas-root {
        max-width: var(--hub-campanhas-content-max);
        margin-inline: auto;
        width: 100%;
        box-sizing: border-box;
      }

      .hub-view--escola .hub-section-hero__body {
        max-width: var(--hub-escola-content-max);
        margin-inline: auto;
        width: 100%;
        box-sizing: border-box;
      }

      .hub-view--escola > .hub-escola-root,
      .tablet-shell--section-escola .hub-view--escola > .hub-escola-root {
        max-width: var(--hub-escola-content-max);
        margin-inline: auto;
        width: 100%;
        box-sizing: border-box;
      }
    }

    .hub-musicas-storage-stats {
      margin-bottom: 1rem;
    }

    .hub-storage-summary {
      margin: 0.35rem 0 0;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .hub-storage-section-hint {
      margin: 0.2rem 0 0.65rem;
      font-size: 0.8rem;
      line-height: 1.4;
      color: var(--ink-soft);
    }

    .hub-project-empty--storage {
      margin: 0.5rem 0 0;
      font-size: 0.84rem;
    }

    .hub-musicas-storage-list,
    .hub-musicas-storage-archived,
    .hub-musicas-storage-vault,
    .hub-musicas-cloud-only {
      margin-top: 1.15rem;
    }

    .storage-list {
      display: flex;
      flex-direction: column;
      gap: 0.45rem;
    }

    .storage-row {
      display: flex;
      align-items: flex-start;
      gap: 0.65rem;
      padding: 0.65rem 0.75rem;
      border: 1px solid rgba(26, 35, 50, 0.08);
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.92);
    }

    .storage-row--selected {
      border-color: rgba(234, 88, 12, 0.28);
      background: rgba(255, 247, 237, 0.55);
    }

    .storage-row__select {
      flex: 0 0 auto;
      display: flex;
      align-items: center;
      padding-top: 0.15rem;
    }

    .storage-row__select-input {
      width: 1rem;
      height: 1rem;
      accent-color: var(--c-laranja, #ff9639);
    }

    .storage-row__main {
      flex: 1;
      min-width: 0;
    }

    .storage-row__title-row {
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      gap: 0.35rem 0.5rem;
    }

    .storage-row__title {
      font-weight: 600;
      font-size: 0.9rem;
      color: var(--ink);
      line-height: 1.3;
    }

    .storage-row__badges {
      display: inline-flex;
      flex-wrap: wrap;
      gap: 0.3rem;
    }

    .storage-row__badge {
      display: inline-block;
      padding: 0.12rem 0.45rem;
      border-radius: 999px;
      background: rgba(26, 35, 50, 0.06);
      color: var(--ink-soft);
      font-size: 0.68rem;
      font-weight: 600;
      line-height: 1.2;
    }

    .storage-row__meta {
      margin: 0.2rem 0 0;
      font-size: 0.8rem;
      color: var(--ink-soft);
      line-height: 1.35;
    }

    .storage-row__submeta {
      margin: 0.15rem 0 0;
      font-size: 0.74rem;
      color: rgba(26, 35, 50, 0.55);
      line-height: 1.35;
    }

    .storage-row__actions {
      flex: 0 0 auto;
      display: flex;
      flex-direction: column;
      align-items: stretch;
      gap: 0.35rem;
      min-width: 7.5rem;
    }

    .storage-row__btn {
      padding: 0.38rem 0.55rem;
      border: 1px solid rgba(26, 35, 50, 0.12);
      border-radius: 8px;
      background: #fff;
      color: var(--ink);
      font: inherit;
      font-size: 0.74rem;
      font-weight: 600;
      cursor: pointer;
      white-space: nowrap;
    }

    .storage-row__btn:hover {
      border-color: rgba(234, 88, 12, 0.25);
      background: rgba(255, 247, 237, 0.65);
    }

    .storage-row__btn--danger {
      color: #b91c1c;
      border-color: rgba(220, 38, 38, 0.18);
    }

    .storage-row__btn--danger:hover {
      background: rgba(254, 242, 242, 0.9);
      border-color: rgba(220, 38, 38, 0.28);
    }

    @media (max-width: 640px) {
      .storage-row {
        flex-direction: column;
      }

      .storage-row__actions {
        flex-direction: row;
        flex-wrap: wrap;
        width: 100%;
        min-width: 0;
      }

      .storage-row__btn {
        flex: 1 1 auto;
      }
    }

    .hub-musicas-bulk-bar {
      display: flex;
      flex-direction: column;
      gap: 0.65rem;
      margin: 0.65rem 0 0.85rem;
      padding: 0.7rem 0.75rem;
      border: 1px solid rgba(26, 35, 50, 0.08);
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.88);
      box-shadow: 0 2px 8px rgba(26, 35, 50, 0.04);
    }

    .hub-musicas-bulk-bar--active {
      border-color: rgba(234, 88, 12, 0.22);
      background: linear-gradient(180deg, rgba(255, 247, 237, 0.95), rgba(255, 255, 255, 0.92));
    }

    .hub-musicas-bulk-top {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.75rem;
    }

    .hub-musicas-bulk-select-all {
      display: inline-flex;
      align-items: center;
      gap: 0.55rem;
      min-width: 0;
      font-size: 0.875rem;
      font-weight: 600;
      color: var(--ink);
      cursor: pointer;
      user-select: none;
    }

    .hub-musicas-bulk-select-input {
      width: 1.05rem;
      height: 1.05rem;
      margin: 0;
      flex-shrink: 0;
      accent-color: var(--accent, #ea580c);
      cursor: pointer;
    }

    .hub-musicas-bulk-count {
      flex-shrink: 0;
      font-size: 0.75rem;
      font-weight: 600;
      color: var(--ink-soft);
      white-space: nowrap;
    }

    .hub-musicas-bulk-bar--active .hub-musicas-bulk-count {
      color: #c2410c;
    }

    .hub-musicas-bulk-actions {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 0.45rem;
    }

    .hub-musicas-bulk-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.35rem;
      width: auto;
      min-width: 0;
      min-height: 2.35rem;
      margin: 0;
      padding: 0.45rem 0.5rem;
      border: 1px solid rgba(26, 35, 50, 0.1);
      border-radius: 10px;
      background: rgba(255, 255, 255, 0.95);
      color: var(--ink);
      font-family: inherit;
      font-size: 0.72rem;
      font-weight: 600;
      line-height: 1.1;
      cursor: pointer;
      transition: background 0.15s ease, border-color 0.15s ease, opacity 0.15s ease;
    }

    .hub-musicas-bulk-btn .mer-icon {
      width: 0.95rem;
      height: 0.95rem;
      flex-shrink: 0;
    }

    .hub-musicas-bulk-btn span:last-child {
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .hub-musicas-bulk-btn:not(:disabled):hover {
      border-color: rgba(234, 88, 12, 0.24);
      background: rgba(255, 247, 237, 0.92);
    }

    .hub-musicas-bulk-btn--danger:not(:disabled) {
      color: #b91c1c;
    }

    .hub-musicas-bulk-btn--danger:not(:disabled):hover {
      border-color: rgba(185, 28, 28, 0.18);
      background: rgba(254, 242, 242, 0.95);
    }

    .hub-musicas-bulk-btn:disabled {
      opacity: 0.42;
      cursor: not-allowed;
    }

    .hub-musicas-bulk-bar:not(.hub-musicas-bulk-bar--active) .hub-musicas-bulk-btn:not(:disabled) {
      opacity: 0.72;
    }

    @media (max-width: 380px) {
      .hub-musicas-bulk-btn span:last-child {
        display: none;
      }

      .hub-musicas-bulk-btn {
        min-height: 2.5rem;
      }
    }

    .project-row__select {
      flex: 0 0 auto;
      display: inline-flex;
      align-items: center;
      margin-right: 0;
      grid-column: 1;
    }

    .project-row:has(.project-row__select) {
      grid-template-columns: auto auto minmax(0, 1fr);
      padding-left: 0.55rem;
    }

    .project-row:has(.project-row__select) .project-row__thumb {
      grid-column: 2;
    }

    .project-row:has(.project-row__select) .project-row__body {
      grid-column: 3;
    }

    .project-row__select-input {
      width: 1rem;
      height: 1rem;
      accent-color: var(--accent);
      cursor: pointer;
    }

    .project-row--selected {
      background: rgba(255, 244, 232, 0.55);
    }

    .hub-musicas-root .project-row {
      align-items: center;
    }

    .hub-musicas-group-block {
      margin-bottom: 1rem;
      padding: 0.85rem 0.85rem 0.9rem;
      border: 1px solid rgba(26, 35, 50, 0.08);
      border-radius: 16px;
      background: rgba(255, 255, 255, 0.88);
      box-shadow: 0 2px 10px rgba(26, 35, 50, 0.04);
    }

    .hub-musicas-group-block__head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 0.65rem;
      margin-bottom: 0.75rem;
      padding-bottom: 0.75rem;
      border-bottom: 1px solid rgba(26, 35, 50, 0.06);
    }

    .hub-musicas-group-block__head-main {
      display: flex;
      align-items: center;
      gap: 0.75rem;
      min-width: 0;
      flex: 1;
    }

    .hub-musicas-group-block__link {
      flex-shrink: 0;
      padding: 0.35rem 0.65rem;
      border: 1px solid rgba(26, 35, 50, 0.1);
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.92);
      color: var(--ink-soft);
      font: inherit;
      font-size: 0.78rem;
      font-weight: 600;
      cursor: pointer;
      white-space: nowrap;
    }

    .hub-musicas-group-block__link:hover {
      border-color: rgba(234, 88, 12, 0.22);
      color: #c2410c;
    }

    .hub-musicas-group-block__body {
      margin-left: 0;
    }

    @media (min-width: 640px) {
      .hub-musicas-group-block__body > .project-list--grid + .hub-musicas-group-foot {
        margin-top: 1rem;
      }

      .hub-musicas-storage-list .hub-musicas-bulk-bar + .project-list {
        margin-top: 0.65rem;
      }

      .hub-musicas-storage-list .hub-musicas-storage-device-list .music-card-integrated__storage-foot {
        flex-direction: column;
        align-items: stretch;
        padding: 0.45rem 0.65rem 0.55rem;
      }

      .hub-musicas-storage-list .hub-musicas-storage-device-list .music-card-integrated__storage-note {
        flex: none;
        width: 100%;
      }

      .hub-musicas-storage-list .hub-musicas-storage-device-list .music-card-integrated__storage-foot .storage-row__btn {
        width: 100%;
        min-height: 2.5rem;
      }
    }

    .hub-musicas-group-foot {
      display: flex;
      justify-content: center;
      margin-top: 0.75rem;
      padding-top: 0.15rem;
    }

    .hub-musicas-group-actions {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      gap: 0.55rem;
      width: min(100%, 20rem);
    }

    .hub-musicas-group-share-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.45rem;
      width: 100%;
      min-height: 2.35rem;
      margin: 0;
      padding: 0.5rem 1rem;
      border: 1px solid rgba(26, 35, 50, 0.12);
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.95);
      color: var(--ink);
      font: inherit;
      font-size: 0.82rem;
      font-weight: 600;
      cursor: pointer;
    }

    .hub-musicas-group-share-btn .mer-icon {
      width: 1rem;
      height: 1rem;
    }

    .hub-musicas-group-share-btn:hover {
      border-color: rgba(107, 70, 139, 0.24);
      background: rgba(107, 70, 139, 0.06);
      color: #5b3d78;
    }

    .hub-pick-jam-hint {
      margin: 0 0 0.85rem;
      font-size: 0.84rem;
      color: var(--ink-soft);
      line-height: 1.4;
    }

    .hub-pick-jam-box .sheet-item {
      text-align: left;
    }

    .hub-musicas-group-empty {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 0.55rem;
      padding: 1.25rem 1rem;
      border: 1px dashed rgba(26, 35, 50, 0.12);
      border-radius: 14px;
      background: rgba(255, 252, 248, 0.72);
      text-align: center;
    }

    .hub-musicas-group-empty__text {
      margin: 0;
      font-size: 0.88rem;
      font-weight: 600;
      color: var(--ink);
      line-height: 1.35;
    }

    .hub-musicas-group-empty__hint {
      margin: 0 0 0.35rem;
      max-width: 16rem;
      font-size: 0.78rem;
      color: var(--ink-soft);
      line-height: 1.4;
    }

    .hub-musicas-group-new-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.45rem;
      width: 100%;
      min-width: min(100%, 15.5rem);
      min-height: 2.5rem;
      margin: 0;
      padding: 0.55rem 1.1rem;
      border: none;
      border-radius: 999px;
      background: linear-gradient(180deg, #ffab52 0%, var(--c-laranja, #ff9639) 100%);
      color: #fff;
      font: inherit;
      font-size: 0.84rem;
      font-weight: 600;
      cursor: pointer;
      box-shadow: 0 4px 14px rgba(255, 150, 57, 0.28);
    }

    .hub-musicas-group-new-btn .mer-icon {
      width: 1rem;
      height: 1rem;
    }

    .hub-musicas-group-new-btn:hover {
      filter: brightness(1.03);
    }

    .hub-project-empty__link {
      padding: 0;
      border: none;
      background: none;
      color: var(--c-laranja-dark, #c2410c);
      font: inherit;
      font-size: inherit;
      font-weight: 600;
      text-decoration: underline;
      text-underline-offset: 2px;
      cursor: pointer;
    }

    .hub-musicas-group-block__photo {
      width: 3rem;
      height: 3rem;
      border-radius: 12px;
      object-fit: cover;
      flex-shrink: 0;
      box-shadow: 0 2px 8px rgba(26, 35, 50, 0.08);
    }

    .hub-musicas-group-block__photo--placeholder {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: rgba(107, 70, 139, 0.12);
      color: var(--purple);
    }

    .hub-musicas-group-block__photo-icon {
      width: 1.25rem;
      height: 1.25rem;
    }

    .hub-musicas-group-block__head-text {
      flex: 1;
      min-width: 0;
    }

    .hub-musicas-group-block__desc {
      margin: 0.15rem 0 0;
      font-size: 0.8rem;
      color: var(--ink-soft);
      line-height: 1.35;
    }

    .hub-musicas-group-block__desc--muted {
      opacity: 0.82;
    }

    .hub-musicas-group-block__meta {
      margin: 0.2rem 0 0;
      font-size: 0.74rem;
      font-weight: 600;
      color: rgba(107, 75, 26, 0.72);
      line-height: 1.3;
    }

    .hub-musicas-group-block__warn {
      margin: 0 0 0.65rem;
      padding: 0.55rem 0.75rem;
      border-radius: 0.65rem;
      background: rgba(220, 38, 38, 0.06);
      color: #b91c1c;
      font-size: 0.78rem;
      line-height: 1.35;
    }

    .hub-musicas-group-block__link--inline {
      margin-top: 0.15rem;
    }

    .hub-musicas-group-empty--pins {
      gap: 0.45rem;
    }

    .hub-musicas-group-block__title {
      margin: 0;
      font-family: var(--font-display);
      font-size: 1.05rem;
      color: #6b4b1a;
    }

    .project-row__indicators {
      display: inline-flex;
      align-items: center;
      gap: 0.35rem;
      flex-shrink: 0;
    }

    .project-row__indicator {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 1.35rem;
      height: 1.35rem;
      color: var(--ink-soft);
      flex-shrink: 0;
    }

    .project-row__indicator--on {
      color: var(--accent);
    }

    .project-row__indicator--on.project-row__indicator--cloud {
      color: var(--purple);
    }

    .project-row__indicator svg,
    .project-row__indicator-svg {
      width: 1.1rem;
      height: 1.1rem;
      display: block;
    }

    .project-row__indicator--action {
      border: none;
      border-radius: 8px;
      background: rgba(239, 108, 0, 0.1);
      color: var(--accent);
      cursor: pointer;
      padding: 0;
    }

    .project-row__indicator--action:hover {
      background: rgba(239, 108, 0, 0.18);
    }

    .project-row__head {
      display: block;
      margin-bottom: 0.18rem;
    }

    .project-row__head-main {
      min-width: 0;
    }

    .project-row__meta-row {
      display: inline-flex;
      align-items: center;
      gap: 0.45rem;
      margin: 0.12rem 0 0;
      max-width: 100%;
    }

    .project-row__meta-row .project-row__meta {
      margin: 0;
      min-width: 0;
      flex-shrink: 0;
    }

    .project-row__meta-row .project-row__indicators {
      flex-shrink: 0;
    }

    .hub-messages-sheet {
      display: flex;
      flex-direction: column;
      max-height: min(85vh, 720px);
      padding: 0;
      overflow: hidden;
    }

    .hub-messages-sheet__head {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      padding: 0.85rem 1rem 0.65rem;
      border-bottom: 1px solid rgba(26, 35, 50, 0.08);
      flex-shrink: 0;
    }

    .hub-messages-head-spacer {
      width: 2rem;
      flex-shrink: 0;
    }

    .hub-messages-toolbar {
      display: flex;
      gap: 0.45rem;
      align-items: center;
      padding: 0.65rem 1rem 0.45rem;
      flex-shrink: 0;
    }

    .hub-messages-toolbar--picker {
      padding-bottom: 0.65rem;
    }

    .hub-messages-toolbar--thread {
      padding: 0.45rem 0.85rem 0.35rem;
      border-bottom: 1px solid rgba(26, 35, 50, 0.06);
    }

    .hub-messages-search {
      flex: 1;
      min-width: 0;
      padding: 0.5rem 0.7rem;
      border: 1px solid rgba(26, 35, 50, 0.14);
      border-radius: 0.75rem;
      font: inherit;
      font-size: 0.88rem;
    }

    .hub-messages-search:focus {
      outline: none;
      border-color: rgba(239, 108, 0, 0.45);
      box-shadow: 0 0 0 2px rgba(239, 108, 0, 0.12);
    }

    .hub-messages-new {
      display: inline-flex;
      align-items: center;
      gap: 0.25rem;
      flex-shrink: 0;
      padding: 0.45rem 0.65rem;
      border: none;
      border-radius: 0.75rem;
      background: var(--accent);
      color: #fff;
      font-size: 0.78rem;
      font-weight: 600;
      cursor: pointer;
    }

    .hub-messages-new svg {
      width: 1rem;
      height: 1rem;
    }

    .hub-messages-new:hover,
    .hub-messages-new:focus-visible {
      filter: brightness(1.05);
    }

    .hub-messages-picker {
      overflow-y: auto;
      flex: 1;
      min-height: 12rem;
      padding: 0.15rem 0;
    }

    .hub-messages-picker-item .hub-messages-inbox-item__preview {
      white-space: normal;
    }

    .hub-messages-sheet__head h2 {
      margin: 0;
      flex: 1;
      font-size: 1.05rem;
    }

    .hub-messages-back {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2rem;
      height: 2rem;
      padding: 0;
      border: none;
      border-radius: 0.55rem;
      background: transparent;
      color: var(--ink-soft);
      cursor: pointer;
    }

    .hub-messages-back:hover,
    .hub-messages-back:focus-visible {
      color: var(--accent);
      background: rgba(239, 108, 0, 0.08);
    }

    .hub-messages-back svg {
      width: 1.2rem;
      height: 1.2rem;
    }

    .hub-messages-body {
      flex: 1;
      min-height: 0;
      overflow: hidden;
      display: flex;
      flex-direction: column;
    }

    .hub-messages-inbox {
      overflow-y: auto;
      flex: 1;
      min-height: 12rem;
      padding: 0.35rem 0;
    }

    .hub-messages-inbox-item {
      display: flex;
      align-items: center;
      gap: 0.65rem;
      width: 100%;
      padding: 0.75rem 1rem;
      border: none;
      background: transparent;
      text-align: left;
      cursor: pointer;
      font: inherit;
      color: inherit;
    }

    .hub-messages-inbox-item:hover,
    .hub-messages-inbox-item:focus-visible {
      background: rgba(239, 108, 0, 0.06);
    }

    .hub-messages-avatar {
      width: 2.5rem;
      height: 2.5rem;
      border-radius: 50%;
      object-fit: cover;
      flex-shrink: 0;
      border: 1.5px solid rgba(26, 35, 50, 0.12);
    }

    .hub-messages-avatar--initial {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: rgba(26, 35, 50, 0.08);
      color: var(--ink-soft);
      font-size: 0.95rem;
      font-weight: 600;
    }

    .hub-messages-inbox-item__main {
      flex: 1;
      min-width: 0;
    }

    .hub-messages-inbox-item__row {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 0.5rem;
    }

    .hub-messages-inbox-item__name {
      font-weight: 600;
      font-size: 0.92rem;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .hub-messages-inbox-item__time {
      flex-shrink: 0;
      font-size: 0.68rem;
      color: var(--ink-soft);
    }

    .hub-messages-inbox-item__preview {
      margin-top: 0.15rem;
      font-size: 0.78rem;
      color: var(--ink-soft);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .hub-messages-inbox-item__badge {
      min-width: 1.2rem;
      height: 1.2rem;
      padding: 0 0.35rem;
      border-radius: 999px;
      background: #e53935;
      color: #fff;
      font-size: 0.62rem;
      font-weight: 700;
      line-height: 1.2rem;
      text-align: center;
      flex-shrink: 0;
    }

    .hub-messages-inbox-item--system {
      border-bottom: 1px solid rgba(26, 35, 50, 0.08);
    }

    .hub-messages-avatar--system {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: rgba(239, 108, 0, 0.12);
      color: var(--accent, #ef6c00);
    }

    .hub-messages-avatar--system svg {
      width: 1.25rem;
      height: 1.25rem;
    }

    .hub-messages-inline-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.4rem;
      margin-top: 0.45rem;
    }

    .hub-messages-inline-btn {
      padding: 0.35rem 0.7rem;
      border: 1px solid rgba(26, 35, 50, 0.15);
      border-radius: 0.55rem;
      background: #fff;
      color: inherit;
      font-size: 0.76rem;
      font-weight: 600;
      cursor: pointer;
    }

    .hub-messages-inline-btn--primary {
      border-color: rgba(239, 108, 0, 0.35);
      background: rgba(239, 108, 0, 0.12);
      color: var(--accent, #ef6c00);
    }

    .hub-messages-inline-btn:hover,
    .hub-messages-inline-btn:focus-visible {
      background: rgba(26, 35, 50, 0.06);
    }

    .hub-messages-inline-btn--primary:hover,
    .hub-messages-inline-btn--primary:focus-visible {
      background: rgba(239, 108, 0, 0.18);
    }

    .hub-messages-bubble--mine .hub-messages-inline-btn {
      border-color: rgba(255, 255, 255, 0.35);
      background: rgba(255, 255, 255, 0.1);
      color: inherit;
    }

    .hub-messages-bubble--mine .hub-messages-inline-btn--primary {
      background: rgba(255, 255, 255, 0.18);
    }

    .hub-messages-thread-actions {
      padding: 0 1rem 0.35rem;
    }

    .hub-messages-system-tabs {
      display: flex;
      flex-wrap: wrap;
      gap: 0.35rem;
      padding: 0 1rem 0.65rem;
    }

    .hub-messages-system-tab {
      display: inline-flex;
      align-items: center;
      gap: 0.35rem;
      padding: 0.35rem 0.65rem;
      border: 1px solid rgba(107, 75, 26, 0.14);
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.72);
      color: rgba(107, 75, 26, 0.82);
      font-size: 0.78rem;
      line-height: 1.2;
      cursor: pointer;
    }

    .hub-messages-system-tab.is-active {
      background: rgba(255, 150, 57, 0.18);
      border-color: rgba(255, 150, 57, 0.45);
      color: #6b4b1a;
      font-weight: 600;
    }

    .hub-messages-system-tab__count {
      min-width: 1.15rem;
      padding: 0.05rem 0.35rem;
      border-radius: 999px;
      background: rgba(107, 75, 26, 0.1);
      font-size: 0.68rem;
      font-weight: 600;
      text-align: center;
    }

    .hub-messages-system-tab.is-active .hub-messages-system-tab__count {
      background: rgba(255, 150, 57, 0.28);
    }

    .hub-messages-mark-read-btn {
      width: 100%;
      padding: 0.45rem 0.75rem;
      border: 1px solid rgba(26, 35, 50, 0.12);
      border-radius: 0.55rem;
      background: rgba(26, 35, 50, 0.04);
      color: var(--ink-soft, #5a6478);
      font-size: 0.78rem;
      font-weight: 600;
      cursor: pointer;
    }

    .hub-messages-mark-read-btn:hover,
    .hub-messages-mark-read-btn:focus-visible {
      background: rgba(26, 35, 50, 0.08);
    }

    .hub-messages-action-btn {
      display: inline-block;
      margin-top: 0.45rem;
      padding: 0.4rem 0.75rem;
      border: 1px solid rgba(239, 108, 0, 0.25);
      border-radius: 0.55rem;
      background: rgba(239, 108, 0, 0.08);
      color: var(--accent, #ef6c00);
      font-size: 0.78rem;
      font-weight: 600;
      cursor: pointer;
    }

    .hub-messages-action-btn:hover,
    .hub-messages-action-btn:focus-visible {
      background: rgba(239, 108, 0, 0.14);
    }

    .hub-messages-bubble--mine .hub-messages-action-btn {
      border-color: rgba(255, 255, 255, 0.35);
      background: rgba(255, 255, 255, 0.12);
      color: inherit;
    }

    .hub-messages-bubble--mine .hub-messages-action-btn:hover,
    .hub-messages-bubble--mine .hub-messages-action-btn:focus-visible {
      background: rgba(255, 255, 255, 0.2);
    }

    .hub-messages-campaign-impact {
      margin-top: 0.55rem;
      padding: 0.55rem 0.65rem;
      border-radius: 0.55rem;
      background: rgba(255, 255, 255, 0.72);
      border: 1px solid rgba(255, 150, 57, 0.22);
    }

    .hub-messages-bubble--mine .hub-messages-campaign-impact {
      background: rgba(255, 255, 255, 0.14);
      border-color: rgba(255, 255, 255, 0.28);
    }

    .hub-messages-extra-impact,
    .hub-messages-campaign-impact {
      margin-top: 0.5rem;
    }

    .mer-action-impact--inbox {
      margin: 0;
    }

    .mer-action-impact--inbox .mer-action-impact__label {
      font-size: 0.68rem;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      opacity: 0.85;
    }

    .mer-action-impact--inbox .mer-action-impact__title {
      font-size: 0.88rem;
      font-weight: 700;
      margin: 0.15rem 0;
    }

    .mer-action-impact--inbox .mer-action-impact__detail {
      font-size: 0.8rem;
      line-height: 1.4;
      margin: 0;
      opacity: 0.92;
    }

    .hub-messages-thread {
      display: flex;
      flex-direction: column;
      flex: 1;
      min-height: 0;
    }

    .hub-messages-scroll {
      flex: 1;
      min-height: 0;
      overflow-y: auto;
      padding: 0.75rem 1rem;
      display: flex;
      flex-direction: column;
      gap: 0.45rem;
    }

    .hub-messages-load-more {
      align-self: center;
      margin-bottom: 0.35rem;
      padding: 0.35rem 0.75rem;
      border: 1px solid rgba(26, 35, 50, 0.12);
      border-radius: 999px;
      background: #fff;
      color: var(--ink-soft);
      font-size: 0.75rem;
      cursor: pointer;
    }

    .hub-messages-bubble {
      max-width: 85%;
      padding: 0.55rem 0.75rem;
      border-radius: 1rem;
      font-size: 0.88rem;
      line-height: 1.45;
      word-break: break-word;
    }

    .hub-messages-bubble__text {
      white-space: pre-wrap;
    }

    .hub-messages-link {
      color: inherit;
      text-decoration: underline;
      text-underline-offset: 2px;
      word-break: break-all;
    }

    .hub-messages-bubble--mine .hub-messages-link {
      color: #c2410c;
    }

    .hub-messages-bubble--theirs .hub-messages-link {
      color: var(--accent);
    }

    .hub-messages-bubble--mine {
      align-self: flex-end;
      background: rgba(239, 108, 0, 0.12);
      border-bottom-right-radius: 0.25rem;
    }

    .hub-messages-bubble--theirs {
      align-self: flex-start;
      background: rgba(26, 35, 50, 0.06);
      border-bottom-left-radius: 0.25rem;
    }

    .hub-messages-bubble__meta {
      margin-top: 0.2rem;
      font-size: 0.62rem;
      color: var(--ink-soft);
      text-align: right;
    }

    .hub-messages-bubble__meta--read {
      color: var(--accent);
    }

    .public-profile-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.45rem;
      margin-top: 0.35rem;
    }

    .friend-row__foot--triple {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 0.35rem;
    }

    .friend-row__foot--triple .member-row__action {
      min-width: 0;
      padding-inline: 0.35rem;
      font-size: 0.78rem;
    }

    .hub-messages-compose {
      display: flex;
      gap: 0.45rem;
      align-items: flex-end;
      padding: 0.65rem 0.85rem calc(0.85rem + env(safe-area-inset-bottom, 0px));
      border-top: 1px solid rgba(26, 35, 50, 0.08);
      flex-shrink: 0;
      background: #fff;
    }

    .hub-messages-compose textarea {
      flex: 1;
      min-height: 2.5rem;
      max-height: 6rem;
      resize: vertical;
      padding: 0.55rem 0.7rem;
      border: 1px solid rgba(26, 35, 50, 0.14);
      border-radius: 0.75rem;
      font: inherit;
      font-size: 0.88rem;
    }

    .hub-messages-compose textarea:focus {
      outline: none;
      border-color: rgba(239, 108, 0, 0.45);
      box-shadow: 0 0 0 2px rgba(239, 108, 0, 0.12);
    }

    .hub-messages-send {
      flex-shrink: 0;
      min-width: 4.5rem;
      height: 2.5rem;
      padding: 0 0.85rem;
      border: none;
      border-radius: 0.75rem;
      background: var(--accent);
      color: #fff;
      font-weight: 600;
      font-size: 0.82rem;
      cursor: pointer;
    }

    .hub-messages-send:disabled {
      opacity: 0.55;
      cursor: not-allowed;
    }

    .hub-messages-sheet .sheet-cancel {
      margin: 0 1rem 1rem;
    }

    .hub-messages-empty {
      padding: 1.5rem 1rem;
      text-align: center;
      color: var(--ink-soft);
      font-size: 0.88rem;
    }

    .hub-view--rede .hub-rede-hero--detail + .hub-rede-root,
    .hub-view--rede .hub-rede-hero--guest + .hub-rede-root {
      margin-top: 0;
      padding: 0;
      background: transparent;
      border: none;
      border-radius: 0;
    }

    .hub-view--musicas {
      display: flex;
      flex-direction: column;
      min-height: 0;
      flex: 1;
    }

    .hub-view--rede,
    .hub-view--campanhas,
    .hub-view--escola {
      min-height: 0;
    }

    .hub-musicas-root .project-list {
      min-height: 0;
    }

    .hub-view--musicas .musicas-toolbar {
      flex: 0 0 auto;
      margin-bottom: 0.85rem;
    }

    .hub-section-tabs,
    .hub-rede-tabs {
      flex: 0 0 auto;
    }

    .hub-rede-root,
    .hub-campanhas-root,
    .hub-escola-root,
    .hub-view--musicas .musicas-toolbar,
    .hub-view--musicas .project-list {
      min-height: 0;
    }

    .hub-rede-root,
    .hub-campanhas-root,
    .hub-escola-root,
    .hub-musicas-root {
      min-height: 8rem;
      overflow: auto;
      flex: 1;
    }

    .hub-view--musicas .project-list {
      overflow: auto;
      flex: 1;
    }

    .hub-placeholder {
      padding: 1.25rem 0.5rem;
      color: var(--ink-soft);
    }

    .hub-placeholder__hint {
      margin: 0.75rem 0 1rem;
      font-size: 0.92rem;
      line-height: 1.5;
    }

    .hub-placeholder__hint--tail {
      margin-top: 1.25rem;
    }

    .hub-placeholder__hint a {
      color: var(--accent);
    }

    .hub-campanha-list {
      display: grid;
      gap: 0.75rem;
      overflow: auto;
    }

    .hub-campanha-card {
      padding: 0;
      border-radius: 1rem;
      border: 1px solid var(--border);
      background: var(--surface-2);
      overflow: hidden;
    }

    .hub-campanha-card__link {
      display: flex;
      align-items: stretch;
      gap: 0;
      min-height: 7.75rem;
      padding: 0;
      text-decoration: none;
      color: inherit;
      cursor: pointer;
    }

    .hub-campanha-highlight-bar {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 0.65rem 1rem;
      margin-bottom: 0.85rem;
    }

    .hub-campanha-highlight-bar__site {
      font-size: 0.875rem;
      color: var(--accent);
      text-decoration: none;
    }

    .hub-campanha-highlight-bar__site:hover {
      text-decoration: underline;
    }

    .hub-campanha-card__art {
      flex: 0 0 7.75rem;
      width: 7.75rem;
      background: #fff8dc;
      overflow: hidden;
    }

    .hub-campanha-card__art img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }

    .hub-campanha-card__body {
      flex: 1 1 auto;
      min-width: 0;
      padding: 1rem 1.1rem;
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .hub-campanha-card:not(.hub-campanha-card--has-art) .hub-campanha-card__link {
      display: block;
      min-height: 0;
      padding: 1rem 1.1rem;
    }

    .hub-campanha-card__link:hover .hub-campanha-card__title {
      color: var(--accent, #7c5cbf);
    }

    .hub-campanha-card__title {
      margin: 0 0 0.35rem;
      font-size: 1.05rem;
    }

    .hub-campanha-card__summary {
      margin: 0;
      color: var(--ink-soft);
      font-size: 0.92rem;
      line-height: 1.45;
    }

    .hub-campanha-card__period {
      margin: 0 0 0.35rem;
      font-size: 0.82rem;
      color: var(--ink-muted);
    }

    .hub-campanha-callout {
      margin-bottom: 1rem;
      padding: 1rem 1.1rem;
      border-radius: 1rem;
      border: 1px solid rgba(246, 214, 67, 0.45);
      background: rgba(246, 214, 67, 0.12);
    }

    .hub-campanha-callout__title {
      margin: 0 0 0.35rem;
      font-size: 1rem;
    }

    .hub-campanha-callout__text {
      margin: 0 0 0.75rem;
      color: var(--ink-soft);
      font-size: 0.92rem;
      line-height: 1.45;
    }

    .hub-campanha-callout__meta {
      margin: 0 0 0.75rem;
      font-size: 0.85rem;
      color: var(--ink-muted);
    }

    .hub-campanha-callout__count {
      font-weight: 600;
    }

    .hub-campanha-card__count {
      margin: 0 0 0.35rem;
      font-size: 0.82rem;
      color: var(--ink-muted);
    }

    .hub-campanha-card__phase {
      margin: 0 0 0.45rem;
    }

    .hub-campanha-detail {
      margin-bottom: 1rem;
    }

    #hub-campanhas-list[hidden] {
      display: none !important;
    }

    .hub-campanha-detail__card--has-art {
      padding: 0;
      overflow: hidden;
    }

    .hub-campanha-detail__card--has-art .hub-campanha-card__art {
      max-height: 10rem;
    }

    .hub-campanha-detail__body {
      padding: 0.15rem 0 0;
    }

    .hub-campanha-detail__card--has-art .hub-campanha-detail__body {
      padding: 1rem 1.1rem 0.15rem;
    }

    .hub-campanha-detail__section {
      margin: 1rem 0 0.45rem;
      font-size: 1rem;
    }

    .hub-campanha-detail__list {
      margin: 0 0 0.75rem;
      padding-left: 1.15rem;
    }

    .hub-campanha-detail__prose {
      margin: 0.85rem 0;
      font-size: 0.92rem;
      line-height: 1.5;
      color: var(--ink-soft);
    }

    .hub-campanha-detail__prose p {
      margin: 0 0 0.65rem;
    }

    .hub-campanha-detail__journey {
      margin: 0.85rem 0;
    }

    .hub-campanha-detail__journey-title {
      margin: 0 0 0.5rem;
      font-size: 0.95rem;
    }

    .hub-campanha-detail__actions {
      margin: 1rem 0 0.35rem;
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
    }

    .mer-campaign-phase {
      margin: 0 0 0.85rem;
    }

    .mer-campaign-phase__badge {
      display: inline-flex;
      align-items: center;
      padding: 0.2rem 0.55rem;
      border-radius: 999px;
      font-size: 0.72rem;
      font-weight: 700;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      background: rgba(58, 124, 165, 0.14);
      color: #2a6280;
    }

    .mer-campaign-phase__badge--submissions_open {
      background: rgba(76, 140, 74, 0.16);
      color: #2d6b2b;
    }

    .mer-campaign-phase__badge--moderation {
      background: rgba(246, 214, 67, 0.35);
      color: #7a6200;
    }

    .mer-campaign-phase__badge--peer_review {
      background: rgba(58, 124, 165, 0.16);
      color: #2a6280;
    }

    .mer-campaign-phase__badge--result {
      background: rgba(120, 90, 160, 0.14);
      color: #5a4080;
    }

    .mer-campaign-phase__badge--published {
      background: rgba(76, 140, 74, 0.2);
      color: #2d6b2b;
    }

    .mer-campaign-phase__badge--closed {
      background: rgba(100, 100, 110, 0.16);
      color: #4a4a55;
    }

    .hub-campanha-card__actions {
      margin: 0.35rem 0 0;
      padding: 0 0.85rem 0.85rem;
    }

    .mer-campaign-phase__banner {
      margin-top: 0.55rem;
      padding: 0.65rem 0.75rem;
      border-radius: 0.65rem;
      background: rgba(255, 255, 255, 0.5);
      border: 1px solid rgba(246, 214, 67, 0.28);
    }

    .mer-campaign-phase__banner--compact {
      margin-top: 0.35rem;
      padding: 0.45rem 0.6rem;
    }

    .mer-campaign-phase__banner-text {
      margin: 0;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .mer-campaign-phase__result-link {
      font-weight: 600;
      color: #2a6280;
      text-decoration: none;
    }

    .mer-campaign-phase__result-link:hover {
      text-decoration: underline;
    }

    .mer-campaign-collective {
      margin: 0 0 1rem;
      padding: 0.85rem 0.95rem;
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.92);
      border: 1px solid rgba(76, 140, 74, 0.18);
      border-left: 4px solid #4c8c4a;
    }

    .mer-campaign-collective--compact {
      padding: 0.7rem 0.8rem;
    }

    .mer-campaign-collective__title {
      margin: 0 0 0.35rem;
      font-size: 0.92rem;
      font-weight: 700;
      color: var(--ink);
    }

    .mer-campaign-collective__lead {
      margin: 0;
      font-size: 0.78rem;
      font-weight: 700;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      color: var(--ink-muted);
    }

    .mer-campaign-collective__metric {
      margin: 0.35rem 0 0;
      font-size: 1rem;
      line-height: 1.35;
      font-weight: 600;
      color: var(--ink);
    }

    .mer-campaign-collective__details {
      list-style: none;
      margin: 0.55rem 0 0;
      padding: 0;
      display: grid;
      gap: 0.25rem;
    }

    .mer-campaign-collective__details li {
      font-size: 0.85rem;
      color: var(--ink-soft);
    }

    .mer-campaign-collective__hint {
      margin: 0.45rem 0 0;
      font-size: 0.82rem;
      line-height: 1.4;
      color: var(--ink-muted);
    }

    .mer-campaign-collective__voices {
      display: flex;
      flex-wrap: wrap;
      gap: 0.28rem;
      margin-top: 0.55rem;
      align-items: center;
    }

    .mer-campaign-collective__voice {
      width: 0.72rem;
      height: 0.72rem;
      border-radius: 50%;
      background: rgba(0, 0, 0, 0.08);
      border: 1px solid rgba(0, 0, 0, 0.06);
    }

    .mer-campaign-collective__voice--filled {
      background: #4c8c4a;
      border-color: #3d703b;
    }

    .mer-campaign-collective--mix .mer-campaign-collective__voice--filled {
      background: #3a7ca5;
      border-color: #2f6688;
    }

    .mer-campaign-collective--review .mer-campaign-collective__voice--filled {
      background: #6b4b8b;
      border-color: #563c70;
    }

    .mer-campaign-collective__voice-more {
      font-size: 0.72rem;
      color: var(--ink-muted);
      margin-left: 0.15rem;
    }

    .mer-campaign-collective__cta {
      margin: 0.65rem 0 0;
    }

    .mer-campaign-collective__cta-link {
      font-weight: 600;
      color: #2a6280;
      text-decoration: none;
    }

    .mer-campaign-collective__cta-link:hover {
      text-decoration: underline;
    }

    .mer-campaign-howto {
      margin: 0 0 1rem;
      padding: 0.85rem 0.95rem;
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.92);
      border: 1px solid rgba(42, 98, 128, 0.16);
    }

    .mer-campaign-howto--collapsed {
      padding: 0;
      border: none;
      background: transparent;
    }

    .mer-campaign-howto__summary {
      cursor: pointer;
      font-weight: 700;
      font-size: 0.92rem;
      color: var(--ink);
      padding: 0.55rem 0.15rem;
      list-style: none;
    }

    .mer-campaign-howto__summary::-webkit-details-marker {
      display: none;
    }

    .mer-campaign-howto__inner {
      padding: 0.65rem 0.95rem 0.85rem;
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.92);
      border: 1px solid rgba(42, 98, 128, 0.16);
    }

    .mer-campaign-howto__title {
      margin: 0 0 0.55rem;
      font-size: 0.92rem;
      font-weight: 700;
    }

    .mer-campaign-howto__intro {
      margin: 0 0 0.45rem;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .mer-campaign-howto__steps {
      margin: 0.35rem 0 0;
      padding-left: 1.15rem;
      display: grid;
      gap: 0.35rem;
    }

    .mer-campaign-howto__steps li {
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink);
    }

    .mer-campaign-howto__cta {
      margin: 0.65rem 0 0;
    }

    .mer-campaign-howto__cta-link {
      font-weight: 600;
      color: #2a6280;
      text-decoration: none;
    }

    .mer-campaign-howto__cta-link:hover {
      text-decoration: underline;
    }

    .mer-campaign-observer {
      margin: 0 0 1rem;
      padding: 0.85rem 0.95rem;
      border-radius: 14px;
      background: rgba(255, 248, 230, 0.95);
      border: 1px solid rgba(107, 75, 26, 0.14);
      border-left: 4px solid #9a7b00;
    }

    .mer-campaign-observer__title {
      margin: 0 0 0.35rem;
      font-size: 0.92rem;
      font-weight: 700;
    }

    .mer-campaign-observer__text {
      margin: 0;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .mer-campaign-observer__actions {
      margin: 0.65rem 0 0;
      font-size: 0.88rem;
    }

    .mer-campaign-observer__link {
      font-weight: 600;
      color: #2a6280;
      text-decoration: none;
    }

    .mer-campaign-observer__link:hover {
      text-decoration: underline;
    }

    .percurso-collective .mer-campaign-collective--sidebar {
      margin-top: 0.55rem;
      padding: 0.75rem 0.85rem;
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.9);
      border: 1px solid rgba(107, 75, 26, 0.1);
      border-left-width: 4px;
    }

    .percurso-collective .mer-campaign-collective--mix {
      border-left-color: #3a7ca5;
    }

    .percurso-collective .mer-campaign-collective--campaign {
      border-left-color: #4c8c4a;
    }

    .percurso-collective .mer-campaign-collective--review {
      border-left-color: #6b4b8b;
    }

    .mer-campaign-journey {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      flex-direction: column;
      gap: 0.55rem;
    }

    .mer-campaign-journey__step {
      display: flex;
      gap: 0.65rem;
      align-items: flex-start;
    }

    .mer-campaign-journey__marker {
      flex-shrink: 0;
      width: 0.65rem;
      height: 0.65rem;
      margin-top: 0.28rem;
      border-radius: 50%;
      background: rgba(0, 0, 0, 0.12);
      border: 2px solid rgba(0, 0, 0, 0.08);
    }

    .mer-campaign-journey__step--done .mer-campaign-journey__marker {
      background: #4c8c4a;
      border-color: #4c8c4a;
    }

    .mer-campaign-journey__step--current .mer-campaign-journey__marker {
      background: #f6d643;
      border-color: #c9a800;
      box-shadow: 0 0 0 3px rgba(246, 214, 67, 0.35);
    }

    .mer-campaign-journey__step--active .mer-campaign-journey__marker {
      background: #f6d643;
      border-color: #c9a800;
      box-shadow: 0 0 0 3px rgba(246, 214, 67, 0.35);
    }

    .mer-campaign-journey__step--pending .mer-campaign-journey__marker {
      background: transparent;
    }

    .mer-campaign-journey__step--blocked .mer-campaign-journey__marker {
      background: #c45c5c;
      border-color: #a04040;
    }

    .mer-campaign-journey__step--skipped .mer-campaign-journey__marker {
      background: transparent;
      border-color: rgba(0, 0, 0, 0.06);
      opacity: 0.45;
    }

    .mer-campaign-journey__step--blocked .mer-campaign-journey__label,
    .mer-campaign-journey__step--skipped .mer-campaign-journey__label {
      color: var(--ink-muted);
    }

    .mer-campaign-journey__label {
      margin: 0;
      font-size: 0.88rem;
      font-weight: 600;
    }

    .mer-campaign-journey__detail {
      margin: 0.15rem 0 0;
      font-size: 0.8rem;
      color: var(--ink-muted);
      line-height: 1.4;
    }

    .mer-campaign-result {
      margin: 1.25rem 0 0;
      padding: 1rem 1.05rem 1.1rem;
      border-radius: 1rem;
      border: 1px solid rgba(76, 140, 74, 0.22);
      background: rgba(255, 255, 255, 0.55);
    }

    .mer-campaign-result__title {
      margin: 0 0 0.85rem;
      font-size: 1.15rem;
      line-height: 1.3;
    }

    .mer-campaign-result__subhead {
      margin: 0 0 0.55rem;
      font-size: 0.95rem;
      line-height: 1.35;
    }

    .mer-campaign-result__summary {
      margin: 0 0 1rem;
      font-size: 0.94rem;
      line-height: 1.55;
      color: var(--ink-soft);
    }

    .mer-campaign-result__summary p {
      margin: 0;
    }

    .mer-campaign-result__impact {
      margin: 0 0 1.1rem;
      padding: 0.75rem 0.85rem;
      border-radius: 0.75rem;
      background: rgba(246, 214, 67, 0.12);
      border: 1px solid rgba(246, 214, 67, 0.28);
    }

    .mer-campaign-result__voices {
      margin: 0 0 0.45rem;
      font-size: 1.05rem;
      font-weight: 700;
      line-height: 1.35;
      color: var(--ink);
    }

    .mer-campaign-result__impact-lead {
      margin: 0 0 0.55rem;
      font-size: 0.84rem;
      line-height: 1.45;
      color: var(--ink-muted);
    }

    .mer-campaign-result__impact-campaign {
      margin: 0 0 0.45rem;
      font-size: 0.86rem;
      color: var(--ink-muted);
    }

    .mer-campaign-result__metrics {
      margin: 0;
      padding-left: 1.1rem;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .mer-campaign-result__works-wrap,
    .mer-campaign-result__stories-wrap,
    .mer-campaign-result__media {
      margin: 0 0 1.1rem;
    }

    .mer-campaign-result__works {
      display: grid;
      grid-template-columns: 1fr;
      gap: 0.85rem;
    }

    @media (min-width: 640px) {
      .mer-campaign-result__works {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (min-width: 960px) {
      .mer-campaign-result__works {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
    }

    .mer-campaign-result__work {
      margin: 0;
      border-radius: 0.75rem;
      border: 1px solid var(--border);
      background: var(--surface-2);
      overflow: hidden;
    }

    .mer-campaign-result__work-body {
      padding: 0.85rem 0.9rem 0.95rem;
    }

    .mer-campaign-result__work-cover {
      display: block;
      margin: -0.85rem -0.9rem 0.65rem;
    }

    .mer-campaign-result__work-cover img {
      display: block;
      width: 100%;
      max-height: 9rem;
      object-fit: cover;
    }

    .mer-campaign-result__work-title {
      margin: 0 0 0.25rem;
      font-size: 0.98rem;
      line-height: 1.35;
    }

    .mer-campaign-result__work-title a {
      color: inherit;
      text-decoration: none;
    }

    .mer-campaign-result__work-title a:hover {
      text-decoration: underline;
    }

    .mer-campaign-result__work-author {
      margin: 0 0 0.45rem;
      font-size: 0.82rem;
      color: var(--ink-muted);
    }

    .mer-campaign-result__labels {
      list-style: none;
      margin: 0 0 0.55rem;
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      gap: 0.35rem;
    }

    .mer-campaign-result__labels li {
      padding: 0.15rem 0.45rem;
      border-radius: 999px;
      font-size: 0.72rem;
      font-weight: 600;
      background: rgba(58, 124, 165, 0.12);
      color: #2a6280;
    }

    .mer-campaign-result__work-blurb {
      margin: 0 0 0.55rem;
      font-size: 0.86rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .mer-campaign-result__work-link {
      margin: 0;
      font-size: 0.84rem;
    }

    .mer-campaign-result__story {
      margin: 0 0 0.85rem;
      padding: 0.75rem 0.85rem;
      border-radius: 0.75rem;
      border: 1px solid var(--border);
      background: rgba(255, 255, 255, 0.45);
    }

    .mer-campaign-result__story-title {
      margin: 0 0 0.35rem;
      font-size: 0.95rem;
      line-height: 1.35;
    }

    .mer-campaign-result__story-author,
    .mer-campaign-result__story-byline {
      margin: 0 0 0.35rem;
      font-size: 0.82rem;
      color: var(--ink-muted);
    }

    .mer-campaign-result__story-body {
      font-size: 0.9rem;
      line-height: 1.5;
      color: var(--ink-soft);
    }

    .mer-campaign-result__story-body p {
      margin: 0 0 0.55rem;
    }

    .mer-campaign-result__story-body p:last-child {
      margin-bottom: 0;
    }

    .mer-campaign-result__media-link {
      font-weight: 600;
    }

    .mer-campaign-result__next {
      margin-top: 0.35rem;
    }

    .mer-help-block {
      min-width: 0;
    }

    .mer-help-block__head {
      margin-bottom: 0.15rem;
    }

    .mer-help-block__title {
      margin: 0 0 0.35rem;
      font-size: 0.92rem;
      font-weight: 700;
      color: #6b4b1a;
    }

    .mer-help-block__lead,
    .mer-help-block__empty {
      margin: 0;
      font-size: 0.84rem;
      line-height: 1.45;
      color: var(--ink-muted);
    }

    .mer-help-block__more {
      margin: 0.55rem 0 0;
    }

    .mer-help-block__more-link {
      font-size: 0.84rem;
      font-weight: 600;
      color: var(--accent-rede);
      text-decoration: none;
    }

    .mer-help-block__more-link:hover {
      text-decoration: underline;
    }

    .mer-help-block__loading,
    .mer-help-block__error {
      margin: 0;
      font-size: 0.84rem;
      color: var(--ink-muted);
    }

    .mer-campaign-result .mer-help-block--campaign-result {
      margin-top: 1rem;
      padding-top: 0.85rem;
      border-top: 1px solid rgba(107, 75, 26, 0.12);
    }

    .mer-campaign-result .mer-help-block--campaign-result .mer-help-block__title {
      font-size: 1rem;
    }

    .mer-campaign-result .mer-help-block--campaign-result .mer-help-block__lead {
      margin-top: 0.2rem;
    }

    .mer-campaign-result .mer-help-block--campaign-result .mer-opportunity {
      background: rgba(255, 255, 255, 0.92);
      border: 1px solid rgba(107, 75, 26, 0.1);
      border-radius: 12px;
    }

    .hub-cursos-section {
      display: flex;
      flex-direction: column;
      gap: 0.85rem;
    }

    .hub-cursos-section-head {
      margin-bottom: 0.15rem;
    }

    .hub-curso-list {
      display: grid;
      gap: 0.75rem;
    }

    .hub-curso-card {
      border-radius: 1rem;
      border: 1px solid var(--border);
      background: var(--surface-2);
      overflow: hidden;
    }

    .hub-curso-card--enrolled {
      border-color: rgba(58, 124, 165, 0.28);
      box-shadow: inset 0 0 0 1px rgba(58, 124, 165, 0.08);
    }

    .hub-curso-card__layout {
      display: flex;
      align-items: stretch;
      min-height: 7.75rem;
    }

    .hub-curso-card__art {
      flex: 0 0 7.75rem;
      width: 7.75rem;
      background: #eef4f8;
      overflow: hidden;
    }

    .hub-curso-card__art img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }

    .hub-curso-card__body {
      flex: 1 1 auto;
      min-width: 0;
      padding: 1rem 1.1rem;
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 0.35rem;
    }

    .hub-curso-card:not(.hub-curso-card--has-art) .hub-curso-card__layout {
      display: block;
      min-height: 0;
    }

    .hub-curso-card__title {
      margin: 0;
      font-size: 1.05rem;
      line-height: 1.25;
    }

    .hub-curso-card__subtitle {
      margin: 0;
      font-size: 0.88rem;
      color: var(--ink-soft);
    }

    .hub-curso-card__meta {
      margin: 0;
      font-size: 0.82rem;
      color: var(--ink-muted);
    }

    .hub-curso-card__summary {
      margin: 0;
      color: var(--ink-soft);
      font-size: 0.92rem;
      line-height: 1.45;
    }

    .hub-curso-card__progress {
      margin-top: 0.15rem;
    }

    .hub-curso-card__progress-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.5rem;
      margin-bottom: 0.35rem;
      font-size: 0.8rem;
      color: var(--ink-muted);
    }

    .hub-curso-card__progress-track {
      height: 0.45rem;
      border-radius: 999px;
      background: rgba(58, 124, 165, 0.12);
      overflow: hidden;
    }

    .hub-curso-card__progress-bar {
      display: block;
      height: 100%;
      border-radius: inherit;
      background: linear-gradient(90deg, #3a7ca5, #5a9cc5);
    }

    .hub-curso-card__enrolled-note {
      margin: 0;
      font-size: 0.84rem;
      color: var(--ink-soft);
      line-height: 1.4;
    }

    .hub-curso-card__actions {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 0.5rem;
      margin-top: 0.15rem;
    }

    .hub-curso-card__badge {
      display: inline-flex;
      align-items: center;
      padding: 0.28rem 0.65rem;
      border-radius: 999px;
      font-size: 0.78rem;
      font-weight: 600;
      color: #24516d;
      background: rgba(58, 124, 165, 0.14);
    }

    .hub-curso-card__badge--muted {
      color: var(--ink-muted);
      background: rgba(0, 0, 0, 0.06);
    }

    .hub-curso-card__status {
      margin: 0;
      font-size: 0.84rem;
      color: var(--ink-soft);
    }

    .hub-curso-card__status--error {
      color: #b42318;
    }

    .hub-curso-login-gate {
      display: flex;
      flex-direction: column;
      gap: 0.85rem;
    }

    .hub-curso-login-gate__lead {
      margin: 0;
      color: var(--ink-soft);
      line-height: 1.45;
    }

    .hub-curso-player {
      display: flex;
      flex-direction: column;
      gap: 1rem;
    }

    .hub-curso-player__top {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
    }

    .hub-curso-player__head {
      display: flex;
      flex-direction: column;
      gap: 0.5rem;
    }

    .hub-curso-player__course-title {
      margin: 0;
      font-size: 1.1rem;
      line-height: 1.25;
    }

    .hub-curso-player__progress-label {
      margin: 0.35rem 0 0;
      font-size: 0.82rem;
      color: var(--ink-muted);
    }

    .hub-curso-player__layout {
      display: grid;
      gap: 1rem;
    }

    @media (min-width: 900px) {
      .hub-curso-player__layout {
        grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
        align-items: start;
      }
    }

    .hub-curso-player__nav {
      border: 1px solid var(--border);
      border-radius: 1rem;
      background: var(--surface-2);
      padding: 0.85rem;
      max-height: 24rem;
      overflow: auto;
    }

    .hub-curso-player__nav-title {
      margin: 0 0 0.65rem;
      font-size: 0.92rem;
    }

    .hub-curso-player__lesson-list {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      flex-direction: column;
      gap: 0.35rem;
    }

    .hub-curso-player-lesson {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 0.5rem;
      width: 100%;
      padding: 0.55rem 0.65rem;
      border: none;
      border-radius: 0.65rem;
      background: transparent;
      color: var(--ink-soft);
      text-align: left;
      cursor: pointer;
      font: inherit;
    }

    .hub-curso-player-lesson:hover,
    .hub-curso-player-lesson.is-active {
      background: rgba(58, 124, 165, 0.12);
      color: var(--ink);
    }

    .hub-curso-player-lesson.is-done .hub-curso-player-lesson__title {
      color: var(--ink-muted);
    }

    .hub-curso-player-lesson__title {
      flex: 1 1 auto;
      min-width: 0;
      font-size: 0.86rem;
      line-height: 1.35;
    }

    .hub-curso-player-lesson__check {
      flex: 0 0 auto;
      color: #2f7a4f;
      font-size: 0.82rem;
    }

    .hub-curso-player__main {
      display: flex;
      flex-direction: column;
      gap: 0.85rem;
      min-width: 0;
    }

    .hub-curso-player__video-wrap {
      position: relative;
      width: 100%;
      aspect-ratio: 16 / 9;
      border-radius: 1rem;
      overflow: hidden;
      background: #000;
    }

    .hub-curso-player__video {
      display: block;
      width: 100%;
      height: 100%;
      border: 0;
    }

    .hub-curso-player__lesson-title {
      margin: 0;
      font-size: 1rem;
      line-height: 1.3;
    }

    .hub-curso-player__lesson-summary {
      margin: 0;
      color: var(--ink-soft);
      font-size: 0.92rem;
      line-height: 1.45;
    }

    .hub-curso-player__actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
    }

    .hub-curso-player-status {
      margin: 0;
      font-size: 0.88rem;
      color: var(--ink-soft);
    }

    .hub-curso-player-status--ok {
      color: #2f7a4f;
    }

    .hub-curso-player-status--error {
      color: #b42318;
    }

    .hub-curso-player__done {
      padding: 0.85rem 1rem;
      border-radius: 1rem;
      border: 1px solid rgba(58, 124, 165, 0.22);
      background: rgba(58, 124, 165, 0.08);
    }

    .hub-curso-player__done p {
      margin: 0;
      color: var(--ink-soft);
      line-height: 1.45;
    }

    .hub-curso-player__done .btn {
      margin-top: 0.75rem;
    }

    .hub-curso-comments {
      margin-top: 1.5rem;
      padding-top: 1.25rem;
      border-top: 1px solid var(--border);
    }

    .hub-curso-comments__title {
      margin: 0 0 0.85rem;
      font-size: 1rem;
      font-weight: 600;
      color: var(--ink);
    }

    .hub-curso-comments__empty {
      margin: 0 0 0.85rem;
      font-size: 0.88rem;
      color: var(--ink-soft);
      line-height: 1.45;
    }

    .hub-curso-comments__list {
      display: flex;
      flex-direction: column;
      gap: 0;
      margin-bottom: 1rem;
    }

    .hub-curso-comment {
      padding: 0.85rem 0;
    }

    .hub-curso-comment-reply-item {
      margin-left: 1rem;
    }

    .hub-curso-comment-reply-slot {
      margin-top: 0.65rem;
    }

    .hub-curso-comment-reply__actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
      margin-top: 0.5rem;
    }

    .hub-mix-semanal {
      display: flex;
      flex-direction: column;
      gap: 1.5rem;
    }

    .hub-mix-semanal__section-title {
      margin: 0 0 0.75rem;
      font-size: 1rem;
      font-weight: 600;
      color: var(--ink);
    }

    .hub-mix-semanal__section-lead {
      margin: -0.5rem 0 0.75rem;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink-muted);
    }

    .hub-mix-semanal__section--history {
      margin-top: 0.25rem;
    }

    .hub-mix-semanal-card {
      border: 1px solid rgba(0, 0, 0, 0.08);
      border-radius: 1rem;
      padding: 1rem 1.1rem;
      background: #fff;
      box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03);
    }

    .hub-mix-semanal-card--featured {
      border-color: rgba(46, 125, 50, 0.25);
      background: linear-gradient(180deg, rgba(46, 125, 50, 0.05), #fff 40%);
    }

    .hub-mix-semanal-card__head {
      display: flex;
      justify-content: space-between;
      gap: 0.75rem;
      align-items: baseline;
      margin-bottom: 0.35rem;
    }

    .hub-mix-semanal-card__week {
      margin: 0;
      font-size: 0.78rem;
      font-weight: 600;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: var(--ink-muted);
    }

    .hub-mix-semanal-card__countdown {
      margin: 0;
      font-size: 0.78rem;
      color: #2e7d32;
      font-weight: 600;
    }

    .hub-mix-semanal-card__title {
      margin: 0 0 0.35rem;
      font-size: 1.25rem;
      line-height: 1.25;
    }

    .hub-mix-semanal-card__period,
    .hub-mix-semanal-card__meta {
      margin: 0 0 0.35rem;
      font-size: 0.84rem;
      color: var(--ink-muted);
    }

    .hub-mix-semanal-card__badge {
      display: inline-block;
      margin: 0 0 0.5rem;
      padding: 0.2rem 0.55rem;
      border-radius: 999px;
      background: rgba(46, 125, 50, 0.1);
      color: #1b5e20;
      font-size: 0.75rem;
      font-weight: 600;
    }

    .hub-mix-semanal-card__badge--ready {
      background: rgba(21, 101, 192, 0.12);
      color: #0d47a1;
    }

    .hub-mix-semanal-card__badge--closed {
      background: rgba(26, 35, 50, 0.08);
      color: var(--ink-muted);
    }

    .hub-mix-semanal-card__badge--videoclip {
      background: rgba(46, 125, 50, 0.1);
      color: #1b5e20;
    }

    .hub-mix-semanal-card--history {
      border-color: rgba(26, 35, 50, 0.08);
    }

    .hub-mix-semanal-card__memory {
      margin: 0.35rem 0 0.5rem;
    }

    .hub-mix-semanal-card__memory .mer-action-impact {
      margin: 0;
      padding: 0.65rem 0.75rem;
      border-radius: 0.75rem;
      background: rgba(46, 125, 50, 0.05);
    }

    .hub-mix-semanal-card__memory .mer-action-impact__title {
      font-size: 0.95rem;
    }

    .hub-mix-semanal-card__memory .mer-action-impact__detail {
      font-size: 0.84rem;
    }

    .hub-mix-semanal-detail__memory {
      margin: 0 0 1rem;
    }

    .hub-mix-semanal-detail__memory .mer-impact-surface {
      margin-bottom: 0.65rem;
    }

    .mer-action-impact__milestone--videoclip {
      color: #1b5e20;
    }

    .hub-mix-semanal-detail__ready {
      margin: 0 0 1rem;
    }

    .hub-mix-semanal-detail__ready .mer-impact-surface {
      margin: 0;
    }

    .mer-action-impact__milestone {
      margin: 0.5rem 0 0;
      font-size: 0.84rem;
      color: #0d47a1;
      font-weight: 600;
    }

    .hub-mix-semanal-card__summary {
      margin: 0 0 0.65rem;
      color: var(--ink);
      line-height: 1.45;
    }

    .hub-mix-semanal__buckets {
      display: grid;
      gap: 0.55rem;
      margin: 0.75rem 0 1rem;
    }

    .mer-mix-diversity {
      margin: 0.75rem 0 1rem;
    }

    .mer-mix-diversity--compact {
      margin: 0.55rem 0 0.85rem;
    }

    .mer-mix-diversity--inline {
      margin: 0.35rem 0 0.5rem;
    }

    .mer-mix-diversity__metric {
      margin: 0;
      font-size: 0.92rem;
      font-weight: 600;
      color: var(--ink);
    }

    .mer-mix-diversity--inline .mer-mix-diversity__metric {
      font-size: 0.85rem;
      font-weight: 500;
    }

    .mer-mix-diversity .mer-campaign-collective__voices {
      margin-top: 0.45rem;
    }

    .mer-mix-diversity--mix .mer-campaign-collective__voice--filled {
      background: #3a7ca5;
      border-color: #2f6688;
    }

    .mer-mix-diversity__buckets {
      list-style: none;
      margin: 0.65rem 0 0;
      padding: 0;
      display: grid;
      gap: 0.55rem;
    }

    .mer-mix-diversity__bucket-head {
      display: flex;
      justify-content: space-between;
      gap: 0.5rem;
      margin-bottom: 0.25rem;
      font-size: 0.82rem;
    }

    .mer-mix-diversity__bucket-label {
      color: var(--ink);
      font-weight: 500;
    }

    .mer-mix-diversity__bucket-count {
      color: var(--ink-muted);
      white-space: nowrap;
    }

    .mer-mix-diversity__bucket .mer-campaign-collective__voices {
      margin-top: 0.2rem;
    }

    .hub-mix-semanal-bucket__head {
      display: flex;
      justify-content: space-between;
      gap: 0.5rem;
      margin-bottom: 0.25rem;
      font-size: 0.82rem;
    }

    .hub-mix-semanal-bucket__track {
      height: 0.45rem;
      border-radius: 999px;
      background: rgba(0, 0, 0, 0.08);
      overflow: hidden;
    }

    .hub-mix-semanal-bucket__fill {
      display: block;
      height: 100%;
      border-radius: inherit;
      background: linear-gradient(90deg, #43a047, #2e7d32);
    }

    .hub-mix-semanal-card__actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
    }

    .hub-mix-semanal-card__actions .mer-action-impact {
      flex: 1 1 100%;
      margin: 0 0 0.15rem;
    }

    .hub-mix-semanal-card__submission {
      flex: 1 1 100%;
      margin: 0 0 0.15rem;
      font-size: 0.85rem;
      color: var(--ink-soft);
    }

    .hub-mix-semanal-card__submission--approved {
      color: #2e7d32;
    }

    .hub-mix-semanal-card__submission--rejected {
      color: #c62828;
    }

    .hub-mix-semanal-card__submission--ready {
      color: #1565c0;
      font-weight: 600;
    }

    .hub-mix-semanal__deficits {
      margin: 0.35rem 0 0.5rem;
      padding-left: 1.1rem;
      font-size: 0.82rem;
      color: var(--ink-soft);
    }

    .hub-mix-semanal__deficits li + li {
      margin-top: 0.15rem;
    }

    .hub-mix-band-overlay {
      position: fixed;
      inset: 0;
      z-index: 1300;
      display: flex;
      align-items: flex-end;
      justify-content: center;
      padding: 0;
      background: rgba(26, 35, 50, 0.48);
    }

    .hub-mix-band {
      width: min(100%, 36rem);
      max-height: min(92vh, 40rem);
      display: flex;
      flex-direction: column;
      background: var(--surface, #fff);
      border-radius: 16px 16px 0 0;
      box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
      overflow: hidden;
    }

    .hub-mix-band__head {
      padding: 0.85rem 1rem 0.65rem;
      border-bottom: 1px solid rgba(26, 35, 50, 0.08);
    }

    .hub-mix-band__close {
      float: right;
      width: 2rem;
      height: 2rem;
      border: none;
      border-radius: 999px;
      background: rgba(26, 35, 50, 0.06);
      font-size: 1.35rem;
      line-height: 1;
      cursor: pointer;
    }

    .hub-mix-band__week {
      margin: 0 0 0.15rem;
      font-size: 0.75rem;
      font-weight: 700;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: #2e7d32;
    }

    .hub-mix-band__title {
      margin: 0;
      font-size: 1.05rem;
    }

    .hub-mix-band__hint,
    .hub-mix-band__size,
    .hub-mix-band__count {
      margin: 0.35rem 0 0;
      font-size: 0.85rem;
      color: var(--ink-soft);
    }

    .hub-mix-band__warn {
      margin: 0 0 0.65rem;
      padding: 0.55rem 0.65rem;
      border-radius: 8px;
      background: rgba(245, 124, 0, 0.12);
      color: #e65100;
      font-size: 0.85rem;
    }

    .hub-mix-band__body {
      flex: 1 1 auto;
      overflow-y: auto;
      padding: 0.85rem 1rem 1rem;
    }

    .hub-mix-band-toolbar {
      display: flex;
      flex-wrap: wrap;
      gap: 0.35rem;
      margin-bottom: 0.65rem;
    }

    .hub-mix-band-list {
      display: grid;
      gap: 0.35rem;
      margin-bottom: 0.65rem;
    }

    .hub-mix-band-row {
      display: flex;
      align-items: flex-start;
      gap: 0.55rem;
      padding: 0.55rem 0.65rem;
      border: 1px solid rgba(26, 35, 50, 0.1);
      border-radius: 10px;
      cursor: pointer;
    }

    .hub-mix-band-row__main {
      display: flex;
      flex-direction: column;
      gap: 0.1rem;
      min-width: 0;
    }

    .hub-mix-band-row__tag {
      font-size: 0.8rem;
      color: var(--ink-soft);
    }

    .hub-mix-band-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
      margin-top: 0.5rem;
    }

    .mix-videoclip-celebration {
      z-index: 1400;
      align-items: center;
      padding: 1rem;
    }

    .mix-videoclip-celebration__box {
      position: relative;
      width: min(100%, 28rem);
      max-height: min(92vh, 40rem);
      overflow-y: auto;
      padding: 1rem 1rem 1.1rem;
    }

    .mix-videoclip-celebration__close {
      position: absolute;
      top: 0.65rem;
      right: 0.65rem;
      width: 2rem;
      height: 2rem;
      border: none;
      border-radius: 999px;
      background: rgba(26, 35, 50, 0.06);
      font-size: 1.35rem;
      line-height: 1;
      cursor: pointer;
    }

    .mix-videoclip-celebration__heading {
      margin: 0 2rem 0.65rem 0;
      font-size: 1.1rem;
    }

    .mix-videoclip-celebration__box .mer-action-impact {
      margin-bottom: 0.75rem;
    }

    .mix-videoclip-celebration__preview {
      margin: 0 0 0.85rem;
      border-radius: 12px;
      overflow: hidden;
      background: #000;
    }

    .mix-videoclip-celebration__video {
      display: block;
      width: 100%;
      max-height: 16rem;
      background: #000;
    }

    .mix-videoclip-celebration__actions {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
    }

    .mix-videoclip-celebration__actions .btn {
      flex: 1 1 auto;
    }

    @media (min-width: 640px) {
      .hub-mix-band-overlay {
        align-items: center;
        padding: 1rem;
      }

      .hub-mix-band {
        border-radius: 16px;
      }
    }

    .hub-mix-wizard-overlay {
      position: fixed;
      inset: 0;
      z-index: 1250;
      display: flex;
      align-items: flex-end;
      justify-content: center;
      padding: 0;
      background: rgba(26, 35, 50, 0.48);
    }

    .hub-mix-wizard {
      width: min(100%, 32rem);
      max-height: min(94vh, 44rem);
      display: flex;
      flex-direction: column;
      background: var(--surface, #fff);
      border: 1px solid rgba(26, 35, 50, 0.1);
      border-radius: 16px 16px 0 0;
      box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
      overflow: hidden;
    }

    .hub-mix-wizard__body {
      flex: 1 1 auto;
      overflow-y: auto;
      padding: 0 1rem 1rem;
      -webkit-overflow-scrolling: touch;
    }

    .hub-mix-wizard__head {
      position: sticky;
      top: 0;
      z-index: 1;
      padding: 0.85rem 1rem 0.65rem;
      background: var(--surface, #fff);
      border-bottom: 1px solid rgba(26, 35, 50, 0.08);
    }

    .hub-mix-wizard__close {
      float: right;
      width: 2rem;
      height: 2rem;
      margin: -0.15rem -0.25rem 0 0.5rem;
      padding: 0;
      border: none;
      border-radius: 999px;
      background: rgba(26, 35, 50, 0.06);
      color: var(--ink-soft);
      font-size: 1.35rem;
      line-height: 1;
      cursor: pointer;
    }

    .hub-mix-wizard__week {
      margin: 0 0 0.15rem;
      font-size: 0.75rem;
      font-weight: 700;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: #2e7d32;
    }

    .hub-mix-wizard__title {
      margin: 0;
      font-size: 1.05rem;
      line-height: 1.25;
      color: var(--ink);
    }

    @media (min-width: 640px) {
      .hub-mix-wizard-overlay {
        align-items: center;
        padding: 1rem;
      }

      .hub-mix-wizard {
        border-radius: 16px;
      }
    }

    .hub-mix-semanal-card__link {
      display: inline-flex;
      align-items: center;
      font-size: 0.88rem;
      font-weight: 600;
      color: #2e7d32;
      text-decoration: none;
    }

    .hub-mix-semanal-card__link:hover {
      text-decoration: underline;
    }

    .hub-mix-semanal-history {
      display: grid;
      gap: 0.75rem;
    }

    .hub-mix-semanal-detail__back {
      margin: 0 0 0.75rem;
      padding: 0;
      border: 0;
      background: none;
      color: #2e7d32;
      font: inherit;
      font-weight: 600;
      cursor: pointer;
    }

    .hub-mix-semanal-detail__meta {
      margin: 0 0 1rem;
      font-size: 0.88rem;
      line-height: 1.5;
      color: var(--ink-muted);
    }

    .hub-mix-semanal-detail__body {
      font-size: 0.92rem;
      line-height: 1.55;
      color: var(--ink);
    }

    .hub-mix-semanal-detail__body p,
    .hub-mix-semanal-detail__body .hub-mix-semanal__note {
      margin: 0 0 0.65rem;
    }

    .hub-mix-semanal__heading {
      margin: 1rem 0 0.5rem;
      font-size: 1rem;
    }

    .hub-mix-semanal__list {
      margin: 0 0 0.75rem 1.1rem;
      padding: 0;
    }

    .hub-campanha-form {
      display: flex;
      flex-direction: column;
      gap: 0.65rem;
      margin-bottom: 0.75rem;
    }

    .hub-campanha-form__label {
      font-size: 0.85rem;
      font-weight: 600;
      color: var(--ink-soft);
    }

    .hub-campanha-form__select {
      width: 100%;
      padding: 0.55rem 0.75rem;
      border: 1px solid var(--border);
      border-radius: 0.65rem;
      background: rgba(255, 255, 255, 0.9);
      font: inherit;
      color: var(--ink);
    }

    .hub-campanha-form__check {
      display: flex;
      gap: 0.5rem;
      align-items: flex-start;
      font-size: 0.85rem;
      line-height: 1.4;
      color: var(--ink-soft);
      cursor: pointer;
    }

    .hub-campanha-form__check input {
      margin-top: 0.15rem;
      flex-shrink: 0;
    }

    .hub-campanha-enroll-review {
      margin: 0 0 0.75rem;
      padding-left: 1.1rem;
      font-size: 0.9rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .hub-campanha-enroll-review li {
      margin-bottom: 0.35rem;
    }

    .mer-campaign-peer-review {
      margin: 0.85rem 0;
      padding: 0.75rem 0.85rem;
      border-radius: 0.75rem;
      background: rgba(255, 255, 255, 0.55);
      border: 1px solid rgba(120, 180, 255, 0.35);
    }

    .mer-campaign-peer-review__title {
      margin: 0 0 0.35rem;
      font-size: 0.95rem;
      font-weight: 700;
    }

    .mer-campaign-peer-review__headline {
      margin: 0 0 0.35rem;
      font-size: 0.92rem;
      font-weight: 700;
      color: var(--ink);
    }

    .mer-campaign-peer-review__text,
    .mer-campaign-peer-review__meta {
      margin: 0 0 0.35rem;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .mer-campaign-peer-review__meta {
      font-size: 0.82rem;
      color: var(--ink-muted);
    }

    .mer-campaign-peer-review__actions {
      margin: 0.5rem 0 0;
    }

    .mer-campaign-author-progress {
      margin: 0.85rem 0;
      padding: 0.75rem 0.85rem;
      border-radius: 0.75rem;
      background: rgba(255, 255, 255, 0.55);
      border: 1px solid rgba(160, 200, 140, 0.45);
    }

    .mer-campaign-author-progress__title {
      margin: 0 0 0.35rem;
      font-size: 0.95rem;
      font-weight: 700;
    }

    .mer-campaign-author-progress__intro,
    .mer-campaign-author-progress__empty,
    .mer-campaign-author-progress__note {
      margin: 0 0 0.5rem;
      font-size: 0.86rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .mer-campaign-author-progress__note {
      margin-bottom: 0;
      font-size: 0.8rem;
      color: var(--ink-muted);
    }

    .mer-campaign-author-progress__note strong {
      font-weight: 600;
      color: var(--ink-soft);
    }

    .mer-campaign-author-progress__list {
      list-style: none;
      margin: 0.5rem 0 0.65rem;
      padding: 0;
    }

    .mer-campaign-author-progress__item {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      gap: 0.35rem 0.75rem;
      padding: 0.45rem 0;
      border-top: 1px solid rgba(0, 0, 0, 0.06);
      font-size: 0.86rem;
    }

    .mer-campaign-author-progress__item:first-child {
      border-top: none;
      padding-top: 0;
    }

    .mer-campaign-author-progress__criterion {
      font-weight: 600;
      color: var(--ink);
    }

    .mer-campaign-author-progress__count {
      color: var(--ink-soft);
      text-align: right;
    }

    .mer-campaign-result-preparing {
      margin: 0.85rem 0;
      padding: 0.75rem 0.85rem;
      border-radius: 0.75rem;
      background: rgba(255, 255, 255, 0.55);
      border: 1px solid rgba(246, 214, 67, 0.35);
    }

    .mer-campaign-result-preparing__title {
      margin: 0 0 0.35rem;
      font-size: 0.95rem;
      font-weight: 700;
    }

    .mer-campaign-result-preparing__text {
      margin: 0;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .hub-campanha-detail__prose-wrap {
      margin: 0.85rem 0;
    }

    .hub-campanha-detail__prose-summary {
      cursor: pointer;
      font-size: 0.9rem;
      font-weight: 600;
      color: var(--ink);
      margin-bottom: 0.35rem;
    }

    .hub-campanha-review-panel h3 {
      margin: 0 0 0.5rem;
      font-size: 1rem;
    }

    .hub-campanha-review-progress {
      margin: 0 0 0.75rem;
      font-size: 0.88rem;
      font-weight: 600;
      color: var(--ink);
    }

    .hub-campanha-review-headline {
      margin: 0 0 0.45rem;
      font-size: 1.05rem;
      font-weight: 700;
      color: var(--ink);
      line-height: 1.35;
    }

    .hub-campanha-review-intro__list {
      margin: 0.5rem 0 0.75rem;
      padding-left: 1.15rem;
      font-size: 0.88rem;
      line-height: 1.5;
      color: var(--ink-soft);
    }

    .hub-campanha-review-intro__list li + li {
      margin-top: 0.45rem;
    }

    .hub-campanha-review-intro__actions {
      margin: 0.75rem 0 0;
    }

    .hub-campanha-review-list {
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .hub-campanha-review-list__item {
      margin-bottom: 0.45rem;
    }

    .hub-campanha-review-list__item--next .hub-campanha-review-list__btn {
      border-color: rgba(255, 150, 57, 0.55);
      background: rgba(255, 150, 57, 0.08);
    }

    .hub-campanha-review-list__next {
      display: inline-block;
      margin-bottom: 0.25rem;
      padding: 0.1rem 0.45rem;
      border-radius: 999px;
      font-size: 0.72rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.03em;
      color: var(--ink);
      background: rgba(255, 150, 57, 0.2);
    }

    .hub-campanha-review-project-desc {
      margin: 0 0 0.65rem;
      font-size: 0.86rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .hub-campanha-review-player-wrap {
      margin: 0.65rem 0 0.85rem;
    }

    .hub-campanha-review-player-label {
      margin: 0 0 0.35rem;
      font-size: 0.82rem;
      font-weight: 600;
      color: var(--ink);
    }

    .hub-campanha-review-player {
      display: block;
      width: 100%;
      border-radius: 0.55rem;
    }

    .hub-campanha-review-player-fallback {
      margin: 0.5rem 0 0;
      font-size: 0.82rem;
    }

    .hub-campanha-review-status {
      color: var(--c-danger, #c53030);
    }

    .hub-campanha-review-done__next {
      margin-top: 0.75rem;
    }

    .hub-campanha-review-done__actions {
      margin: 1rem 0 0;
    }

    .hub-campanha-review-done .mer-action-impact {
      margin: 0;
    }

    .hub-campanha-review-list__btn {
      display: block;
      width: 100%;
      text-align: left;
      padding: 0.65rem 0.75rem;
      border-radius: 0.55rem;
      border: 1px solid rgba(120, 180, 255, 0.35);
      background: rgba(255, 255, 255, 0.65);
      cursor: pointer;
    }

    .hub-campanha-review-list__title {
      display: block;
      font-weight: 600;
      font-size: 0.92rem;
      color: var(--ink);
    }

    .hub-campanha-review-list__meta {
      display: block;
      margin-top: 0.15rem;
      font-size: 0.8rem;
      color: var(--ink-muted);
    }

    .hub-campanha-review-criterion {
      margin: 0.75rem 0;
      padding: 0.65rem 0.75rem;
      border-radius: 0.55rem;
      background: rgba(255, 255, 255, 0.45);
      border: 1px solid rgba(0, 0, 0, 0.06);
    }

    .hub-campanha-review-criterion__title {
      margin: 0 0 0.45rem;
      font-size: 0.88rem;
      font-weight: 600;
    }

    .hub-campanha-review-criterion__desc {
      margin: -0.2rem 0 0.5rem;
      font-size: 0.82rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .hub-campanha-review-note {
      margin: 0.85rem 0 0.25rem;
    }

    .hub-campanha-review-note__label {
      display: block;
      margin: 0 0 0.35rem;
      font-size: 0.88rem;
      font-weight: 600;
      color: var(--ink);
    }

    .hub-campanha-review-note__optional {
      font-weight: 500;
      color: var(--ink-muted);
    }

    .hub-campanha-review-note__input {
      display: block;
      width: 100%;
      min-height: 4.5rem;
      padding: 0.55rem 0.65rem;
      border-radius: 0.55rem;
      border: 1px solid rgba(0, 0, 0, 0.12);
      background: rgba(255, 255, 255, 0.85);
      font: inherit;
      font-size: 0.86rem;
      line-height: 1.45;
      resize: vertical;
    }

    .hub-campanha-review-note__hint {
      margin: 0.35rem 0 0;
      font-size: 0.78rem;
      color: var(--ink-muted);
    }

    .hub-campanha-review-answers {
      display: flex;
      gap: 0.45rem;
      flex-wrap: wrap;
    }

    .hub-campanha-review-answer {
      min-width: 4.5rem;
      padding: 0.35rem 0.75rem;
      border-radius: 999px;
      border: 1px solid rgba(0, 0, 0, 0.12);
      background: rgba(255, 255, 255, 0.8);
      font-size: 0.85rem;
      cursor: pointer;
    }

    .hub-campanha-review-answer.is-selected {
      border-color: rgba(255, 150, 57, 0.55);
      background: rgba(255, 150, 57, 0.15);
      font-weight: 600;
    }

    .hub-campanha-review-done-note {
      margin-top: 0.75rem;
    }

    .hub-campanha-detail__enroll,
    .mer-campaign-enroll-btn {
      margin-right: 0.35rem;
    }

    .hub-campanha-participacao--done {
      margin-bottom: 0.75rem;
      padding: 0.75rem 0.85rem;
      border-radius: 0.75rem;
      background: rgba(255, 255, 255, 0.55);
      border: 1px solid rgba(246, 214, 67, 0.35);
    }

    .hub-campanha-participacao,
    .mer-campaign-participacao {
      margin: 0.85rem 0;
      padding: 0.75rem 0.85rem;
      border-radius: 0.75rem;
      background: rgba(255, 255, 255, 0.55);
      border: 1px solid rgba(246, 214, 67, 0.3);
    }

    .hub-campanha-participacao__status {
      margin: 0 0 0.25rem;
      font-weight: 600;
      font-size: 0.9rem;
    }

    .hub-campanha-participacao__project {
      margin: 0 0 0.35rem;
    }

    .hub-campanha-participacao__project a {
      color: var(--ink);
      font-weight: 600;
    }

    .hub-campanha-participacao__hint {
      margin: 0;
      font-size: 0.82rem;
      color: var(--ink-muted);
      line-height: 1.4;
    }

    .hub-campanha-participacao .mer-action-impact,
    .mer-campaign-participacao .mer-action-impact {
      margin: 0.35rem 0 0;
      padding: 0.65rem 0.75rem;
      background: rgba(255, 150, 57, 0.06);
      border: 1px solid rgba(255, 150, 57, 0.18);
      border-radius: 0.55rem;
    }

    .hub-campanha-participacao .mer-impact-surface,
    .mer-campaign-participacao .mer-impact-surface,
    .hub-mix-semanal-card__actions .mer-impact-surface {
      margin: 0.35rem 0 0;
    }

    .hub-campanha-participacao .mer-impact-surface__title,
    .mer-campaign-participacao .mer-impact-surface__title,
    .hub-mix-semanal-card__actions .mer-impact-surface__title {
      font-size: 0.92rem;
    }

    .hub-mix-semanal-card__actions .mer-impact-surface .mer-action-impact {
      margin: 0;
    }

    .mer-campaign-participacao__result {
      margin-top: 0.55rem;
      padding-top: 0.55rem;
      border-top: 1px solid rgba(246, 214, 67, 0.28);
    }

    .mer-campaign-participacao__result-text {
      margin: 0 0 0.35rem;
      font-size: 0.84rem;
      line-height: 1.45;
    }

    .mer-campaign-participacao__result-actions {
      margin: 0;
    }

    .mer-opportunities {
      margin: 0 0 1rem;
      padding: 0.95rem 1rem 1rem;
      border-radius: 16px;
      background:
        radial-gradient(ellipse 90% 120% at 100% 0%, rgba(246, 214, 67, 0.22), transparent 58%),
        linear-gradient(180deg, rgba(255, 251, 240, 0.98), rgba(255, 255, 255, 0.96));
      border: 1px solid rgba(246, 214, 67, 0.35);
      box-shadow: 0 8px 24px rgba(107, 75, 26, 0.06);
    }

    .mer-opportunities__head {
      margin-bottom: 0.75rem;
    }

    .mer-opportunities__title {
      margin: 0;
      font-family: var(--font-display);
      font-size: clamp(1.15rem, 2vw, 1.35rem);
      line-height: 1.15;
      color: #6b4b1a;
    }

    .mer-opportunities__lead {
      margin: 0.25rem 0 0;
      font-size: 0.86rem;
      line-height: 1.45;
      color: var(--ink-muted);
    }

    .mer-opportunities__list {
      list-style: none;
      margin: 0;
      padding: 0;
      display: grid;
      gap: 0.65rem;
    }

    .mer-opportunity {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 0.65rem;
      padding: 0.75rem 0.85rem;
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.88);
      border: 1px solid rgba(107, 75, 26, 0.1);
      border-left-width: 4px;
    }

    .mer-opportunity--mix_deficit {
      border-left-color: var(--opp-mix);
    }

    .mer-opportunity--campaign_open {
      border-left-color: var(--opp-campaign);
    }

    .mer-opportunity--project_seeking {
      border-left-color: var(--opp-project);
    }

    .mer-opportunity--group_opening {
      border-left-color: var(--opp-group);
    }

    .mer-opportunity__cover img {
      display: block;
      width: 100%;
      max-height: 7rem;
      object-fit: cover;
      border-radius: 10px;
    }

    .mer-opportunity__badge {
      display: inline-block;
      margin-bottom: 0.35rem;
      padding: 0.18rem 0.5rem;
      border-radius: 999px;
      font-size: 0.68rem;
      font-weight: 700;
      letter-spacing: 0.03em;
      text-transform: uppercase;
      background: rgba(107, 75, 26, 0.08);
      color: #6b4b1a;
    }

    .mer-opportunity--mix_deficit .mer-opportunity__badge {
      background: rgba(58, 124, 165, 0.14);
      color: #2a6280;
    }

    .mer-opportunity--campaign_open .mer-opportunity__badge {
      background: rgba(76, 140, 74, 0.16);
      color: #2d6b2b;
    }

    .mer-opportunity--project_seeking .mer-opportunity__badge {
      background: rgba(239, 108, 0, 0.12);
      color: #b45309;
    }

    .mer-opportunity--group_opening .mer-opportunity__badge {
      background: rgba(123, 94, 167, 0.14);
      color: #5c4580;
    }

    .mer-opportunity__title {
      margin: 0;
      font-size: 0.98rem;
      line-height: 1.25;
      color: var(--ink);
    }

    .mer-opportunity__subtitle {
      margin: 0.2rem 0 0;
      font-size: 0.8rem;
      color: var(--ink-muted);
    }

    .mer-opportunity__hook {
      margin: 0.35rem 0 0;
      font-size: 0.84rem;
      line-height: 1.45;
    }

    .mer-opportunity__tags {
      display: flex;
      flex-wrap: wrap;
      gap: 0.35rem;
      margin: 0.45rem 0 0;
    }

    .mer-opportunity__tag {
      display: inline-block;
      padding: 0.16rem 0.45rem;
      border-radius: 999px;
      font-size: 0.72rem;
      font-weight: 600;
      background: rgba(107, 75, 26, 0.07);
      color: #5a5348;
    }

    .mer-opportunity__tag--match {
      background: rgba(45, 107, 43, 0.16);
      color: #1f5a1e;
      box-shadow: inset 0 0 0 1px rgba(45, 107, 43, 0.28);
    }

    .mer-opportunity__tags-label {
      flex: 0 0 100%;
      margin: 0 0 0.1rem;
      font-size: 0.68rem;
      font-weight: 700;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      color: #2d6b2b;
    }

    .mer-opportunity__match-badge {
      display: inline-block;
      margin: 0 0 0.35rem 0.35rem;
      padding: 0.14rem 0.45rem;
      border-radius: 999px;
      font-size: 0.62rem;
      font-weight: 700;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      color: #1f5a1e;
      background: rgba(76, 140, 74, 0.16);
    }

    .mer-opportunity--profile-match {
      box-shadow: inset 0 0 0 1px rgba(76, 140, 74, 0.22);
    }

    .mer-opportunities__filters {
      margin-top: 0.55rem;
    }

    .mer-opportunities__head--filters {
      margin-bottom: 0.35rem;
    }

    .mer-opportunities__filter {
      display: inline-flex;
      align-items: center;
      min-height: 2rem;
      padding: 0.28rem 0.75rem;
      border-radius: 999px;
      border: 1px solid rgba(107, 75, 26, 0.18);
      background: rgba(255, 255, 255, 0.92);
      color: #5a5348;
      font: inherit;
      font-size: 0.78rem;
      font-weight: 600;
      cursor: pointer;
    }

    .mer-opportunities__filter--active {
      color: #1f5a1e;
      border-color: rgba(45, 107, 43, 0.35);
      background: rgba(76, 140, 74, 0.14);
    }

    .mer-opportunities__filter:hover {
      filter: brightness(0.98);
    }

    .mer-opportunity__cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 2.2rem;
      padding: 0.35rem 0.85rem;
      border-radius: 999px;
      font-size: 0.82rem;
      font-weight: 700;
      text-decoration: none;
      color: #fff;
      background: var(--opp-project);
      border: 1px solid rgba(180, 83, 9, 0.25);
      box-shadow: 0 2px 8px rgba(26, 35, 50, 0.06);
    }

    .mer-opportunity--mix_deficit .mer-opportunity__cta {
      background: var(--opp-mix);
      border-color: rgba(42, 98, 128, 0.25);
    }

    .mer-opportunity--campaign_open .mer-opportunity__cta {
      background: var(--opp-campaign);
      border-color: rgba(45, 107, 43, 0.25);
    }

    .mer-opportunity--group_opening .mer-opportunity__cta {
      background: var(--opp-group);
      border-color: rgba(92, 69, 128, 0.25);
    }

    .mer-opportunity__cta:hover {
      filter: brightness(1.05);
    }

    .mer-opportunities--loading,
    .mer-opportunities--empty,
    .mer-opportunities--error {
      min-height: 4rem;
    }

    .mer-opportunities__loading,
    .mer-opportunities__error,
    .mer-opportunities__empty-title {
      margin: 0;
      font-size: 0.9rem;
      line-height: 1.45;
    }

    .mer-opportunities__empty-body {
      margin: 0.35rem 0 0;
      font-size: 0.84rem;
      color: var(--ink-muted);
    }

    .mer-opportunities__empty-actions {
      margin: 0.65rem 0 0;
    }

    .mer-campaign-moderation-hint {
      margin: 0.65rem 0 0;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--hub-muted, #5f6368);
    }

    .mer-campaign-participacao__next {
      margin: 0.35rem 0 0;
    }

    .percurso-panel {
      display: flex;
      flex-direction: column;
      gap: 1rem;
      min-height: 100%;
    }

    .percurso-panel__head {
      padding-bottom: 0.15rem;
    }

    .percurso-panel__title {
      margin: 0;
      font-family: var(--font-display);
      font-size: clamp(1.2rem, 2.2vw, 1.45rem);
      line-height: 1.15;
      color: var(--percurso-heading);
    }

    .percurso-panel__lead {
      margin: 0.35rem 0 0;
      font-size: 0.86rem;
      line-height: 1.45;
      color: var(--ink-muted);
    }

    .percurso-section__title,
    .percurso-collective__title,
    .percurso-pending__title,
    .percurso-recognition__title {
      margin: 0 0 0.45rem;
      font-family: var(--font);
      font-size: 0.72rem;
      font-weight: 700;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      color: var(--percurso-heading);
    }

    .percurso-steps,
    .percurso-opportunities,
    .percurso-collective,
    .percurso-recognition,
    .percurso-pending {
      min-width: 0;
    }

    .percurso-steps__loading {
      margin: 0;
      font-size: 0.88rem;
      color: var(--ink-muted);
    }

    .percurso-step {
      padding: 0.85rem 0.95rem;
      border-radius: 14px;
      background: var(--percurso-surface);
      border: 1px solid var(--percurso-border);
      border-left: 4px solid var(--accent);
      box-shadow: 0 4px 14px rgba(107, 75, 26, 0.04);
    }

    .percurso-step + .percurso-step {
      margin-top: 0.65rem;
    }

    .percurso-step--info {
      border-left-color: var(--ink-muted);
    }

    .percurso-step--action {
      border-left-color: var(--accent);
    }

    .percurso-pending__list {
      list-style: none;
      margin: 0;
      padding: 0;
      display: grid;
      gap: 0.35rem;
    }

    .percurso-pending__item {
      margin: 0;
    }

    .percurso-pending__line {
      margin: 0;
      font-size: 0.84rem;
    }

    .percurso-pending__link {
      color: var(--percurso-heading);
      font-weight: 600;
      text-decoration: none;
    }

    .percurso-pending__link:hover {
      text-decoration: underline;
    }

    .percurso-collective__block {
      margin-top: 0.55rem;
      padding: 0.75rem 0.85rem;
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.9);
      border: 1px solid rgba(107, 75, 26, 0.1);
    }

    .percurso-collective__block--mix {
      border-left: 4px solid #3a7ca5;
    }

    .percurso-collective__block--campaign {
      border-left: 4px solid #4c8c4a;
    }

    .percurso-collective__block--review {
      border-left: 4px solid #6b4b8b;
    }

    .percurso-collective__lead {
      margin: 0;
      font-size: 0.78rem;
      font-weight: 700;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      color: var(--ink-muted);
    }

    .percurso-collective__block--mix .mer-action-impact {
        margin-top: 0.4rem;
        padding: 0;
        background: transparent;
        border: 0;
        box-shadow: none;
    }

    .percurso-collective__block--mix .mer-action-impact__title {
        margin-top: 0.15rem;
        font-size: 0.92rem;
        font-weight: 700;
        color: var(--ink);
    }

    .percurso-collective__block--mix .mer-action-impact__detail {
        margin-top: 0.25rem;
        font-size: 0.84rem;
        color: var(--ink-muted);
    }

    .percurso-collective__block--mix .mer-action-impact__cta {
        margin-top: 0.45rem;
    }

    .percurso-collective__metric {
      margin: 0.35rem 0 0;
      font-size: 0.92rem;
      line-height: 1.35;
      color: var(--ink);
    }

    .percurso-collective__hint {
      margin: 0.45rem 0 0;
      font-size: 0.8rem;
      line-height: 1.4;
      color: var(--ink-muted);
    }

    .percurso-collective__voices {
      display: flex;
      flex-wrap: wrap;
      gap: 0.28rem;
      margin-top: 0.45rem;
      align-items: center;
    }

    .percurso-collective__voice {
      width: 0.62rem;
      height: 0.62rem;
      border-radius: 999px;
      background: rgba(107, 75, 26, 0.12);
      border: 1px solid rgba(107, 75, 26, 0.18);
    }

    .percurso-collective__voice--filled {
      background: #4c8c4a;
      border-color: rgba(45, 107, 43, 0.35);
    }

    .percurso-collective__block--mix .percurso-collective__voice--filled {
      background: #3a7ca5;
      border-color: rgba(58, 124, 165, 0.35);
    }

    .percurso-collective__block--review .percurso-collective__voice--filled {
      background: #6b4b8b;
      border-color: rgba(107, 75, 139, 0.35);
    }

    .percurso-collective__voice-more {
      font-size: 0.72rem;
      font-weight: 700;
      color: var(--ink-muted);
      margin-left: 0.15rem;
    }

    .percurso-recognition__title {
      margin: 0 0 0.35rem;
      font-size: 0.92rem;
      font-weight: 700;
      color: #6b4b1a;
    }

    .percurso-recognition .mer-journey {
      list-style: none;
      margin: 0;
      padding: 0;
      display: grid;
      gap: 0.45rem;
    }

    .percurso-recognition .mer-journey__item {
      padding: 0.65rem 0.75rem;
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.9);
      border: 1px solid rgba(107, 75, 26, 0.1);
      border-left: 4px solid #8b6b3d;
    }

    .percurso-recognition .mer-journey__link {
      display: block;
      color: inherit;
      text-decoration: none;
    }

    .percurso-recognition .mer-journey__link:hover .mer-journey__title-text {
      color: #6b4b1a;
    }

    .percurso-recognition .mer-journey__when {
      display: block;
      margin-bottom: 0.15rem;
      font-size: 0.72rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.03em;
      color: var(--ink-muted);
    }

    .percurso-recognition .mer-journey__title-text {
      display: block;
      font-size: 0.88rem;
      font-weight: 700;
      color: var(--ink);
    }

    .percurso-recognition .mer-journey__detail {
      display: block;
      margin-top: 0.2rem;
      font-size: 0.78rem;
      line-height: 1.35;
      color: var(--ink-muted);
    }

    .percurso-step__title {
      margin: 0;
      font-size: 0.98rem;
      line-height: 1.25;
      color: var(--ink);
    }

    .percurso-step__detail {
      margin: 0.35rem 0 0;
      font-size: 0.84rem;
      line-height: 1.45;
      color: var(--ink-muted);
    }

    .percurso-step__actions {
      margin: 0.6rem 0 0;
    }

    .percurso-step__cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 2.2rem;
      padding: 0.35rem 0.9rem;
      border-radius: 999px;
      font-size: 0.82rem;
      font-weight: 700;
      text-decoration: none;
      color: #fff;
      background: var(--accent);
      border: 1px solid rgba(194, 93, 0, 0.25);
    }

    .percurso-step--info .percurso-step__cta {
      background: var(--ink-soft);
      border-color: rgba(92, 101, 115, 0.25);
    }

    .percurso-step--action .percurso-step__cta {
      background: var(--accent);
      border-color: rgba(194, 93, 0, 0.25);
    }

    .percurso-step--campaign .percurso-step__cta {
      background: var(--accent-campanhas);
      border-color: rgba(61, 143, 98, 0.25);
    }

    .percurso-step__cta:hover {
      filter: brightness(1.05);
    }

    .mer-help-block--percurso {
      padding: 0.85rem 0.95rem;
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.55);
      border: 1px solid var(--percurso-border);
    }

    .mer-help-block--percurso .mer-help-block__head {
      margin-bottom: 0.35rem;
    }

    .mer-help-block--percurso .mer-help-block__title {
      margin: 0;
      font-family: var(--font);
      font-size: 0.72rem;
      font-weight: 700;
      letter-spacing: 0.06em;
      text-transform: uppercase;
      color: var(--percurso-heading);
    }

    .percurso-opportunities .mer-help-block__lead,
    .percurso-opportunities .mer-help-block__empty {
      margin: 0.15rem 0 0;
      font-size: 0.84rem;
      line-height: 1.45;
      color: var(--ink-muted);
    }

    .percurso-opportunities .mer-help-block__more {
      margin: 0.55rem 0 0;
    }

    .percurso-opportunities .mer-help-block__more-link {
      font-size: 0.84rem;
      font-weight: 600;
      color: var(--accent-rede);
      text-decoration: none;
    }

    .percurso-opportunities .mer-help-block__more-link:hover {
      text-decoration: underline;
    }

    .percurso-opportunities .mer-opportunities__list--compact {
      margin-top: 0.15rem;
      gap: 0.55rem;
    }

    .percurso-opportunities .mer-opportunity {
      padding: 0.65rem 0.75rem;
      background: var(--percurso-surface);
    }

    .mer-opportunity--featured {
      box-shadow: 0 4px 14px rgba(107, 75, 26, 0.06);
    }

    .mer-opportunity__featured {
      display: inline-block;
      margin: 0 0 0.3rem;
      padding: 0.14rem 0.45rem;
      border-radius: 999px;
      font-size: 0.62rem;
      font-weight: 700;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: var(--percurso-heading);
      background: rgba(107, 75, 26, 0.1);
    }

    .mer-opportunity__preview {
      display: inline-block;
      margin: 0 0 0.3rem;
      padding: 0.14rem 0.45rem;
      border-radius: 999px;
      font-size: 0.62rem;
      font-weight: 700;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: var(--opp-mix);
      background: rgba(58, 124, 165, 0.12);
    }

    .mer-help-block--percurso a.mer-opportunity__cta,
    .mer-help-block--percurso a.mer-opportunity__cta--compact {
      color: #fff;
      text-decoration: none;
    }

    .mer-help-block--percurso a.mer-opportunity__cta:hover,
    .mer-help-block--percurso a.mer-opportunity__cta--compact:hover {
      color: #fff;
      filter: brightness(1.05);
    }

    .percurso-opportunities .mer-opportunity__cta--compact {
      min-height: 2rem;
      padding: 0.28rem 0.72rem;
      font-size: 0.76rem;
      border-radius: 999px;
    }

    .percurso-opportunities .mer-opportunity__cover {
      display: none;
    }

    .percurso-opportunities .mer-opportunity__title {
      font-size: 0.9rem;
    }

    .percurso-opportunities .mer-opportunity__subtitle,
    .percurso-opportunities .mer-opportunity__hook {
      font-size: 0.78rem;
      line-height: 1.35;
    }

    .percurso-opportunities .mer-opportunity__hook {
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      overflow: hidden;
    }

    .percurso-opportunities .mer-opportunity__tags {
      margin-top: 0.25rem;
    }

    .percurso-panel__foot {
      margin-top: auto;
      padding-top: 0.35rem;
      display: grid;
      gap: 0.75rem;
    }

    .percurso-trajectory {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 2.35rem;
      padding: 0.35rem 0.85rem;
      border-radius: 999px;
      font-size: 0.84rem;
      font-weight: 600;
      text-decoration: none;
      color: #6b4b1a;
      background: rgba(107, 75, 26, 0.07);
      border: 1px solid rgba(107, 75, 26, 0.14);
    }

    .percurso-trajectory:hover {
      background: rgba(107, 75, 26, 0.11);
    }

    .percurso-panel__links {
      display: flex;
      flex-wrap: wrap;
      gap: 0.45rem;
      align-items: center;
    }

    .percurso-intent-change {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 2.35rem;
      padding: 0.35rem 0.85rem;
      border-radius: 999px;
      font-size: 0.82rem;
      font-weight: 600;
      color: var(--ink-muted);
      background: transparent;
      border: 1px dashed rgba(107, 75, 26, 0.22);
      cursor: pointer;
    }

    .percurso-intent-change:hover {
      color: #6b4b1a;
      border-color: rgba(107, 75, 26, 0.35);
      background: rgba(107, 75, 26, 0.05);
    }

    .percurso-intent-change[hidden] {
      display: none !important;
    }

    .onboarding-intent-overlay {
      z-index: 120;
    }

    body.onboarding-intent-open {
      overflow: hidden;
    }

    .onboarding-intent {
      max-width: 520px;
    }

    .onboarding-intent__lead {
      margin: 0 0 1rem;
      font-size: 0.92rem;
      line-height: 1.5;
      color: var(--ink-muted);
    }

    .onboarding-intent__grid {
      display: grid;
      gap: 0.55rem;
    }

    .onboarding-intent__option {
      display: flex;
      align-items: flex-start;
      gap: 0.75rem;
      width: 100%;
      padding: 0.8rem 0.85rem;
      border-radius: 14px;
      border: 1px solid var(--border);
      background: #fff;
      text-align: left;
      cursor: pointer;
      transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
    }

    .onboarding-intent__option:hover {
      border-color: rgba(255, 150, 57, 0.45);
      box-shadow: 0 8px 22px rgba(255, 150, 57, 0.12);
      transform: translateY(-1px);
    }

    .onboarding-intent__option-icon {
      flex: 0 0 auto;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2.2rem;
      height: 2.2rem;
      border-radius: 999px;
      background: rgba(255, 150, 57, 0.12);
      color: #c45f00;
    }

    .onboarding-intent__option-icon .mer-icon {
      width: 1.15rem;
      height: 1.15rem;
    }

    .onboarding-intent__option-copy {
      display: grid;
      gap: 0.15rem;
      min-width: 0;
    }

    .onboarding-intent__option-title {
      font-size: 0.95rem;
      font-weight: 700;
      color: var(--ink);
    }

    .onboarding-intent__option-detail {
      font-size: 0.82rem;
      line-height: 1.45;
      color: var(--ink-muted);
    }

    .onboarding-intent__actions {
      margin: 0.85rem 0 0;
      text-align: center;
    }

    .onboarding-intent__skip {
      border: 0;
      background: transparent;
      color: var(--ink-muted);
      font-size: 0.84rem;
      font-weight: 600;
      cursor: pointer;
      text-decoration: underline;
      text-underline-offset: 0.15em;
    }

    .onboarding-intent__skip:hover {
      color: var(--ink);
    }

    .percurso-donate .donate-card {
      width: 100%;
      height: 5.5rem;
      min-height: 5.5rem;
      max-height: 5.5rem;
    }

    .percurso-donate .donate-card__btn {
      display: none;
    }

    .percurso-donate .donate-card__copy {
      right: 0.75rem;
      transform: translateY(-50%);
    }

    .percurso-donate .donate-card__title--wide,
    .percurso-donate .donate-card__desc--wide {
      display: none;
    }

    .percurso-donate .donate-card__title--compact,
    .percurso-donate .donate-card__desc--compact {
      display: block;
    }

    .percurso-donate .donate-card__title--compact {
      margin: 0 0 0.12rem;
      font-size: 1.02rem;
      line-height: 1.12;
    }

    .percurso-donate .donate-card__desc--compact {
      font-size: 0.72rem;
      font-weight: 500;
      line-height: 1.32;
    }

    .hub-rede-opportunities,
    .hub-rede-mural-feed {
      min-width: 0;
    }

    .hub-rede-opportunities {
      margin-bottom: 0.85rem;
    }

    .hub-campanha-reviews {
      margin: 0.85rem 0;
      padding-top: 0.75rem;
      border-top: 1px solid rgba(246, 214, 67, 0.35);
    }

    .hub-campanha-reviews__title {
      margin: 0 0 0.35rem;
      font-size: 1rem;
    }

    .hub-campanha-reviews__intro,
    .hub-campanha-reviews__progress,
    .hub-campanha-reviews__done {
      margin: 0 0 0.65rem;
      font-size: 0.88rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .hub-campanha-review-card {
      margin: 0 0 0.85rem;
      padding: 0.85rem;
      border-radius: 0.75rem;
      background: rgba(255, 255, 255, 0.55);
      border: 1px solid rgba(246, 214, 67, 0.3);
    }

    .hub-campanha-review-card__title {
      margin: 0 0 0.25rem;
      font-size: 0.95rem;
    }

    .hub-campanha-review-card__meta {
      margin: 0 0 0.65rem;
      font-size: 0.85rem;
    }

    .hub-campanha-review-criterion {
      margin: 0 0 0.55rem;
      padding: 0;
      border: none;
    }

    .hub-campanha-review-criterion__title {
      margin: 0 0 0.25rem;
      font-size: 0.82rem;
      font-weight: 600;
      color: var(--ink-soft);
    }

    .hub-campanha-review-options {
      display: flex;
      flex-wrap: wrap;
      gap: 0.65rem;
    }

    .hub-campanha-review-option {
      font-size: 0.82rem;
      color: var(--ink-soft);
      cursor: pointer;
    }

    .hub-campanha-reviewed-list {
      margin: 0.5rem 0 0;
      padding-left: 1.1rem;
      font-size: 0.82rem;
      color: var(--ink-muted);
    }

    .hub-campanha-my-progress {
      margin: 0 0 0.75rem;
      padding: 0.65rem 0.75rem;
      border-radius: 0.65rem;
      background: rgba(255, 255, 255, 0.45);
    }

    .hub-campanha-my-progress__title {
      margin: 0 0 0.35rem;
      font-size: 0.85rem;
      font-weight: 600;
    }

    .hub-campanha-my-progress__list {
      margin: 0;
      padding-left: 1rem;
      font-size: 0.82rem;
      color: var(--ink-soft);
    }

    .hub-campanha-my-progress__hint {
      margin: 0.45rem 0 0;
      font-size: 0.8rem;
      color: var(--ink-muted);
    }

    .hub-campanhas-mob-bar {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 0.75rem 1rem;
      margin-bottom: 1rem;
      padding: 0.85rem 1rem;
      border-radius: 14px;
      border: 1px solid rgba(61, 143, 98, 0.22);
      background: rgba(61, 143, 98, 0.08);
    }

    .hub-campanhas-mob-bar__text {
      margin: 0;
      flex: 1 1 12rem;
      font-size: 0.875rem;
      line-height: 1.45;
      color: var(--ink-soft);
    }

    .hub-campanhas-mob-bar--back {
      justify-content: flex-start;
      margin-bottom: 0.85rem;
      padding: 0;
      border: 0;
      background: transparent;
    }

    .hub-mobilizacao-host .mobilizacao-page {
      gap: 0.85rem;
    }

    .hub-campanhas-hero--mobilizacao .hub-campanhas-hero__surface {
      background:
        linear-gradient(135deg, rgba(61, 143, 98, 0.16), rgba(255, 150, 57, 0.08)),
        var(--hub-campanhas-hero-bg, #f4f7f2);
    }

    @media (min-width: 901px) {
      .tablet-main {
        min-width: 450px;
      }
    }

    .musicas-head {
      margin-bottom: 0.9rem;
    }

    .musicas-head__title {
      margin: 0;
      font-family: var(--font-display);
      font-size: clamp(1.65rem, 2.4vw, 2rem);
      line-height: 1.08;
      color: #6b4b1a;
    }

    .musicas-head__sub {
      margin: 0.2rem 0 0;
      color: var(--ink-soft);
      font-size: 0.95rem;
    }

    .musicas-toolbar {
      display: flex;
      gap: 0.65rem;
      margin-bottom: 0.85rem;
    }

    .musicas-search {
      flex: 1;
      display: flex;
      align-items: center;
      gap: 0.55rem;
      min-width: 0;
      padding: 0.62rem 0.9rem;
      border: 1px solid var(--border);
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.82);
      color: var(--ink-soft);
    }

    .musicas-search input {
      width: 100%;
      border: none;
      background: transparent;
      font: inherit;
      color: var(--ink);
      outline: none;
    }

    .musicas-search input::placeholder {
      color: #8a929e;
    }

    .musicas-search__icon {
      width: 1.1rem;
      height: 1.1rem;
      flex-shrink: 0;
      color: #8a929e;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }

    .musicas-search__icon svg {
      width: 100%;
      height: 100%;
      display: block;
    }

    .project-list {
      display: flex;
      flex-direction: column;
      gap: 0.7rem;
      overflow: auto;
      padding-bottom: 0.5rem;
      flex: 1;
      min-height: 0;
      list-style: none;
      margin: 0;
      padding-left: 0;
    }

    .project-row {
      position: relative;
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: 0.85rem;
      align-items: start;
      padding: 0.7rem;
      border: 1px solid var(--border);
      border-radius: 16px;
      background: rgba(255, 255, 255, 0.78);
      box-shadow: 0 2px 8px rgba(26, 35, 50, 0.03);
    }

    .project-row--openable {
      cursor: pointer;
    }

    .project-row--openable .project-row__heart,
    .project-row--openable .project-row__menu,
    .project-row--openable .project-row__select,
    .project-row--openable .project-row__indicator--action,
    .project-row--openable .project-row__thumb {
      cursor: pointer;
    }

    .project-row--openable:hover {
      border-color: rgba(124, 92, 191, 0.22);
      box-shadow: 0 4px 14px rgba(26, 35, 50, 0.06);
    }

    .music-card-integrated {
      list-style: none;
    }

    .music-card-integrated__shell {
      border: 1px solid var(--border);
      border-radius: 16px;
      background: rgba(255, 255, 255, 0.78);
      box-shadow: 0 2px 8px rgba(26, 35, 50, 0.03);
      overflow: hidden;
    }

    .music-card-integrated__shell > .project-row {
      border: none;
      border-radius: 0;
      box-shadow: none;
      background: transparent;
    }

    .member-list {
      display: flex;
      flex-direction: column;
      gap: 0.7rem;
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .member-card-integrated {
      list-style: none;
    }

    .member-card-integrated__shell {
      border: 1px solid var(--border);
      border-radius: 16px;
      background: rgba(255, 255, 255, 0.78);
      box-shadow: 0 2px 8px rgba(26, 35, 50, 0.03);
      overflow: hidden;
      transition: border-color 0.15s ease, box-shadow 0.15s ease;
    }

    .member-card-integrated__shell:hover {
      border-color: rgba(124, 92, 191, 0.24);
      box-shadow: 0 4px 14px rgba(26, 35, 50, 0.06);
    }

    .member-row {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr) auto;
      grid-template-areas:
        "thumb body aside"
        "foot foot foot";
      gap: 0.75rem;
      align-items: start;
      margin: 0;
    }

    .member-row__thumb {
      grid-area: thumb;
      flex-shrink: 0;
      width: 3.5rem;
      height: 3.5rem;
      padding: 0;
      border: none;
      border-radius: 50%;
      overflow: hidden;
      background: transparent;
      cursor: pointer;
      display: block;
      font: inherit;
    }

    .member-row__thumb:focus-visible {
      outline: 2px solid rgba(124, 92, 191, 0.35);
      outline-offset: 2px;
    }

    .member-row__thumb-image {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .member-row__thumb-empty {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      height: 100%;
      background: var(--c-laranja-soft, #fff0e6);
      color: var(--c-laranja-dark, #b45309);
    }

    .member-row__thumb-empty .mer-icon {
      width: 1.5rem;
      height: 1.5rem;
    }

    .member-row__body {
      grid-area: body;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 0.12rem;
    }

    .member-row__profile {
      width: 100%;
      margin: 0;
      padding: 0;
      border: none;
      background: transparent;
      cursor: pointer;
      text-align: left;
      font: inherit;
      color: inherit;
    }

    .member-row__profile:focus-visible {
      outline: 2px solid rgba(124, 92, 191, 0.35);
      outline-offset: 2px;
      border-radius: 8px;
    }

    .member-row__profile:active {
      background: rgba(255, 247, 237, 0.45);
      border-radius: 8px;
    }

    .member-row__head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 0.45rem;
      min-width: 0;
    }

    .member-row__name {
      display: block;
      margin: 0;
      font-size: 0.98rem;
      font-weight: 600;
      color: var(--ink);
      line-height: 1.25;
      min-width: 0;
    }

    .member-row__points {
      flex-shrink: 0;
      display: inline-flex;
      align-items: center;
      gap: 0.18rem;
      padding: 0.12rem 0.45rem;
      border-radius: 999px;
      background: rgba(124, 92, 191, 0.1);
      color: #5b3d8a;
      font-size: 0.72rem;
      font-weight: 700;
      font-variant-numeric: tabular-nums;
      line-height: 1.2;
    }

    .member-row__points-icon {
      width: 0.82rem;
      height: 0.82rem;
    }

    .member-row__location {
      display: block;
      margin: 0;
      font-size: 0.8125rem;
      color: var(--ink-soft);
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .member-row__skills {
      margin-top: 0.2rem;
      max-height: 3.15rem;
      overflow: hidden;
    }

    .member-row__skills .skill-pill--overflow {
      background: rgba(26, 35, 50, 0.06);
      color: var(--ink-soft);
      border-color: rgba(26, 35, 50, 0.08);
    }

    .member-row__chevron {
      flex-shrink: 0;
      align-self: center;
      color: var(--ink-soft);
    }

    .member-row__chevron .mer-icon {
      width: 1rem;
      height: 1rem;
      opacity: 0.55;
      display: block;
    }

    .member-row__aside {
      grid-area: aside;
      display: flex;
      align-items: center;
      justify-content: center;
      align-self: center;
    }

    .member-row__foot {
      grid-area: foot;
      border-top: 1px solid var(--border);
      padding: 0.45rem 0.65rem 0.55rem;
      background: #fff;
      display: flex;
      justify-content: flex-end;
    }

    .member-row__action {
      min-height: 2.25rem;
      margin: 0;
      padding: 0 0.85rem;
      font-size: 0.8125rem;
      white-space: nowrap;
    }

    .member-row__action:focus-visible {
      outline: 2px solid rgba(124, 92, 191, 0.35);
      outline-offset: 2px;
    }

    .member-row__action--friend-accepted:disabled,
    .member-row__action--friend-accepted[aria-disabled="true"] {
      color: #166534;
      background: rgba(22, 101, 52, 0.08);
      border-color: rgba(22, 101, 52, 0.18);
      opacity: 1;
      cursor: default;
    }

    .member-row__action--friend-pending:disabled,
    .member-row__action--friend-pending[aria-disabled="true"] {
      color: #92400e;
      background: rgba(146, 64, 14, 0.08);
      border-color: rgba(146, 64, 14, 0.16);
      opacity: 1;
      cursor: default;
    }

    .member-row__foot .member-row__action {
      width: auto;
      min-width: 7.5rem;
      max-width: 100%;
    }

    .member-list:not(.member-list--grid-ready) .member-row__foot .mer-btn-with-icon {
      max-width: 100%;
    }

    .member-list:not(.member-list--grid-ready) .member-row__foot .mer-btn-with-icon .mer-icon-label {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      max-width: calc(100vw - 11rem);
    }

    .member-card-integrated__shell > .member-row {
      padding: 0.7rem 0.85rem 0 0.7rem;
    }

    .hub-view--rede .member-list {
      flex: 0 0 auto;
      min-height: auto;
      overflow: visible;
    }

    .friend-list--integrated {
      margin-bottom: 0.1rem;
    }

    .friend-list--integrated + .rede-friends-subtitle {
      margin-top: 1rem;
    }

    .rede-friends-subtitle + .friend-list--integrated {
      margin-top: 0.35rem;
    }

    .friend-row {
      grid-template-columns: auto minmax(0, 1fr);
      grid-template-areas:
        "thumb body"
        "foot foot";
    }

    .friend-row .member-row__aside {
      display: none;
    }

    .friend-row__foot--dual {
      display: flex;
      gap: 0.4rem;
      justify-content: flex-end;
    }

    .friend-row__foot--dual .member-row__action {
      flex: 1 1 0;
      min-width: 0;
    }

    .friend-row--outgoing .member-row__foot .member-row__action {
      width: 100%;
    }

    .member-list--grid.member-list--grid-ready {
      display: grid;
      grid-template-columns: repeat(var(--music-grid-cols, 2), var(--music-grid-card-size, 15.625rem));
      justify-content: center;
      gap: 1rem;
      flex: none;
      overflow: visible;
    }

    .member-list--grid.member-list--grid-ready > .member-card-integrated {
      display: flex;
      flex-direction: column;
      min-width: 0;
      width: 100%;
      max-width: none;
    }

    .member-list--grid.member-list--grid-ready .member-card-integrated__shell {
      display: flex;
      flex-direction: column;
      width: 100%;
      max-width: 100%;
      height: 100%;
      flex: 1;
      padding: 0;
      transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
    }

    .member-list--grid.member-list--grid-ready .member-row {
      position: relative;
      display: block;
      flex: 1;
      min-height: 0;
      padding: 0;
    }

    .member-list--grid.member-list--grid-ready .member-row__thumb {
      width: 100%;
      max-width: none;
      height: auto;
      aspect-ratio: 1 / 1;
      border-radius: 0;
      display: block;
    }

    .member-list--grid.member-list--grid-ready .member-row__thumb:focus-visible {
      outline: 2px solid rgba(124, 92, 191, 0.45);
      outline-offset: -2px;
    }

    .member-list--grid.member-list--grid-ready .member-row__body {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 2;
      flex: none;
      min-width: 0;
      padding: 2.2rem 3.2rem 0.55rem 0.7rem;
      pointer-events: none;
      background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0.68) 34%,
        rgba(255, 255, 255, 0.97) 100%
      );
    }

    .member-list--grid.member-list--grid-ready .member-row__profile {
      pointer-events: auto;
    }

    .member-list--grid.member-list--grid-ready .member-row__profile:active {
      background: transparent;
    }

    .member-list--grid.member-list--grid-ready .member-row__head {
      margin-bottom: 0;
      pointer-events: none;
    }

    .member-list--grid.member-list--grid-ready .member-row__name {
      font-size: 0.92rem;
      line-height: 1.3;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
    }

    .member-list--grid.member-list--grid-ready .member-row__location {
      margin-top: 0.12rem;
      pointer-events: none;
    }

    .member-list--grid.member-list--grid-ready .member-row__skills {
      margin-top: 0.18rem;
      max-height: 1.55rem;
      flex-wrap: nowrap;
      overflow: hidden;
      pointer-events: none;
    }

    .member-list--grid.member-list--grid-ready .member-row__points {
      pointer-events: none;
    }

    .member-list--grid.member-list--grid-ready .member-row__aside {
      display: none;
    }

    .member-list--grid.member-list--grid-ready .member-row__foot {
      position: absolute;
      right: 0.45rem;
      bottom: 0.45rem;
      z-index: 4;
      grid-area: unset;
      border: none;
      padding: 0;
      background: transparent;
      pointer-events: auto;
    }

    .member-list--grid.member-list--grid-ready .member-row__foot .member-row__action {
      min-width: 2.75rem;
      min-height: 2.75rem;
      padding: 0 0.7rem;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.92);
      box-shadow: 0 1px 4px rgba(26, 35, 50, 0.12);
    }

    .member-list--grid.member-list--grid-ready .member-row__foot .member-row__action:disabled,
    .member-list--grid.member-list--grid-ready .member-row__foot .member-row__action[aria-disabled="true"] {
      opacity: 1;
    }

    .member-list--grid.member-list--grid-ready .member-row__foot .member-row__action--friend-accepted:disabled,
    .member-list--grid.member-list--grid-ready .member-row__foot .member-row__action--friend-accepted[aria-disabled="true"] {
      color: #166534;
      background: rgba(255, 255, 255, 0.94);
    }

    .member-list--grid.member-list--grid-ready .member-row__foot .member-row__action--friend-pending:disabled,
    .member-list--grid.member-list--grid-ready .member-row__foot .member-row__action--friend-pending[aria-disabled="true"] {
      color: #92400e;
      background: rgba(255, 255, 255, 0.94);
    }

    .member-list--grid.member-list--grid-ready .member-row__foot .mer-btn-with-icon {
      gap: 0;
      justify-content: center;
      min-width: 2.75rem;
      padding: 0;
    }

    .member-list--grid.member-list--grid-ready .member-row__foot .mer-btn-with-icon .mer-icon-label {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    .member-list--grid.member-list--grid-ready .member-row__foot .member-row__action:not(.mer-btn-with-icon) {
      font-size: 0.72rem;
      padding: 0 0.55rem;
      max-width: 6.5rem;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    @media (prefers-reduced-motion: reduce) {
      .member-card-integrated__shell,
      .member-list--grid.member-list--grid-ready .member-card-integrated__shell {
        transition: none;
      }
    }

    .group-list {
      display: flex;
      flex-direction: column;
      gap: 0.7rem;
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .group-card-integrated {
      list-style: none;
    }

    .group-card-integrated__shell {
      border: 1px solid var(--border);
      border-radius: 16px;
      background: rgba(255, 255, 255, 0.78);
      box-shadow: 0 2px 8px rgba(26, 35, 50, 0.03);
      overflow: hidden;
      transition: border-color 0.15s ease, box-shadow 0.15s ease;
    }

    .group-card-integrated__shell:hover {
      border-color: rgba(124, 92, 191, 0.24);
      box-shadow: 0 4px 14px rgba(26, 35, 50, 0.06);
    }

    .group-row {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr) auto;
      grid-template-areas:
        "thumb body aside"
        "foot foot foot";
      gap: 0.75rem;
      align-items: start;
      margin: 0;
    }

    .group-card-integrated__shell > .group-row {
      padding: 0.7rem 0.85rem 0 0.7rem;
    }

    .hub-view--rede .group-list {
      flex: 0 0 auto;
      min-height: auto;
      overflow: visible;
    }

    .group-row__thumb {
      grid-area: thumb;
      flex-shrink: 0;
      width: 3.5rem;
      height: 3.5rem;
      padding: 0;
      border: none;
      border-radius: 12px;
      overflow: hidden;
      background: transparent;
      cursor: pointer;
      display: block;
      font: inherit;
    }

    .group-row__thumb--static {
      cursor: default;
    }

    .group-row__thumb:focus-visible {
      outline: 2px solid rgba(124, 92, 191, 0.35);
      outline-offset: 2px;
    }

    .group-row__thumb-image {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .group-row__thumb-empty {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      height: 100%;
      background: var(--c-laranja-soft, #fff0e6);
      color: var(--c-laranja-dark, #b45309);
    }

    .group-row__thumb-empty .mer-icon {
      width: 1.5rem;
      height: 1.5rem;
    }

    .group-row__body {
      grid-area: body;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 0.12rem;
    }

    .group-row__profile {
      width: 100%;
      margin: 0;
      padding: 0;
      border: none;
      background: transparent;
      cursor: pointer;
      text-align: left;
      font: inherit;
      color: inherit;
    }

    .group-row__profile--static {
      cursor: default;
    }

    .group-row__profile:focus-visible {
      outline: 2px solid rgba(124, 92, 191, 0.35);
      outline-offset: 2px;
      border-radius: 8px;
    }

    .group-row__head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 0.45rem;
      min-width: 0;
    }

    .group-row__name {
      display: block;
      margin: 0;
      font-size: 0.98rem;
      font-weight: 600;
      color: var(--ink);
      line-height: 1.25;
      min-width: 0;
    }

    .group-row__meta {
      display: block;
      margin: 0;
      font-size: 0.8125rem;
      color: var(--ink-soft);
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .group-row__skills {
      margin-top: 0.2rem;
      max-height: 3.15rem;
      overflow: hidden;
    }

    .group-row__skills .skill-pill--overflow {
      background: rgba(26, 35, 50, 0.06);
      color: var(--ink-soft);
      border-color: rgba(26, 35, 50, 0.08);
    }

    .group-row__chevron {
      flex-shrink: 0;
      align-self: center;
      color: var(--ink-soft);
    }

    .group-row__chevron .mer-icon {
      width: 1rem;
      height: 1rem;
      opacity: 0.55;
      display: block;
    }

    .group-row__aside {
      grid-area: aside;
      display: flex;
      align-items: center;
      justify-content: center;
      align-self: center;
    }

    .group-row__foot {
      grid-area: foot;
      border-top: 1px solid var(--border);
      padding: 0.45rem 0.65rem 0.55rem;
      background: #fff;
      display: flex;
      justify-content: flex-end;
    }

    .group-row__action {
      min-height: 2.25rem;
      margin: 0;
      padding: 0 0.85rem;
      font-size: 0.8125rem;
      white-space: nowrap;
    }

    .group-row__action:focus-visible {
      outline: 2px solid rgba(124, 92, 191, 0.35);
      outline-offset: 2px;
    }

    .group-row__foot .group-row__action {
      width: auto;
      min-width: 7.5rem;
      max-width: 100%;
    }

    .group-row__badge {
      display: none;
    }

    .group-list--grid.group-list--grid-ready .group-row__badge {
      position: absolute;
      top: 0.45rem;
      left: 0.45rem;
      z-index: 3;
      display: inline-flex;
      align-items: center;
      padding: 0.16rem 0.48rem;
      border-radius: 999px;
      font-size: 0.68rem;
      font-weight: 700;
      line-height: 1.2;
      letter-spacing: 0.01em;
      box-shadow: 0 1px 4px rgba(26, 35, 50, 0.12);
      pointer-events: none;
    }

    .group-row__badge--public {
      color: #1e40af;
      background: rgba(255, 255, 255, 0.92);
      border: 1px solid rgba(37, 99, 235, 0.18);
    }

    .group-row__badge--private {
      color: #78350f;
      background: rgba(255, 255, 255, 0.92);
      border: 1px solid rgba(146, 64, 14, 0.16);
    }

    .group-row__badge--opening {
      color: #065f46;
      background: rgba(255, 255, 255, 0.92);
      border: 1px solid rgba(5, 150, 105, 0.18);
    }

    .group-row__action:disabled,
    .group-row__action[aria-disabled="true"] {
      opacity: 0.72;
      cursor: default;
    }

    .group-list--grid.group-list--grid-ready {
      display: grid;
      grid-template-columns: repeat(var(--music-grid-cols, 2), var(--music-grid-card-size, 15.625rem));
      justify-content: center;
      gap: 1rem;
      flex: none;
      overflow: visible;
    }

    .group-list--grid.group-list--grid-ready > .group-card-integrated {
      display: flex;
      flex-direction: column;
      min-width: 0;
      width: 100%;
      max-width: none;
    }

    .group-list--grid.group-list--grid-ready .group-card-integrated__shell {
      display: flex;
      flex-direction: column;
      width: 100%;
      max-width: 100%;
      height: 100%;
      flex: 1;
      padding: 0;
      transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
    }

    .group-list--grid.group-list--grid-ready .group-row {
      position: relative;
      display: block;
      flex: 1;
      min-height: 0;
      padding: 0;
    }

    .group-list--grid.group-list--grid-ready .group-row__thumb,
    .group-list--grid.group-list--grid-ready .group-row__thumb--static {
      width: 100%;
      max-width: none;
      height: auto;
      aspect-ratio: 1 / 1;
      border-radius: 0;
      display: block;
    }

    .group-list--grid.group-list--grid-ready .group-row__thumb:focus-visible {
      outline: 2px solid rgba(124, 92, 191, 0.45);
      outline-offset: -2px;
    }

    .group-list--grid.group-list--grid-ready .group-row__body {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 2;
      flex: none;
      min-width: 0;
      padding: 2.2rem 3.2rem 0.55rem 0.7rem;
      pointer-events: none;
      background: linear-gradient(
        180deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0.68) 34%,
        rgba(255, 255, 255, 0.97) 100%
      );
    }

    .group-list--grid.group-list--grid-ready .group-row__profile {
      pointer-events: auto;
    }

    .group-list--grid.group-list--grid-ready .group-row__profile:active {
      background: transparent;
    }

    .group-list--grid.group-list--grid-ready .group-row__head {
      margin-bottom: 0;
      pointer-events: none;
    }

    .group-list--grid.group-list--grid-ready .group-row__name {
      font-size: 0.92rem;
      line-height: 1.3;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
    }

    .group-list--grid.group-list--grid-ready .group-row__meta {
      margin-top: 0.12rem;
      pointer-events: none;
    }

    .group-list--grid.group-list--grid-ready .group-row__skills {
      margin-top: 0.18rem;
      max-height: 1.55rem;
      flex-wrap: nowrap;
      overflow: hidden;
      pointer-events: none;
    }

    .group-list--grid.group-list--grid-ready .group-row__aside {
      display: none;
    }

    .group-list--grid.group-list--grid-ready .group-row__foot {
      position: absolute;
      right: 0.45rem;
      bottom: 0.45rem;
      z-index: 4;
      grid-area: unset;
      border: none;
      padding: 0;
      background: transparent;
      pointer-events: auto;
    }

    .group-list--grid.group-list--grid-ready .group-row__foot .group-row__action {
      min-width: 2.75rem;
      min-height: 2.75rem;
      padding: 0 0.7rem;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.92);
      box-shadow: 0 1px 4px rgba(26, 35, 50, 0.12);
      font-size: 0.72rem;
      max-width: 6.5rem;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .group-list--grid.group-list--grid-ready .group-row__foot .group-row__action:disabled,
    .group-list--grid.group-list--grid-ready .group-row__foot .group-row__action[aria-disabled="true"] {
      opacity: 0.72;
      cursor: default;
    }

    @media (prefers-reduced-motion: reduce) {
      .group-card-integrated__shell,
      .group-list--grid.group-list--grid-ready .group-card-integrated__shell {
        transition: none;
      }
    }

    .music-card-integrated__player {
      border-top: 1px solid var(--border);
      padding: 0.35rem 0.75rem 0.5rem;
      background: #fff;
    }

    .music-card-integrated__audio {
      display: none;
    }

    .integrated-audio-ui {
      display: flex;
      align-items: center;
      gap: 0.55rem;
      min-height: 2.35rem;
      width: 100%;
    }

    .integrated-audio-ui__play {
      flex-shrink: 0;
      width: 2rem;
      height: 2rem;
      margin: 0;
      padding: 0;
      border: 0;
      border-radius: 999px;
      background: transparent;
      color: #1a2332;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
    }

    .integrated-audio-ui__play:focus-visible {
      outline: 2px solid rgba(232, 93, 44, 0.35);
      outline-offset: 2px;
    }

    .integrated-audio-ui__download {
      flex-shrink: 0;
      width: 2rem;
      height: 2rem;
      margin: 0;
      padding: 0;
      border: 0;
      border-radius: 999px;
      background: transparent;
      color: var(--ink-soft, #5a6573);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
    }

    .integrated-audio-ui__download:focus-visible {
      outline: 2px solid rgba(232, 93, 44, 0.35);
      outline-offset: 2px;
    }

    .integrated-audio-ui__download:disabled {
      opacity: 0.45;
      cursor: not-allowed;
    }

    .integrated-audio-ui__download-icon svg {
      width: 1rem;
      height: 1rem;
      display: block;
    }

    .integrated-audio-ui__play-icon svg {
      width: 1rem;
      height: 1rem;
      display: block;
    }

    .integrated-audio-ui__time {
      flex-shrink: 0;
      font-size: 0.78rem;
      font-variant-numeric: tabular-nums;
      color: #3d4659;
      white-space: nowrap;
    }

    .integrated-audio-ui__track {
      flex: 1;
      min-width: 0;
      height: 4px;
      border-radius: 999px;
      background: #d4d9e2;
      overflow: hidden;
    }

    .integrated-audio-ui__fill {
      width: 0;
      height: 100%;
      border-radius: inherit;
      background: #3d4659;
      transition: width 0.1s linear;
    }

    .music-card-integrated__audio-ui--idle .integrated-audio-ui__fill {
      width: 0 !important;
      transition: none;
    }

    .music-card-integrated__audio-ui--loading {
      opacity: 0.55;
      pointer-events: none;
    }

    .music-card-integrated__player--cloud {
      display: flex;
      align-items: center;
    }

    .music-card-integrated__cloud-import {
      width: 100%;
      min-height: 2.35rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.45rem;
      margin: 0;
      padding: 0.45rem 0.75rem;
      border: 1px dashed rgba(26, 35, 50, 0.14);
      border-radius: 10px;
      background: #fff;
      color: var(--ink-soft, #5a6478);
      font: inherit;
      font-size: 0.82rem;
      font-weight: 600;
      line-height: 1.2;
      cursor: pointer;
      transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
    }

    .music-card-integrated__cloud-import:hover {
      border-color: rgba(232, 93, 44, 0.45);
      color: var(--accent, #e85d2c);
      background: rgba(232, 93, 44, 0.04);
    }

    .music-card-integrated__cloud-import:focus-visible {
      outline: 2px solid rgba(232, 93, 44, 0.35);
      outline-offset: 2px;
    }

    .music-card-integrated__cloud-import-icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .music-card-integrated__cloud-import-icon .mer-icon {
      width: 1.1rem;
      height: 1.1rem;
    }

    .music-card-integrated__cloud-import-label {
      min-width: 0;
    }

    .music-card-integrated__storage-foot {
      border-top: 1px solid var(--border);
      padding: 0.45rem 0.75rem 0.55rem;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 0.45rem;
      background: rgba(255, 255, 255, 0.78);
    }

    .music-card-integrated__storage-note {
      flex: 1 1 100%;
      margin: 0;
      font-size: 0.78rem;
      color: var(--text-muted, #667);
      line-height: 1.35;
    }

    .hub-musicas-storage-device-list {
      margin-top: 0.35rem;
    }

    .hub-musicas-storage-list .hub-musicas-storage-device-list .music-card-integrated__storage-foot {
      flex-direction: column;
      align-items: stretch;
      gap: 0.35rem;
    }

    .hub-musicas-storage-list .hub-musicas-storage-device-list .music-card-integrated__storage-note {
      flex: none;
      width: 100%;
    }

    .hub-musicas-storage-list .hub-musicas-storage-device-list .music-card-integrated__storage-foot .storage-row__btn {
      width: 100%;
      min-height: 2.5rem;
    }

    .project-row__thumb--link {
      display: block;
      text-decoration: none;
      color: inherit;
    }

    .project-row__thumb {
      position: relative;
      width: 4.75rem;
      height: 4.75rem;
      aspect-ratio: 1;
      padding: 0;
      border: none;
      border-radius: 12px;
      overflow: hidden;
      cursor: pointer;
      background: #ddd;
      flex-shrink: 0;
    }

    .project-row__thumb img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .project-row__thumb--empty {
      background: linear-gradient(145deg, rgba(239, 108, 0, 0.18), rgba(255, 150, 57, 0.28));
    }

    .project-row__thumb--empty .project-row__thumb-icon {
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      color: rgba(255, 255, 255, 0.92);
      pointer-events: none;
    }

    .project-row__thumb--empty .project-row__thumb-icon .mer-icon {
      width: 1.65rem;
      height: 1.65rem;
      filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.18));
    }

    .project-row__thumb-icon {
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      color: rgba(255, 255, 255, 0.92);
      pointer-events: none;
    }

    .project-row__thumb-icon .mer-icon {
      width: 1.5rem;
      height: 1.5rem;
      filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.18));
    }

    .project-row__action {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2rem;
      height: 2rem;
      padding: 0;
      border: 1px solid var(--border);
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.9);
      color: var(--ink-soft);
      cursor: pointer;
    }

    .project-row__action svg {
      width: 1rem;
      height: 1rem;
    }

    .project-row__menu {
      position: static;
      top: auto;
      right: auto;
      z-index: 1;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2rem;
      height: 2rem;
      padding: 0;
      border: none;
      border-radius: 8px;
      background: transparent;
      color: rgba(26, 35, 50, 0.68);
      cursor: pointer;
      flex-shrink: 0;
    }

    .project-row__menu:hover,
    .project-row__menu:focus-visible {
      color: rgba(26, 35, 50, 0.88);
      background: rgba(26, 35, 50, 0.05);
    }

    .project-row__menu svg {
      width: 1.3rem;
      height: 1.3rem;
    }

    .hub-project-empty,
    .hub-cloud-guest {
      margin: 0.5rem 0 0;
      padding: 1rem 1.1rem;
      border-radius: 14px;
      border: 1px dashed rgba(26, 35, 50, 0.14);
      background: rgba(255, 255, 255, 0.72);
      color: var(--ink-soft);
      font-size: 0.92rem;
      line-height: 1.45;
    }

    .hub-cloud-guest__link {
      display: inline;
      padding: 0;
      border: none;
      background: none;
      font: inherit;
      font-weight: 600;
      color: var(--accent);
      text-decoration: underline;
      text-underline-offset: 0.12em;
      cursor: pointer;
    }

    .hub-cloud-guest__link:hover {
      color: var(--c-laranja-dark);
    }

    .tablet-profile__avatar:not([src]),
    .tablet-profile__avatar[src=""] {
      background: linear-gradient(145deg, var(--c-laranja), var(--c-laranja-dark));
      object-fit: cover;
    }

    .tablet-player__thumb--empty {
      display: block;
      width: 3rem;
      height: 3rem;
      border-radius: 10px;
      background: linear-gradient(145deg, rgba(239, 108, 0, 0.18), rgba(255, 150, 57, 0.28));
    }

    .project-row__play {
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      background: rgba(26, 35, 50, 0.18);
      color: #fff;
    }

    .project-row__play svg {
      width: 1.35rem;
      height: 1.35rem;
      filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.25));
    }

    .project-row__head {
      display: block;
      margin-bottom: 0.18rem;
    }

    .project-row__main {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      grid-template-rows: auto auto auto;
      column-gap: 0.45rem;
      row-gap: 0.12rem;
      align-items: center;
      min-width: 0;
    }

    .project-row__title {
      grid-column: 1;
      grid-row: 1;
      margin: 0;
      font-size: 1rem;
      font-weight: 700;
      color: var(--ink);
      min-width: 0;
    }

    .project-row__rail-slot--menu {
      grid-column: 2;
      grid-row: 1;
    }

    .project-row__meta-row {
      grid-column: 1;
      grid-row: 2;
      display: inline-flex;
      align-items: center;
      gap: 0.45rem;
      margin: 0;
      max-width: 100%;
      min-width: 0;
    }

    .project-row__rail-slot--heart {
      grid-column: 2;
      grid-row: 2;
    }

    .project-row__meta {
      margin: 0;
      font-size: 0.82rem;
      color: var(--ink-soft);
      line-height: 1.35;
      min-width: 0;
      flex-shrink: 0;
    }

    .project-row__meta-row .project-row__indicators {
      flex-shrink: 0;
    }

    .project-row__details {
      grid-column: 1;
      grid-row: 3;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 0.45rem 1rem;
      margin: 0;
      min-width: 0;
    }

    .project-row__details--empty {
      min-height: 0;
      padding: 0;
    }

    .project-row__rail-slot--avatars {
      grid-column: 2;
      grid-row: 3;
    }

    .project-row__rail-slot {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      justify-self: end;
      min-width: 2rem;
      pointer-events: auto;
    }

    .project-row__rail-spacer {
      display: block;
      width: 2rem;
      height: 0;
    }

    .project-row__rail-slot--avatars .avatar-stack {
      justify-content: flex-end;
    }

    .project-row__detail {
      display: inline-flex;
      align-items: center;
      gap: 0.32rem;
      font-size: 0.82rem;
      color: var(--ink-soft);
      line-height: 1.35;
      white-space: nowrap;
    }

    .project-row__detail-icon {
      display: inline-flex;
      flex-shrink: 0;
      color: var(--ink-soft);
      opacity: 0.82;
    }

    .project-row__detail-icon svg,
    .project-row__detail-icon-svg {
      width: 0.95rem;
      height: 0.95rem;
      display: block;
    }

    .project-row__time {
      margin: 0;
      font-size: 0.82rem;
      color: var(--ink-soft);
      line-height: 1.35;
    }

    .avatar-stack {
      display: flex;
      align-items: center;
      justify-content: flex-end;
    }

    .avatar-stack img {
      width: 1.65rem;
      height: 1.65rem;
      border-radius: 50%;
      object-fit: cover;
      border: 2px solid #fff;
      margin-left: -0.45rem;
      box-shadow: 0 1px 4px rgba(26, 35, 50, 0.12);
    }

    .avatar-stack img:first-child { margin-left: 0; }

    .avatar-stack__more {
      margin-left: 0.2rem;
      font-size: 0.75rem;
      font-weight: 700;
      color: var(--ink-soft);
      white-space: nowrap;
    }

    .avatar-stack__placeholder {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 1.65rem;
      height: 1.65rem;
      border-radius: 50%;
      border: 2px solid #fff;
      margin-left: -0.45rem;
      box-shadow: 0 1px 4px rgba(26, 35, 50, 0.12);
      background: linear-gradient(145deg, var(--c-laranja), var(--c-laranja-dark));
      color: #fff;
      flex-shrink: 0;
    }

    .avatar-stack__placeholder svg {
      width: 0.92rem;
      height: 0.92rem;
      display: block;
      color: #fff;
    }

    .avatar-stack__placeholder:first-child { margin-left: 0; }

    .project-row__stats {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 0.55rem;
      color: var(--ink-soft);
      font-size: 0.8rem;
      font-weight: 600;
    }

    .project-row__stats svg {
      width: 1rem;
      height: 1rem;
    }

    .project-row__heart {
      padding: 0;
      border: none;
      background: transparent;
      color: #c8ced6;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2rem;
      height: 2rem;
      flex-shrink: 0;
    }

    .project-row__heart--on {
      color: #e25555;
    }

    .project-list--grid.project-list--grid-ready {
      display: grid;
      grid-template-columns: repeat(var(--music-grid-cols, 2), var(--music-grid-card-size, 15.625rem));
      justify-content: center;
      gap: 1rem;
      flex: none;
      overflow: visible;
    }

    .project-list--grid.project-list--grid-ready > .music-card-integrated {
      display: flex;
      flex-direction: column;
      min-width: 0;
      width: 100%;
      max-width: none;
    }

    .project-list--grid.project-list--grid-ready .music-card-integrated__shell {
        display: flex;
        flex-direction: column;
        width: 100%;
        max-width: 100%;
        height: 100%;
        flex: 1;
        transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
      }

      .project-list--grid.project-list--grid-ready .project-row {
        position: relative;
        display: block;
        align-items: stretch;
        gap: 0;
        padding: 0;
        border: none;
        border-radius: 0;
        box-shadow: none;
        background: transparent;
        grid-template-columns: unset;
      }

      .project-list--grid.project-list--grid-ready .project-row:has(.project-row__select) {
        grid-template-columns: unset;
        padding-left: 0;
      }

      .project-list--grid.project-list--grid-ready .project-row:has(.project-row__select) .project-row__thumb,
      .project-list--grid.project-list--grid-ready .project-row:has(.project-row__select) .project-row__body {
        grid-column: unset;
      }

      .project-list--grid.project-list--grid-ready .project-row__select {
        position: absolute;
        top: 0.5rem;
        left: 0.5rem;
        z-index: 3;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 2.75rem;
        min-height: 2.75rem;
        padding: 0.35rem;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.92);
        box-shadow: 0 1px 4px rgba(26, 35, 50, 0.12);
      }

      .project-list--grid.project-list--grid-ready .project-row__select:has(.project-row__select-input:focus-visible) {
        outline: 2px solid rgba(232, 93, 44, 0.4);
        outline-offset: 1px;
      }

      .project-list--grid.project-list--grid-ready .project-row__select-input {
        width: 1.125rem;
        height: 1.125rem;
      }

      .project-list--grid.project-list--grid-ready .project-row__thumb {
        width: 100%;
        max-width: none;
        height: auto;
        aspect-ratio: 1 / 1;
        border-radius: 0;
        flex-shrink: 0;
      }

      .project-list--grid.project-list--grid-ready .project-row__thumb:focus-visible {
        outline: 2px solid rgba(232, 93, 44, 0.45);
        outline-offset: -2px;
      }

      .project-list--grid.project-list--grid-ready .project-row__menu {
        width: 2.75rem;
        height: 2.75rem;
        background: rgba(255, 255, 255, 0.92);
        box-shadow: 0 1px 4px rgba(26, 35, 50, 0.12);
      }

      .project-list--grid.project-list--grid-ready .project-row__rail-slot--menu .project-row__menu:focus-visible {
        outline: 2px solid rgba(232, 93, 44, 0.4);
        outline-offset: 1px;
      }

      .project-list--grid.project-list--grid-ready .project-row__body {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 2;
        flex: none;
        min-width: 0;
        padding: 2.35rem 0.55rem 0.55rem 0.7rem;
        pointer-events: none;
        background: linear-gradient(
          180deg,
          rgba(255, 255, 255, 0) 0%,
          rgba(255, 255, 255, 0.68) 34%,
          rgba(255, 255, 255, 0.97) 100%
        );
      }

      .project-list--grid.project-list--grid-ready .project-row__main {
        pointer-events: none;
      }

      .project-list--grid.project-list--grid-ready .project-row__title {
        font-size: 0.92rem;
        line-height: 1.3;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        color: var(--ink, #1a2332);
      }

      .project-list--grid.project-list--grid-ready .project-row__meta-row {
        flex-wrap: wrap;
      }

      .project-list--grid.project-list--grid-ready .project-row__meta {
        flex: 1 1 auto;
        min-width: 0;
        color: var(--ink-soft, #5a6573);
      }

      .project-list--grid.project-list--grid-ready .project-row__detail {
        color: var(--ink-soft, #5a6573);
      }

      .project-list--grid.project-list--grid-ready .project-row__detail-icon {
        color: var(--ink-soft, #5a6573);
      }

      .project-list--grid.project-list--grid-ready .project-row__indicator {
        box-shadow: none;
      }

      .project-list--grid.project-list--grid-ready .project-row__rail-slot {
        min-width: 2.75rem;
      }

      .project-list--grid.project-list--grid-ready .project-row__rail-spacer {
        width: 2.75rem;
      }

      .project-list--grid.project-list--grid-ready .project-row__rail-slot--avatars .avatar-stack img,
      .project-list--grid.project-list--grid-ready .project-row__rail-slot--avatars .avatar-stack__placeholder {
        width: 1.45rem;
        height: 1.45rem;
      }

      .project-list--grid.project-list--grid-ready .project-row__heart {
        min-width: 2.75rem;
        min-height: 2.75rem;
        align-items: center;
        justify-content: center;
        border-radius: 999px;
        color: #c8ced6;
      }

      .project-list--grid.project-list--grid-ready .project-row__heart--on {
        color: #e25555;
      }

      .project-list--grid.project-list--grid-ready .project-row__heart:focus-visible {
        outline: 2px solid rgba(232, 93, 44, 0.35);
        outline-offset: 1px;
      }

      .project-list--grid.project-list--grid-ready .music-card-integrated:has(.project-row--selected) .music-card-integrated__shell {
        background: rgba(255, 244, 232, 0.78);
        box-shadow:
          inset 0 0 0 1px rgba(232, 93, 44, 0.24),
          0 2px 8px rgba(26, 35, 50, 0.04);
      }

      .project-list--grid.project-list--grid-ready .music-card-integrated--playing .music-card-integrated__shell {
        border-color: rgba(232, 93, 44, 0.38);
      }

      .project-list--grid.project-list--grid-ready .music-card-integrated--paused .music-card-integrated__shell {
        border-color: rgba(26, 35, 50, 0.2);
      }

      .project-list--grid.project-list--grid-ready .music-card-integrated--loading .integrated-audio-ui {
        opacity: 0.55;
        pointer-events: none;
      }

      .project-list--grid.project-list--grid-ready .music-card-integrated--no-player .project-row__body {
        padding-bottom: 0.55rem;
      }

      .project-list--grid.project-list--grid-ready .music-card-integrated--cloud-import .music-card-integrated__player {
        padding: 0;
      }

      .project-list--grid.project-list--grid-ready .music-card-integrated--cloud-import .music-card-integrated__cloud-import {
        min-height: 2.75rem;
        border-radius: 0;
        border: none;
        border-top: 1px dashed rgba(26, 35, 50, 0.14);
      }

      .project-list--grid.project-list--grid-ready .integrated-audio-ui {
        gap: 0.45rem;
      }

      .project-list--grid.project-list--grid-ready .integrated-audio-ui__play {
        width: 2.75rem;
        height: 2.75rem;
      }

      .project-list--grid.project-list--grid-ready .integrated-audio-ui__download {
        width: 2.75rem;
        height: 2.75rem;
      }

      .project-list--grid.project-list--grid-ready .integrated-audio-ui__current,
      .project-list--grid.project-list--grid-ready .integrated-audio-ui__sep {
        display: none;
      }

      .project-list--grid.project-list--grid-ready .music-card-integrated--playing .integrated-audio-ui__fill {
        background: var(--accent, #ef6c00);
      }

      .project-list--grid.project-list--grid-ready .music-card-integrated__player {
        margin-top: auto;
        padding: 0.4rem 0.65rem 0.5rem;
      }

      .project-list--grid.project-list--grid-ready .music-card-integrated__storage-foot {
        margin-top: 0;
      }

      .project-list--grid.project-list--grid-ready .integrated-audio-ui__time {
        min-width: 0;
      }

    .project-list--grid.project-list--grid-ready .integrated-audio-ui__time {
      font-size: 0.72rem;
    }

    @media (min-width: 1100px) {
      .project-list--grid.project-list--grid-ready .integrated-audio-ui__current,
      .project-list--grid.project-list--grid-ready .integrated-audio-ui__sep {
        display: inline;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .integrated-audio-ui__fill,
      .project-list--grid.project-list--grid-ready .music-card-integrated__shell {
        transition: none !important;
      }
    }

    .tablet-dock {
      position: fixed;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 45;
      display: flex;
      flex-direction: column;
      width: 100%;
      border-top: 1px solid var(--border);
      background: var(--surface);
      overflow: visible;
      box-shadow: 0 -6px 28px rgba(26, 35, 50, 0.08);
    }

    .tablet-dock--player-collapsed {
      border-top: none;
    }

    .tablet-dock--player-collapsed .tablet-nav {
      border-top: 1px solid var(--border);
    }

    .tablet-player-shell {
      position: relative;
      flex-shrink: 0;
      background: var(--surface);
    }

    .tablet-player-tab {
      position: absolute;
      right: 0.7cm;
      bottom: calc(100% - 1px);
      z-index: 3;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.38rem;
      padding: 0.28rem 0.85rem 0.32rem;
      border: 1px solid var(--border);
      border-bottom-color: var(--surface);
      border-radius: 10px 10px 0 0;
      background: var(--surface);
      font: inherit;
      font-size: 0.68rem;
      font-weight: 600;
      color: var(--ink-soft);
      cursor: pointer;
      white-space: nowrap;
      transition: color 0.18s ease;
    }

    .tablet-player-tab:hover {
      color: var(--accent);
    }

    .tablet-player-tab__chev {
      width: 0.9rem;
      height: 0.9rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      color: var(--accent);
    }

    .tablet-player-tab__chev svg {
      width: 100%;
      height: 100%;
      display: block;
    }

    .tablet-player-shell--collapsed {
      height: 0;
      min-height: 0;
      overflow: visible;
      background: transparent;
      padding: 0;
      margin: 0;
      pointer-events: none;
    }

    .tablet-player-shell--collapsed .tablet-player-tab {
      bottom: 0;
      transform: none;
      border-bottom: none;
      border-radius: 10px 10px 0 0;
      pointer-events: auto;
    }

    @media (max-width: 449px) {
      .tablet-brand__text strong {
        white-space: normal;
        line-height: 1.12;
      }

      .tablet-brand__title-main,
      .tablet-brand__title-sub {
        display: block;
      }

      .tablet-brand__title-sub {
        margin-top: 0.02rem;
      }

      .tablet-player-tab {
        right: 0.2cm;
        gap: 0.28rem;
        padding: 0.26rem 0.52rem 0.3rem;
      }

      .tablet-player:not(.tablet-player--empty) {
        grid-template-columns: 45% 45% 10%;
        grid-template-rows: auto auto auto;
        align-items: start;
        gap: 0.18rem 0.3rem;
        padding: 0.42rem 0.52rem 0.38rem;
        max-height: none;
        min-height: 5rem;
      }

      .tablet-player:not(.tablet-player--empty) .tablet-player__track,
      .tablet-player:not(.tablet-player--empty) .tablet-player__meta,
      .tablet-player:not(.tablet-player--empty) .tablet-player__wave,
      .tablet-player:not(.tablet-player--empty) .tablet-player__progress {
        display: contents;
      }

      .tablet-player:not(.tablet-player--empty) .tablet-player__thumb {
        grid-column: 1;
        grid-row: 1;
        width: 2.15rem;
        height: 2.15rem;
      }

      .tablet-player:not(.tablet-player--empty) .tablet-player__title {
        grid-column: 1;
        grid-row: 2;
        font-size: 0.76rem;
        white-space: normal;
        max-width: 18ch;
      }

      .tablet-player:not(.tablet-player--empty).tablet-player--title-multiline {
        grid-template-rows: auto auto auto auto;
        min-height: 5.75rem;
      }

      .tablet-player:not(.tablet-player--empty).tablet-player--title-multiline .tablet-player__title {
        grid-row: 2 / 4;
      }

      .tablet-player:not(.tablet-player--empty).tablet-player--title-multiline .tablet-player__sub {
        grid-row: 4;
      }

      .tablet-player:not(.tablet-player--empty) .tablet-player__sub {
        grid-column: 1;
        grid-row: 3;
        margin-top: 0;
        font-size: 0.66rem;
      }

      .tablet-player:not(.tablet-player--empty) .tablet-player__controls {
        display: contents;
      }

      .tablet-player:not(.tablet-player--empty) .tablet-player__transport {
        grid-column: 2;
        grid-row: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.22rem;
        min-width: 0;
      }

      .tablet-player:not(.tablet-player--empty) .tablet-player__transport .tablet-player__btn {
        width: 1.85rem;
        height: 1.85rem;
      }

      .tablet-player:not(.tablet-player--empty) .tablet-player__transport .tablet-player__btn--main {
        width: 2.15rem;
        height: 2.15rem;
      }

      .tablet-player:not(.tablet-player--empty) .tablet-player__btn--list {
        grid-column: 3;
        grid-row: 1;
        justify-self: end;
        align-self: start;
        margin-left: 0;
        margin-right: 0.3rem;
        margin-top: 0.02rem;
      }

      .tablet-player--empty .tablet-player__controls {
        right: 0.52rem;
      }

      .tablet-player:not(.tablet-player--empty) .tablet-player__times {
        grid-column: 2;
        grid-row: 2;
        justify-content: flex-start;
        width: 100%;
        max-width: none;
      }

      .tablet-player:not(.tablet-player--empty) .tablet-player__bar {
        grid-column: 2;
        grid-row: 3;
        width: 100%;
        max-width: none;
      }
    }

    .tablet-player {
      position: relative;
      display: grid;
      grid-template-columns: minmax(0, 220px) 1fr auto;
      gap: 0.85rem;
      align-items: center;
      width: 100%;
      padding: 0.55rem 1.1rem 0.45rem;
      border-top: 1px solid var(--border);
      border-bottom: 1px solid rgba(26, 35, 50, 0.06);
      background:
        linear-gradient(180deg, rgba(255, 248, 240, 0.65) 0%, rgba(255, 255, 255, 0) 42%),
        var(--surface);
      overflow: hidden;
      max-height: 7.5rem;
      opacity: 1;
      transition: max-height 0.28s ease, opacity 0.22s ease, padding 0.28s ease, border-color 0.22s ease;
    }

    .tablet-player__body {
      display: contents;
    }

    .tablet-player--empty {
      grid-template-columns: 1fr;
      justify-items: center;
      align-content: start;
      align-items: start;
      text-align: center;
      padding: 0.5rem 1.1rem 1.15rem;
    }

    .tablet-player--empty .tablet-player__controls {
      position: absolute;
      top: 0.42rem;
      right: 0.55rem;
      z-index: 2;
    }

    .tablet-player--empty .tablet-player__controls .tablet-player__btn:not(.tablet-player__btn--list) {
      display: none;
    }

    .tablet-player--empty .tablet-player__track,
    .tablet-player--empty .tablet-player__wave,
    .tablet-player--empty .tablet-player__progress {
      display: none !important;
    }

    .tablet-player--blocked .tablet-player__wave {
      opacity: 0.45;
      pointer-events: none;
    }

    .tablet-player--blocked .tablet-player__controls .tablet-player__btn:not(.tablet-player__btn--list) {
      opacity: 0.45;
      pointer-events: none;
    }

    .tablet-player-shell--collapsed .tablet-player {
      display: none;
    }

    .tablet-player__btn--list {
      color: var(--accent);
      margin-left: 0.1rem;
    }

    .tablet-player__btn--list:hover,
    .tablet-player__btn--list:focus-visible {
      color: var(--c-laranja-dark);
      background: rgba(239, 108, 0, 0.08);
    }

    .tablet-player__btn--list svg {
      width: 1.15rem;
      height: 1.15rem;
    }

    .tablet-player__empty {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-start;
      gap: 0.1rem;
      width: 100%;
      max-width: 20rem;
      padding: 0 0.75rem 0.55rem;
      grid-column: 1 / -1;
    }

    .tablet-player__empty[hidden] {
      display: none !important;
    }

    .tablet-player__empty-icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 1.85rem;
      height: 1.85rem;
      border-radius: 999px;
      background: rgba(239, 108, 0, 0.1);
      color: var(--accent);
      margin-bottom: 0.12rem;
    }

    .tablet-player__empty-icon svg {
      width: 1.15rem;
      height: 1.15rem;
      display: block;
    }

    .tablet-player__empty-title {
      margin: 0;
      font-size: 0.78rem;
      font-weight: 700;
      line-height: 1.25;
      color: var(--ink);
    }

    .tablet-player__empty-sub {
      margin: 0;
      font-size: 0.58rem;
      line-height: 1.3;
      color: var(--ink-soft);
      max-width: 13rem;
    }

    .tablet-player__meta {
      min-width: 0;
    }

    .playlist-sheet-overlay {
      z-index: 70;
    }

    .playlist-sheet__head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.75rem;
      margin-bottom: 0.35rem;
    }

    .playlist-sheet__head h2 {
      margin: 0;
    }

    .playlist-sheet__close {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2rem;
      height: 2rem;
      padding: 0;
      border: none;
      border-radius: 999px;
      background: rgba(26, 35, 50, 0.06);
      color: var(--ink-soft);
      cursor: pointer;
    }

    .playlist-sheet__close svg {
      width: 1rem;
      height: 1rem;
    }

    .playlist-sheet-hint {
      margin: 0 0 0.65rem;
      font-size: 0.78rem;
      color: var(--ink-soft);
      line-height: 1.4;
    }

    .playlist-sheet-empty {
      margin: 0.5rem 0 1rem;
      font-size: 0.86rem;
      color: var(--ink-soft);
      line-height: 1.45;
      text-align: center;
    }

    .playlist-sheet-list {
      list-style: none;
      margin: 0 0 1rem;
      padding: 0;
      display: flex;
      flex-direction: column;
      gap: 0.45rem;
    }

    .playlist-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.5rem;
      padding: 0.55rem 0.6rem;
      border: 1px solid var(--border);
      border-radius: 12px;
      background: rgba(255, 255, 255, 0.88);
    }

    .playlist-row__main {
      display: flex;
      align-items: center;
      gap: 0.55rem;
      min-width: 0;
      flex: 1;
    }

    .playlist-row__thumb {
      width: 2.15rem;
      height: 2.15rem;
      border-radius: 8px;
      flex-shrink: 0;
      object-fit: cover;
    }

    .playlist-row__thumb--empty {
      background: linear-gradient(145deg, rgba(239, 108, 0, 0.18), rgba(255, 150, 57, 0.28));
    }

    .playlist-row__text {
      min-width: 0;
    }

    .playlist-row__title {
      margin: 0;
      font-size: 0.82rem;
      font-weight: 700;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .playlist-row__meta {
      margin: 0.12rem 0 0;
      font-size: 0.72rem;
      color: var(--ink-soft);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .playlist-row__actions {
      display: flex;
      align-items: center;
      gap: 0.2rem;
      flex-shrink: 0;
    }

    .playlist-row__move,
    .playlist-row__remove,
    .playlist-row__export {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 1.75rem;
      height: 1.75rem;
      padding: 0;
      border: none;
      border-radius: 8px;
      background: transparent;
      color: var(--ink-soft);
      cursor: pointer;
    }

    .playlist-row__move:disabled,
    .playlist-row__export:disabled {
      opacity: 0.35;
      cursor: default;
    }

    .playlist-row__move svg,
    .playlist-row__remove svg,
    .playlist-row__export svg {
      width: 0.95rem;
      height: 0.95rem;
      display: block;
    }

    .playlist-row__export {
      color: var(--accent);
    }

    .playlist-row__remove {
      color: #c44;
    }

    .playlist-sheet__export {
      margin-top: 0.85rem;
    }

    .playlist-sheet__export-all {
      width: 100%;
      margin: 0;
    }

    .playlist-sheet--exporting .playlist-sheet__export-all {
      opacity: 0.7;
    }

    .tablet-player__track {
      display: flex;
      align-items: center;
      gap: 0.6rem;
      min-width: 0;
    }

    .tablet-player__thumb {
      width: 2.5rem;
      height: 2.5rem;
      border-radius: 8px;
      object-fit: cover;
      flex-shrink: 0;
    }

    .tablet-player__title {
      margin: 0;
      font-size: 0.82rem;
      font-weight: 700;
      line-height: 1.25;
      min-width: 0;
      overflow: hidden;
      white-space: nowrap;
      text-overflow: ellipsis;
    }

    .tablet-player__sub {
      margin: 0.1rem 0 0;
      font-size: 0.72rem;
      color: var(--ink-soft);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .tablet-player__wave {
      min-width: 0;
    }

    .tablet-player__progress {
      position: absolute;
      left: 50%;
      top: 0.48rem;
      z-index: 1;
      transform: translateX(-50%);
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 0.22rem;
      width: min(5.5rem, calc((100vw - 13rem) / 2));
      max-width: 6rem;
      pointer-events: none;
    }

    .tablet-player__times {
      display: flex;
      align-items: baseline;
      justify-content: center;
      gap: 0.28rem;
      font-size: 0.72rem;
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }

    .tablet-player__time-cur {
      font-weight: 700;
      color: var(--ink);
    }

    .tablet-player__time-sep {
      color: rgba(26, 35, 50, 0.28);
      font-weight: 500;
    }

    .tablet-player__time-total {
      color: var(--ink-soft);
    }

    .tablet-player__bar {
      width: 100%;
      height: 5px;
      border-radius: 999px;
      background: rgba(26, 35, 50, 0.08);
      overflow: hidden;
    }

    .tablet-player__bar span {
      display: block;
      width: 0%;
      height: 100%;
      border-radius: inherit;
      background: linear-gradient(90deg, #ff9a3d, #ef6c00);
      transition: width 0.12s linear;
    }

    .tablet-player__controls {
      display: flex;
      align-items: center;
      gap: 0.35rem;
    }

    .tablet-player__transport {
      display: flex;
      align-items: center;
      gap: 0.35rem;
    }

    .tablet-player__btn {
      width: 2rem;
      height: 2rem;
      border: none;
      border-radius: 50%;
      background: transparent;
      color: var(--ink-soft);
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
    }

    .tablet-player__btn svg {
      width: 1.1rem;
      height: 1.1rem;
    }

    .tablet-player__btn--main {
      width: 2.35rem;
      height: 2.35rem;
      background: linear-gradient(145deg, #ff9a3d, #ef6c00);
      color: #fff;
      box-shadow: 0 2px 8px rgba(239, 108, 0, 0.28);
    }

    .tablet-player__btn--main:disabled {
      opacity: 0.45;
      box-shadow: none;
    }

    .tablet-player__btn--main svg {
      width: 1.2rem;
      height: 1.2rem;
    }

    .tablet-nav {
      --tablet-nav-fab-base: 2.35rem;
      --tablet-nav-fab-size: calc(var(--tablet-nav-fab-base) * 1.492);
      --tablet-nav-icon-size: calc(var(--tablet-nav-fab-base) * 0.85);
      position: relative;
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      align-items: end;
      width: 100%;
      padding: 0.35rem 0.85rem 0.42rem;
      overflow: visible;
    }

    .tablet-nav__item {
      position: relative;
      display: inline-flex;
      flex-direction: row;
      align-items: center;
      justify-content: center;
      gap: 0.28rem;
      padding: 0.55rem 0.12rem 0.32rem;
      border: none;
      background: transparent;
      color: var(--ink-soft);
      font: inherit;
      font-size: 0.6875rem;
      font-weight: 600;
      line-height: 1.1;
      cursor: pointer;
      min-width: 0;
      height: auto;
      align-self: end;
    }

    .tablet-nav__icon-wrap {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      width: var(--tablet-nav-icon-size);
      height: var(--tablet-nav-icon-size);
      color: inherit;
    }

    .tablet-nav__item--musicas.tablet-nav__item--active {
      color: #ef6c00;
    }

    .tablet-nav__item--rede.tablet-nav__item--active {
      color: #6b468b;
    }

    .tablet-nav__item--campanhas.tablet-nav__item--active {
      color: #4caf7a;
    }

    .tablet-nav__item--escola.tablet-nav__item--active {
      color: #4a90b8;
    }

    .tablet-nav__item--active::before {
      content: '';
      position: absolute;
      top: 0.1rem;
      left: 50%;
      transform: translateX(-50%);
      width: 75%;
      height: 2.5px;
      border-radius: 999px;
      background: currentColor;
    }

    .tablet-nav__icon-wrap svg,
    .tablet-nav__icon-svg {
      width: 100%;
      height: 100%;
      display: block;
      flex-shrink: 0;
      color: inherit;
    }

    .tablet-nav__label {
      white-space: nowrap;
      color: inherit;
    }

    .tablet-nav__fab-wrap {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-end;
      padding-bottom: 0;
      align-self: end;
      position: relative;
      z-index: 2;
    }

    .tablet-nav__fab {
      width: var(--tablet-nav-fab-size);
      height: var(--tablet-nav-fab-size);
      border: none;
      border-radius: 50%;
      background: var(--accent-gradient);
      color: #fff;
      box-shadow: var(--accent-glow);
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transform: translateY(calc(var(--tablet-nav-fab-base) * -0.55));
    }

    .tablet-nav__fab svg,
    .tablet-nav__fab .tablet-nav__icon-svg {
      width: calc(1.05rem * 1.492);
      height: calc(1.05rem * 1.492);
      stroke-width: 2.75;
    }

    .tablet-nav__fab-label {
      margin-top: calc(var(--tablet-nav-fab-base) * -0.492 + 0.05rem);
      font-size: 0.625rem;
      font-weight: 700;
      color: var(--accent);
      white-space: nowrap;
      line-height: 1.1;
    }

    .demo-wrap {
      max-width: none;
      margin: 0;
    }

    .hub-board {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 1rem;
      container-type: inline-size;
    }

    .hub-board__donate {
      grid-column: 1 / -1;
    }

    @media (max-width: 520px) {
      .tablet-sidebar {
        display: flex;
        flex-direction: column;
        overflow-y: auto;
        overscroll-behavior: contain;
      }

      .tablet-sidebar .percurso-panel {
        flex: 1 1 auto;
        min-height: 0;
      }

      .hub-board {
        flex: 1 1 auto;
        min-height: 0;
        grid-template-columns: 1fr;
        grid-template-rows: repeat(4, minmax(0, 1fr)) auto;
        gap: 0.65rem;
        align-content: stretch;
      }

      .hub-board > .hub-card {
        display: flex;
        flex-direction: row;
        align-items: stretch;
        aspect-ratio: unset;
        height: 100%;
        min-height: 3.35rem;
        border-radius: 16px;
      }

      .hub-board > .hub-card:hover,
      .hub-board > .hub-card:focus-visible {
        transform: none;
      }

      .hub-board > .hub-card .hub-card__art {
        position: relative;
        flex: 0 0 33.333%;
        width: 33.333%;
        height: auto;
        align-self: stretch;
        order: 1;
        inset: auto;
        border-radius: 16px 0 0 16px;
        overflow: hidden;
        background-size: cover;
        background-position: center;
      }

      .hub-board > .hub-card .hub-card__art::after {
        display: none;
      }

      .hub-board > .hub-card--musicas .hub-card__art::before {
        border-radius: 0;
      }

      .hub-board > .hub-card .hub-card__content {
        position: relative;
        flex: 1;
        display: flex;
        align-items: center;
        order: 2;
        inset: auto;
        min-width: 0;
      }

      .hub-board > .hub-card .hub-card__content::after {
        display: none;
      }

      .hub-board > .hub-card .hub-card__icon-wrap {
        display: none;
      }

      .hub-board > .hub-card .hub-card__text {
        position: relative;
        left: auto;
        bottom: auto;
        z-index: 1;
        padding: 0.55rem 0.85rem 0.55rem 0.7rem;
        max-width: none;
        width: 100%;
      }

      .hub-board > .hub-card .hub-card__text::before,
      .hub-board > .hub-card .hub-card__text-scrim {
        display: none;
      }

      .hub-board > .hub-card .hub-card__title {
        margin: 0 0 0.12rem;
        font-size: 1.02rem;
        line-height: 1.12;
        text-shadow: none;
      }

      .hub-board > .hub-card .hub-card__desc {
        font-size: 0.72rem;
        font-weight: 500;
        line-height: 1.32;
        text-shadow: none;
      }

      .hub-board > .hub-card .hub-card__desc br {
        display: inline;
      }

      .hub-board > .hub-card .hub-card__desc br::before {
        content: ' ';
      }

      .hub-board__donate {
        min-height: 0;
      }

      .hub-board__donate .donate-card {
        height: calc((100cqw - 1rem) / 4);
        min-height: 3.25rem;
        max-height: 5.5rem;
      }

      .hub-board__donate .donate-card__btn {
        display: none;
      }

      .hub-board__donate .donate-card__copy {
        right: 0.75rem;
        transform: translateY(-50%);
      }

      .hub-board__donate .donate-card__title {
        white-space: normal;
      }

      .hub-board__donate .donate-card__desc br {
        display: inline;
      }

      .hub-board__donate .donate-card__desc br::before {
        content: ' ';
      }
    }

    /* ── Hub Card (base) ──────────────────────────────────── */

    .hub-card {
      position: relative;
      display: block;
      width: 100%;
      aspect-ratio: 1;
      padding: 0;
      border: none;
      border-radius: 20px;
      overflow: hidden;
      cursor: pointer;
      text-align: left;
      background: var(--hub-card-base);
      box-shadow:
        inset 0 0 0 1px var(--hub-card-border),
        0 2px 6px rgba(26, 35, 50, 0.05),
        0 10px 28px var(--hub-card-shadow);
      transition: transform 0.18s ease, box-shadow 0.18s ease;
      container-type: inline-size;
    }

    .hub-card:hover,
    .hub-card:focus-visible {
      transform: translateY(-2px);
      outline: none;
      box-shadow:
        inset 0 0 0 1px var(--hub-card-border-hover),
        0 4px 10px rgba(26, 35, 50, 0.07),
        0 14px 34px var(--hub-card-shadow-hover);
    }

    .hub-card--musicas {
      --hub-card-base: #fdf8f2;
      --hub-card-border: rgba(232, 120, 32, 0.20);
      --hub-card-border-hover: rgba(232, 120, 32, 0.32);
      --hub-card-shadow: rgba(210, 140, 70, 0.13);
      --hub-card-shadow-hover: rgba(210, 140, 70, 0.18);
      --hub-icon-color: #ef6c00;
      --hub-title-color: #e87820;
      --hub-desc-color: #2a3140;
      --hub-scrim-a: rgba(253, 248, 242, 0.88);
      --hub-scrim-b: rgba(253, 248, 242, 0.72);
      --hub-scrim-c: rgba(253, 248, 242, 0.42);
      --hub-scrim-solid: rgba(253, 248, 242, 0.84);
      --hub-scrim-solid-mid: rgba(253, 248, 242, 0.48);
      --hub-art-image: url('../assets/hub-cards/musicas-bg.png');
    }

    .hub-card--escola {
      --hub-card-base: #f0f6fb;
      --hub-card-border: rgba(58, 124, 165, 0.22);
      --hub-card-border-hover: rgba(58, 124, 165, 0.34);
      --hub-card-shadow: rgba(58, 124, 165, 0.12);
      --hub-card-shadow-hover: rgba(58, 124, 165, 0.18);
      --hub-icon-color: #4a90b8;
      --hub-title-color: #2d6a9f;
      --hub-desc-color: #2a3140;
      --hub-scrim-a: rgba(240, 246, 252, 0.88);
      --hub-scrim-b: rgba(240, 246, 252, 0.72);
      --hub-scrim-c: rgba(240, 246, 252, 0.42);
      --hub-scrim-solid: rgba(240, 246, 252, 0.84);
      --hub-scrim-solid-mid: rgba(240, 246, 252, 0.48);
      --hub-art-image: url('../assets/hub-cards/escola-bg.png');
    }

    .hub-card--campanhas {
      --hub-card-base: #f5faf6;
      --hub-card-border: rgba(58, 124, 90, 0.22);
      --hub-card-border-hover: rgba(58, 124, 90, 0.34);
      --hub-card-shadow: rgba(58, 124, 90, 0.12);
      --hub-card-shadow-hover: rgba(58, 124, 90, 0.18);
      --hub-icon-color: #4caf7a;
      --hub-title-color: #2d6b47;
      --hub-desc-color: #2a3140;
      --hub-scrim-a: rgba(245, 250, 246, 0.88);
      --hub-scrim-b: rgba(245, 250, 246, 0.72);
      --hub-scrim-c: rgba(245, 250, 246, 0.42);
      --hub-scrim-solid: rgba(245, 250, 246, 0.84);
      --hub-scrim-solid-mid: rgba(245, 250, 246, 0.48);
      --hub-art-image: url('../assets/hub-cards/campanhas-bg.png');
    }

    .hub-card--rede {
      --hub-card-base: #f5effa;
      --hub-card-border: rgba(107, 70, 139, 0.22);
      --hub-card-border-hover: rgba(107, 70, 139, 0.34);
      --hub-card-shadow: rgba(107, 70, 139, 0.12);
      --hub-card-shadow-hover: rgba(107, 70, 139, 0.18);
      --hub-icon-color: #6b468b;
      --hub-title-color: #4a2d6e;
      --hub-desc-color: #322d3d;
      --hub-scrim-a: rgba(248, 242, 252, 0.88);
      --hub-scrim-b: rgba(248, 242, 252, 0.72);
      --hub-scrim-c: rgba(248, 242, 252, 0.42);
      --hub-scrim-solid: rgba(248, 242, 252, 0.84);
      --hub-scrim-solid-mid: rgba(248, 242, 252, 0.48);
      --hub-art-image: url('../assets/hub-cards/rede-bg.png');
    }

    .hub-card__art {
      position: absolute;
      inset: 0;
      background-color: var(--hub-card-base);
      background-image:
        linear-gradient(rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.15)),
        var(--hub-art-image);
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover;
      pointer-events: none;
    }

    .hub-card--musicas .hub-card__art {
      background-image: none;
    }

    .hub-card--musicas .hub-card__art::before {
      content: '';
      position: absolute;
      inset: 0;
      background-color: var(--hub-card-base);
      background-image:
        linear-gradient(rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.15)),
        var(--hub-art-image);
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover;
      transform: scaleX(-1);
      pointer-events: none;
    }

    .hub-card__content {
      position: absolute;
      inset: 0;
      z-index: 1;
    }

    .hub-card__art::after {
      content: '';
      position: absolute;
      inset: 0;
      background: radial-gradient(
        ellipse 102% 58% at -4% 104%,
        var(--hub-scrim-a) 0%,
        var(--hub-scrim-b) 40%,
        var(--hub-scrim-c) 58%,
        transparent 74%
      );
      pointer-events: none;
    }

    .hub-card__content::after {
      content: '';
      position: absolute;
      left: 0;
      right: auto;
      bottom: 0;
      width: 96cqi;
      height: 40cqi;
      background: radial-gradient(
        ellipse 100% 100% at 0% 100%,
        var(--hub-scrim-solid) 0%,
        var(--hub-scrim-solid-mid) 52%,
        transparent 80%
      );
      pointer-events: none;
      z-index: 1;
    }

    .hub-card__icon-wrap {
      position: absolute;
      top: 4cqi;
      left: 4cqi;
      width: 21cqi;
      height: 21cqi;
      z-index: 2;
    }

    .hub-card__icon-halo {
      position: absolute;
      inset: -45%;
      border-radius: 50%;
      background: radial-gradient(
        circle,
        rgba(255, 255, 255, 0.94) 0%,
        rgba(255, 255, 255, 0.55) 40%,
        transparent 72%
      );
      pointer-events: none;
    }

    .hub-card__icon {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      height: 100%;
      border-radius: 50%;
      background: #fff;
      box-shadow: 0 2px 10px rgba(26, 35, 50, 0.10);
      color: var(--hub-icon-color);
    }

    .hub-card__icon-svg {
      width: 10.5cqi;
      height: 10.5cqi;
      display: block;
    }

    .hub-card__text {
      position: absolute;
      left: 0;
      bottom: 0;
      z-index: 3;
      padding: 0 0 5.5cqi 4.5cqi;
      max-width: 68cqi;
    }

    .hub-card__text::before {
      content: '';
      position: absolute;
      left: -9cqi;
      right: -12cqi;
      top: -7cqi;
      bottom: -5cqi;
      border-radius: 58% 42% 38% 62% / 48% 52% 44% 56%;
      background: var(--hub-scrim-solid);
      opacity: 0.72;
      filter: blur(8px);
      z-index: 0;
    }

    .hub-card__text-scrim {
      position: absolute;
      left: -10%;
      right: -18%;
      top: -95%;
      bottom: -28%;
      background:
        radial-gradient(
          ellipse 132% 82% at 0% 100%,
          var(--hub-scrim-a) 0%,
          var(--hub-scrim-b) 46%,
          var(--hub-scrim-c) 66%,
          transparent 84%
        );
      pointer-events: none;
      z-index: 0;
      filter: blur(5px);
    }

    .hub-card__title {
      position: relative;
      z-index: 1;
      display: block;
      margin: 0 0 0.6125cqi;
      font-family: var(--font-display);
      font-size: 7.8cqi;
      font-weight: 700;
      line-height: 1.08;
      color: var(--hub-title-color);
      letter-spacing: -0.02em;
      text-shadow: 0 1px 14px var(--hub-scrim-solid), 0 0 3px var(--hub-scrim-b);
    }

    .hub-card__desc {
      position: relative;
      z-index: 1;
      display: block;
      margin: 0;
      font-family: var(--font);
      font-size: 4.62cqi;
      font-weight: 600;
      line-height: 1.45;
      color: var(--hub-desc-color);
      text-shadow: 0 1px 10px var(--hub-scrim-solid), 0 0 2px var(--hub-scrim-b);
    }

    /* ── Donate Card ─────────────────────────────────────── */

    .donate-card {
      position: relative;
      display: block;
      width: 100%;
      height: calc((100cqw - 1rem) / 4);
      min-height: 3.25rem;
      padding: 0;
      border: none;
      border-radius: 20px;
      overflow: hidden;
      cursor: pointer;
      text-align: left;
      font: inherit;
      background: #fdf2cf;
      container-type: inline-size;
      container-name: donate-card;
      box-shadow:
        inset 0 0 0 1px rgba(168, 120, 48, 0.14),
        0 2px 6px rgba(26, 35, 50, 0.05),
        0 10px 28px rgba(168, 120, 48, 0.10);
      transition: transform 0.18s ease, box-shadow 0.18s ease;
    }

    .donate-card:hover,
    .donate-card:focus-visible {
      transform: translateY(-2px);
      outline: none;
      box-shadow:
        inset 0 0 0 1px rgba(168, 120, 48, 0.22),
        0 4px 10px rgba(26, 35, 50, 0.07),
        0 14px 34px rgba(168, 120, 48, 0.14);
    }

    .donate-card::after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      width: 30%;
      background: linear-gradient(
        90deg,
        rgba(255, 252, 245, 0) 0%,
        rgba(255, 252, 245, 0.78) 48%,
        rgba(255, 252, 245, 0.95) 100%
      );
      pointer-events: none;
      z-index: 0;
    }

    .donate-card__art {
      position: absolute;
      inset: 0;
      z-index: 0;
      background-color: #fdf2cf;
      background-image:
        linear-gradient(rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.08)),
        url('../assets/hub-cards/doacao-bg.png');
      background-repeat: no-repeat;
      background-position: left center;
      background-size: auto 118%;
      pointer-events: none;
    }

    .donate-card__copy {
      position: absolute;
      z-index: 1;
      left: 31%;
      top: 50%;
      right: max(19cqi, 4.25rem);
      transform: translateY(-52%);
      min-width: 0;
    }

    .donate-card__title {
      margin: 0 0 0.08em;
      font-family: var(--font-display);
      font-size: clamp(0.56rem, 3.85cqi, 1.4rem);
      font-weight: 700;
      line-height: 1.1;
      color: #6b4b1a;
      white-space: nowrap;
    }

    .donate-card__desc {
      display: block;
      margin: 0;
      font-family: var(--font);
      font-size: clamp(0.4rem, 2.44cqi, 1.05rem);
      font-weight: 500;
      line-height: 1.26;
      color: #6b4b1a;
    }

    .donate-card__title--compact,
    .donate-card__desc--compact {
      display: none;
    }

    @media (max-width: 520px) {
      .donate-card__title--wide,
      .donate-card__desc--wide {
        display: none;
      }

      .donate-card__title--compact,
      .donate-card__desc--compact {
        display: block;
      }

      .donate-card__title--compact {
        margin: 0 0 0.12rem;
        font-size: 1.02rem;
        line-height: 1.12;
      }

      .donate-card__desc--compact {
        font-size: 0.72rem;
        font-weight: 500;
        line-height: 1.32;
      }
    }

    .donate-card__btn {
      position: absolute;
      z-index: 2;
      right: max(1.2cqi, 0.45rem);
      bottom: max(1.4cqi, 0.35rem);
      margin: 0;
      padding: max(0.75cqi, 0.28rem) max(1.85cqi, 0.65rem);
      border: none;
      border-radius: 999px;
      background: #c4863f;
      color: #fff;
      font-family: var(--font-display);
      font-size: clamp(0.5rem, 2.25cqi, 0.95rem);
      font-weight: 700;
      line-height: 1.15;
      white-space: nowrap;
      pointer-events: none;
      box-shadow: 0 2px 8px rgba(140, 88, 28, 0.22);
      transition: background 0.18s ease;
    }

    @container donate-card (max-width: 380px) {
      .donate-card__copy {
        left: 30%;
        right: max(20cqi, 3.75rem);
        transform: translateY(-50%);
      }

      .donate-card__desc {
        line-height: 1.22;
      }

      .donate-card__btn {
        padding: max(0.65cqi, 0.24rem) max(1.6cqi, 0.55rem);
      }
    }

    @container donate-card (max-width: 300px) {
      .donate-card__copy {
        left: 29%;
        right: max(21cqi, 3.35rem);
      }

      .donate-card__title {
        white-space: normal;
        max-width: 11.5em;
      }
    }

    .donate-card:hover .donate-card__btn,
    .donate-card:focus-visible .donate-card__btn {
      background: #b67a35;
    }

    /* Mobile: rolagem da página inteira quando o conteúdo excede a viewport */
    @media (max-width: 900px) {
      .tablet-body {
        display: flex;
        flex-direction: column;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-y: contain;
      }

      .hub-view {
        flex: 0 0 auto;
        min-height: auto;
        overflow: visible;
      }

      .hub-musicas-root,
      .hub-rede-root,
      .hub-campanhas-root,
      .hub-escola-root {
        flex: 0 0 auto;
        min-height: auto;
        overflow: visible;
      }

      .hub-view--musicas .project-list {
        flex: 0 0 auto;
        min-height: auto;
        overflow: visible;
      }

      .tablet-main {
        flex: 0 0 auto;
        width: 100%;
        min-width: 0;
        max-width: none;
        height: auto;
        min-height: auto;
        overflow: visible;
        grid-column: unset;
        grid-row: unset;
        padding: 0 0.85rem 0.5rem;
        border-top: 1px solid var(--border);
      }

      .tablet-shell--section-musicas .tablet-main {
        display: contents;
        padding: 0;
        border-top: none;
      }

      .tablet-shell--section-musicas .hub-view--musicas:not([hidden]) {
        display: contents;
      }

      .tablet-shell--section-musicas .hub-view--musicas > .hub-section-hero {
        order: -1;
      }

      .tablet-shell--section-musicas .hub-view--musicas > .hub-musicas-root {
        order: 1;
        padding: 0 0.85rem 0.5rem;
        border-top: none;
      }

      .hub-section-hero,
      .hub-rede-hero {
        margin: 0 -0.85rem 0.75rem;
      }

      .hub-section-hero__surface,
      .hub-rede-hero__surface {
        padding-inline: 0.85rem;
      }

      .tablet-shell--section-musicas .hub-view--musicas > .hub-section-hero {
        margin: 0 0 0.75rem;
      }

      .hub-rede-back {
        left: 0.85rem;
      }

      .hub-accordion--summary .hub-stats {
        margin-bottom: 0;
      }

      .hub-accordion__panel--cloud .home-cloud-card {
        flex-direction: column;
        align-items: stretch;
        gap: 0.65rem;
      }

      .hub-accordion__panel--cloud .home-cloud-card > .home-cloud-card-icon:first-child {
        display: none;
      }

      .hub-accordion__panel--cloud .home-cloud-card-text strong {
        display: none;
      }

      .hub-accordion__panel--cloud .home-cloud-card-badge {
        align-self: flex-start;
      }

      .hub-accordion__panel--cloud .hub-cloud-btn {
        width: 100%;
      }

      .tablet-nav .tablet-nav__item {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-end;
        gap: 0.18rem;
        width: 100%;
        padding: 0.34rem 0.08rem 0.22rem;
        font-size: 0.515rem;
        text-align: center;
      }

      .tablet-nav .tablet-nav__label {
        width: 100%;
        text-align: center;
        line-height: 1.05;
        white-space: normal;
      }
    }

    body > .status-toast {
      z-index: 70;
      bottom: calc(var(--dock-height, 7.5rem) + var(--safe-bottom, 0px) + 0.75rem);
    }

    .tablet-player-tab__label,
    .tablet-player-tab__chev {
      pointer-events: none;
    }

    .tablet-shell .tablet-topbar {
      padding-top: calc(0.85rem + var(--safe-top, 0px));
    }

    .tablet-shell .tablet-dock {
      padding-bottom: var(--safe-bottom, 0px);
    }

    /* ---- Editor integrado no hub ---- */

    .hub-editor-host {
      display: none;
      flex-direction: column;
      min-height: 0;
      min-width: 0;
      overflow: hidden;
      background: var(--bg, #fff9f3);
      flex: 1;
    }

    .tablet-shell--editor .hub-editor-host:not([hidden]) {
      display: flex;
    }

    .hub-editor-head {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      padding: 0.55rem 0.75rem 0.45rem;
      border-bottom: 1px solid var(--border, #eadfce);
      flex-shrink: 0;
    }

    .hub-editor-back {
      width: 2.25rem;
      height: 2.25rem;
      border: none;
      border-radius: 10px;
      background: var(--c-laranja-soft, #fff1e3);
      color: var(--c-laranja-dark, #b85c00);
      cursor: pointer;
      flex-shrink: 0;
    }

    .hub-editor-head__title {
      font-weight: 600;
      color: #6b4b1a;
    }

    .hub-editor-host--editor .hub-editor-head,
    .hub-editor-host--account .hub-editor-head {
      display: none;
    }

    .hub-editor-host--account .hub-editor-root:has(.profile-layout--guest) {
      padding-top: 0.35rem;
    }

    .hub-editor-host--account .hub-editor-root {
      padding-top: 0.65rem;
    }

    .hub-editor-root .btn-editor-hub-back {
      width: 2.25rem;
      height: 2.25rem;
      flex-shrink: 0;
      border: none;
      border-radius: 10px;
      background: var(--c-laranja-soft, #fff1e3);
      color: var(--c-laranja-dark, #b85c00);
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0;
    }

    .hub-editor-root .btn-editor-hub-back svg {
      width: 1.1rem;
      height: 1.1rem;
      display: block;
    }

    .hub-editor-root {
      flex: 1;
      min-height: 0;
      overflow: auto;
      padding: 0 0.65rem 0.75rem;
    }

    .tablet-shell--editor .tablet-main > .hub-view,
    .tablet-shell--editor .tablet-dock {
      display: none !important;
    }

    .tablet-shell--editor .tablet-body {
      grid-template-columns: minmax(0, 1fr);
      padding-bottom: 0;
    }

    .tablet-shell--editor .tablet-main {
      grid-column: 1;
      min-height: 0;
      display: flex;
      flex-direction: column;
    }

    body:has(.tablet-shell--editor) > .status-toast {
      bottom: calc(var(--safe-bottom, 0px) + 0.75rem);
    }

    .hub-editor-root .profile-head-actions {
      margin: 0.35rem 0 0;
    }

    .hub-editor-root .profile-page,
    .hub-editor-root .skills-page {
      max-width: none;
    }

    @media (min-width: 900px) {
      .hub-editor-root {
        padding: 0 1rem 0.85rem;
      }
    }

    .jam-details-overlay {
      z-index: 1200;
      align-items: flex-end;
      padding: 0;
    }

    .jam-details-box {
      width: min(100%, 32rem);
      max-height: min(94vh, 46rem);
      display: flex;
      flex-direction: column;
      background: var(--surface, #fff);
      border: 1px solid rgba(26, 35, 50, 0.1);
      border-radius: 16px 16px 0 0;
      box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
      overflow: hidden;
    }

    .jam-details-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.75rem;
      padding: 1rem 1rem 0.5rem;
      flex-shrink: 0;
    }

    .jam-details-head h2 {
      margin: 0;
      font-size: 1.05rem;
      color: var(--ink);
    }

    .jam-details-close {
      width: 2rem;
      height: 2rem;
      padding: 0;
      border: none;
      border-radius: 999px;
      background: transparent;
      color: var(--ink-soft);
      font-size: 1.45rem;
      line-height: 1;
      cursor: pointer;
      flex-shrink: 0;
    }

    .jam-details-close:hover,
    .jam-details-close:focus-visible {
      background: rgba(255, 150, 57, 0.14);
      color: var(--c-laranja-dark, #c2410c);
    }

    .jam-details-body {
      flex: 1 1 auto;
      overflow-y: auto;
      padding: 0.35rem 1rem 1rem;
      -webkit-overflow-scrolling: touch;
    }

    .jam-details-field {
      display: block;
      margin-bottom: 1.1rem;
    }

    .jam-details-field > span {
      display: block;
      margin-bottom: 0.4rem;
      font-size: 0.82rem;
      font-weight: 600;
      color: var(--ink);
    }

    .jam-details-field input[type="text"] {
      width: 100%;
      box-sizing: border-box;
      padding: 0.6rem 0.7rem;
      border: 1px solid rgba(26, 35, 50, 0.14);
      border-radius: 10px;
      font: inherit;
      background: #fff;
    }

    .jam-details-field input[type="text"]:focus {
      outline: 2px solid rgba(234, 88, 12, 0.28);
      outline-offset: 1px;
    }

    .jam-details-cover-row {
      display: flex;
      align-items: flex-start;
      gap: 0.85rem;
    }

    .jam-details-cover-preview {
      position: relative;
      width: 4.75rem;
      height: 4.75rem;
      flex-shrink: 0;
      padding: 0;
      border: 1px dashed rgba(26, 35, 50, 0.18);
      border-radius: 12px;
      overflow: hidden;
      cursor: pointer;
      background: linear-gradient(145deg, rgba(239, 108, 0, 0.12), rgba(255, 150, 57, 0.22));
    }

    .jam-details-cover-preview:focus-visible {
      outline: 2px solid rgba(234, 88, 12, 0.35);
      outline-offset: 2px;
    }

    .jam-details-cover-preview img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .jam-details-cover-empty {
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      pointer-events: none;
    }

    .jam-details-cover-empty[hidden] {
      display: none !important;
    }

    .jam-details-cover-empty-icon .mer-icon {
      width: 1.85rem;
      height: 1.85rem;
      color: rgba(255, 255, 255, 0.94);
      filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.16));
    }

    .jam-details-cover-meta {
      flex: 1;
      min-width: 0;
      padding-top: 0.15rem;
    }

    .jam-details-cover-hint,
    .jam-details-cover-note {
      margin: 0 0 0.35rem;
      font-size: 0.78rem;
      line-height: 1.35;
      color: var(--ink-soft);
    }

    .jam-details-cover-note {
      font-size: 0.72rem;
      opacity: 0.92;
    }

    .jam-details-cover-remove {
      padding: 0;
      border: none;
      background: none;
      color: var(--c-laranja-dark, #c2410c);
      font: inherit;
      font-size: 0.82rem;
      font-weight: 600;
      cursor: pointer;
      text-decoration: underline;
      text-underline-offset: 2px;
    }

    .jam-details-desc-hint {
      margin: 0 0 0.5rem;
      font-size: 0.78rem;
      color: var(--ink-soft);
      line-height: 1.35;
    }

    .jam-details-inventory {
      margin: 0;
      padding: 0.55rem 0.65rem;
      background: #f0f7ff;
      border: 1px solid rgba(59, 129, 238, 0.18);
      border-radius: 8px;
      font-size: 0.8125rem;
      line-height: 1.45;
      color: var(--ink);
    }

    .jam-details-inventory__label {
      font-weight: 600;
      color: #2563eb;
    }

    .jam-details-inventory--empty {
      background: rgba(26, 35, 50, 0.04);
      border-color: rgba(26, 35, 50, 0.1);
      color: var(--ink-soft);
      font-size: 0.78rem;
    }

    .jam-details-style-hint {
      margin: 0 0 0.45rem;
      font-size: 0.78rem;
      color: var(--ink-soft);
      line-height: 1.35;
    }

    .jam-details-style-unavail {
      margin: 0;
      font-size: 0.78rem;
      color: var(--ink-soft);
    }

    .jam-details-style .tag-picker {
      margin-top: 0.15rem;
    }

    .jam-details-editor-box {
      border: 1px solid rgba(26, 35, 50, 0.14);
      border-radius: 10px;
      background: #fff;
      overflow: hidden;
    }

    .jam-details-editor-box:focus-within {
      outline: 2px solid rgba(234, 88, 12, 0.28);
      outline-offset: 1px;
    }

    .jam-details-toolbar {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 0.2rem;
      margin: 0;
      padding: 0.35rem 0.4rem;
      border-bottom: 1px solid rgba(26, 35, 50, 0.08);
      background: rgba(26, 35, 50, 0.025);
    }

    .jam-details-tool {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.25rem;
      min-width: 2rem;
      height: 2rem;
      padding: 0 0.45rem;
      border: none;
      border-radius: 6px;
      background: transparent;
      color: var(--ink);
      cursor: pointer;
      font: inherit;
    }

    .jam-details-tool .mer-icon {
      width: 1.1rem;
      height: 1.1rem;
    }

    .jam-details-tool--labeled span {
      font-size: 0.74rem;
      font-weight: 600;
    }

    .jam-details-tool--text {
      font-size: 0.9rem;
      font-weight: 700;
    }

    .jam-details-tool--active {
      background: rgba(255, 150, 57, 0.22);
      color: var(--c-laranja-dark, #c2410c);
    }

    .jam-details-tool:hover,
    .jam-details-tool:focus-visible {
      background: rgba(26, 35, 50, 0.06);
    }

    .jam-details-link-pop {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 0.4rem;
      margin: 0;
      padding: 0.5rem 0.55rem;
      border-bottom: 1px solid rgba(26, 35, 50, 0.08);
      background: rgba(255, 150, 57, 0.06);
    }

    .jam-details-link-pop[hidden] {
      display: none !important;
    }

    .jam-details-link-pop input {
      flex: 1 1 10rem;
      min-width: 0;
      padding: 0.45rem 0.55rem;
      border: 1px solid rgba(26, 35, 50, 0.14);
      border-radius: 8px;
      font: inherit;
    }

    .jam-details-link-apply {
      padding: 0.45rem 0.75rem;
      font-size: 0.85rem;
    }

    .jam-details-link-cancel {
      padding: 0.45rem 0.5rem;
      border: none;
      background: none;
      color: var(--ink-soft);
      font: inherit;
      font-size: 0.82rem;
      cursor: pointer;
    }

    .jam-details-editor {
      min-height: 14rem;
      padding: 0.75rem 0.8rem;
      border: none;
      border-radius: 0;
      background: #fff;
      line-height: 1.45;
      font-size: 0.92rem;
    }

    .jam-details-editor:empty::before {
      content: attr(data-placeholder);
      color: var(--ink-soft);
      pointer-events: none;
    }

    .jam-details-editor:focus {
      outline: none;
    }

    .jam-details-editor a {
      color: #c2410c;
      text-decoration: underline;
    }

    .jam-details-foot {
      flex-shrink: 0;
      padding: 0.75rem 1rem calc(0.85rem + env(safe-area-inset-bottom, 0px));
      border-top: 1px solid rgba(26, 35, 50, 0.08);
      background: var(--surface, #fff);
    }

    .jam-details-actions {
      display: flex;
      justify-content: stretch;
      align-items: stretch;
      gap: 0.55rem;
    }

    .jam-details-actions .btn {
      flex: 1;
      margin-top: 0;
    }

    .jam-details-btn-cancel {
      background: #fff;
      color: var(--ink);
      border: 1px solid rgba(26, 35, 50, 0.16);
      box-shadow: none;
    }

    .jam-details-btn-cancel:hover,
    .jam-details-btn-cancel:focus-visible {
      background: rgba(26, 35, 50, 0.04);
    }

    .jam-details-actions .btn-primary {
      min-width: 0;
    }

    @media (min-width: 640px) {
      .jam-details-overlay {
        align-items: center;
        padding: 1rem;
      }

      .jam-details-box {
        border-radius: 16px;
      }
    }

    /* Painel de prestação de contas (aba Apoiar) */
    .hub-impact {
      max-width: var(--hub-campanhas-content-max, 71.875rem);
      margin: 0 auto;
      padding: 0 0 2rem;
      display: flex;
      flex-direction: column;
      gap: 1.5rem;
    }

    .hub-impact-header__title {
      margin: 0 0 0.35rem;
      font-size: 1.35rem;
    }

    .hub-impact-header__lead {
      margin: 0;
      color: var(--ink-soft, #5c6b7a);
      font-size: 0.98rem;
      line-height: 1.55;
    }

    .hub-impact-phase {
      background: #fff;
      border: 1px solid rgba(26, 35, 50, 0.1);
      border-radius: 14px;
      padding: 1.25rem 1.35rem;
    }

    .hub-impact-phase__label {
      margin: 0 0 0.35rem;
      font-size: 0.78rem;
      font-weight: 600;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      color: var(--c-laranja, #e85d04);
    }

    .hub-impact-phase__title {
      margin: 0 0 0.5rem;
      font-size: 1.15rem;
    }

    .hub-impact-phase__purpose,
    .hub-impact-phase__next,
    .hub-impact-phase__empty {
      margin: 0;
      color: var(--ink-soft, #5c6b7a);
      font-size: 0.95rem;
      line-height: 1.55;
    }

    .hub-impact-phase__next {
      margin-top: 1rem;
      padding-top: 1rem;
      border-top: 1px solid rgba(26, 35, 50, 0.08);
    }

    .hub-impact-goal {
      margin-top: 1rem;
    }

    .hub-impact-goal__row {
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      gap: 0.35rem 0.75rem;
      margin-bottom: 0.45rem;
    }

    .hub-impact-goal__value {
      font-size: 1.25rem;
      font-weight: 700;
    }

    .hub-impact-goal__label {
      font-size: 0.9rem;
      color: var(--ink-soft, #5c6b7a);
    }

    .hub-impact-goal__track {
      height: 8px;
      border-radius: 999px;
      background: rgba(26, 35, 50, 0.08);
      overflow: hidden;
    }

    .hub-impact-goal__fill {
      display: block;
      height: 100%;
      border-radius: inherit;
      background: linear-gradient(90deg, #00b6b8, #82cd39);
    }

    .hub-impact-block__title {
      margin: 0 0 0.75rem;
      font-size: 1rem;
    }

    .hub-impact-metrics {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
      gap: 0.75rem;
    }

    .hub-impact-metric {
      background: rgba(255, 255, 255, 0.85);
      border: 1px solid rgba(26, 35, 50, 0.08);
      border-radius: 12px;
      padding: 0.85rem 1rem;
    }

    .hub-impact-metric__value {
      display: block;
      font-size: 1.35rem;
      font-weight: 700;
    }

    .hub-impact-metric__label {
      display: block;
      margin-top: 0.15rem;
      font-size: 0.85rem;
      color: var(--ink-soft, #5c6b7a);
    }

    .hub-impact-deliveries {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      flex-direction: column;
      gap: 0.65rem;
    }

    .hub-impact-delivery {
      background: #fff;
      border: 1px solid rgba(26, 35, 50, 0.08);
      border-radius: 12px;
      padding: 0.85rem 1rem;
    }

    .hub-impact-delivery__status {
      display: inline-block;
      margin-bottom: 0.25rem;
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.03em;
      text-transform: uppercase;
    }

    .hub-impact-delivery--done .hub-impact-delivery__status { color: #1b7f5c; }
    .hub-impact-delivery--active .hub-impact-delivery__status { color: #b45309; }
    .hub-impact-delivery--planned .hub-impact-delivery__status { color: #5c6b7a; }

    .hub-impact-delivery__title {
      display: block;
      margin-bottom: 0.2rem;
    }

    .hub-impact-delivery__summary {
      margin: 0;
      font-size: 0.9rem;
      color: var(--ink-soft, #5c6b7a);
    }

    .hub-impact-delivery__link {
      display: inline-block;
      margin-top: 0.35rem;
      font-size: 0.88rem;
    }

    .hub-impact-actions {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 0.65rem;
    }

    .hub-impact-actions .mer-cta--primary {
      flex: 1 1 100%;
    }

    @media (min-width: 480px) {
      .hub-impact-actions .mer-cta--primary {
        flex: 1 1 auto;
      }
    }

    .hub-impact-footnote {
      margin: 0;
      font-size: 0.85rem;
      color: var(--ink-soft, #5c6b7a);
    }

    .hub-campanhas-hero--folder-tabs.hub-campanhas-hero--tab-apoiar + .hub-campanhas-root {
      --hub-campanhas-hero-bg: #fff8f3;
    }

    /* ===== MER Controls — hub design system ===== */

    .mer-cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.4rem;
      min-height: 3rem;
      padding: 0 1.15rem;
      border-radius: 12px;
      border: none;
      font: inherit;
      font-size: 1rem;
      font-weight: 600;
      line-height: 1.2;
      text-decoration: none;
      cursor: pointer;
      white-space: nowrap;
      box-sizing: border-box;
    }

    .mer-cta--block {
      display: flex;
      width: 100%;
    }

    .mer-cta--sm {
      min-height: 2.25rem;
      padding: 0 0.85rem;
      font-size: 0.875rem;
    }

    .mer-cta--primary {
      color: #fff;
      box-shadow: 0 4px 14px rgba(26, 35, 50, 0.12);
    }

    .mer-cta--primary.mer-cta--login {
      background: var(--accent-login);
      box-shadow: 0 4px 14px rgba(239, 108, 0, 0.28);
    }

    .mer-cta--primary.mer-cta--rede {
      background: var(--accent-rede);
      box-shadow: 0 4px 14px rgba(124, 92, 191, 0.28);
    }

    .mer-cta--primary.mer-cta--campanhas {
      background: var(--accent-campanhas);
      box-shadow: 0 4px 14px rgba(61, 143, 98, 0.28);
    }

    .mer-cta--primary.mer-cta--escola {
      background: var(--accent-escola);
      box-shadow: 0 4px 14px rgba(74, 144, 184, 0.28);
    }

    .mer-cta--secondary {
      background: var(--surface-2, #fff);
      border: 1px solid var(--border);
    }

    .mer-cta--secondary.mer-cta--campanhas {
      color: var(--accent-campanhas);
      border-color: rgba(61, 143, 98, 0.35);
    }

    .mer-cta--secondary.mer-cta--rede {
      color: var(--accent-rede);
      border-color: rgba(124, 92, 191, 0.35);
    }

    .mer-cta--secondary.mer-cta--escola {
      color: var(--accent-escola);
      border-color: rgba(74, 144, 184, 0.35);
    }

    .mer-cta--tertiary {
      min-height: auto;
      padding: 0.25rem 0;
      background: transparent;
      border: none;
      box-shadow: none;
      color: var(--ink-muted, #718096);
      font-size: 0.88rem;
      font-weight: 500;
      text-decoration: underline;
      text-underline-offset: 2px;
    }

    .mer-cta--tertiary:hover {
      color: var(--ink-soft);
    }

    .mer-cta:disabled {
      opacity: 0.55;
      cursor: not-allowed;
      box-shadow: none;
    }

    .mer-filter {
      display: flex;
      flex-wrap: wrap;
      gap: 0.4rem;
    }

    .mer-filter__btn,
    button.mer-filter__btn {
      padding: 0.38rem 0.72rem;
      border: 1px solid var(--border);
      border-radius: 999px;
      background: var(--surface-2, #fff);
      font: inherit;
      font-size: 0.78rem;
      font-weight: 600;
      color: var(--ink-soft);
      cursor: pointer;
    }

    .mer-filter__btn.is-active,
    button.mer-filter__btn.is-active {
      font-weight: 600;
    }

    .mer-filter--rede .mer-filter__btn.is-active,
    .mer-filter--rede button.mer-filter__btn.is-active {
      border-color: var(--filter-border-active-rede);
      background: var(--filter-bg-active-rede);
      color: var(--filter-text-active-rede);
    }

    .mer-filter--escola .mer-filter__btn.is-active,
    .mer-filter--escola button.mer-filter__btn.is-active {
      border-color: var(--filter-border-active-escola);
      background: var(--filter-bg-active-escola);
      color: var(--filter-text-active-escola);
    }

    .mer-filter--campanhas .mer-filter__btn.is-active,
    .mer-filter--campanhas button.mer-filter__btn.is-active {
      border-color: var(--filter-border-active-campanhas);
      background: var(--filter-bg-active-campanhas);
      color: var(--filter-text-active-campanhas);
    }

    .mer-filter--musicas .mer-filter__btn.is-active,
    .mer-filter--musicas button.mer-filter__btn.is-active {
      border-color: var(--filter-border-active-musicas);
      background: var(--filter-bg-active-musicas);
      color: var(--filter-text-active-musicas);
    }

    .tablet-shell--section-rede .mer-filter--auto .mer-filter__btn.is-active,
    .tablet-shell--section-rede .mer-filter--auto button.mer-filter__btn.is-active {
      border-color: var(--filter-border-active-rede);
      background: var(--filter-bg-active-rede);
      color: var(--filter-text-active-rede);
    }

    .tablet-shell--section-escola .mer-filter--auto .mer-filter__btn.is-active,
    .tablet-shell--section-escola .mer-filter--auto button.mer-filter__btn.is-active {
      border-color: var(--filter-border-active-escola);
      background: var(--filter-bg-active-escola);
      color: var(--filter-text-active-escola);
    }

    .tablet-shell--section-campanhas .mer-filter--auto .mer-filter__btn.is-active,
    .tablet-shell--section-campanhas .mer-filter--auto button.mer-filter__btn.is-active {
      border-color: var(--filter-border-active-campanhas);
      background: var(--filter-bg-active-campanhas);
      color: var(--filter-text-active-campanhas);
    }

    .tablet-shell--section-musicas .mer-filter--auto .mer-filter__btn.is-active,
    .tablet-shell--section-musicas .mer-filter--auto button.mer-filter__btn.is-active {
      border-color: var(--filter-border-active-musicas);
      background: var(--filter-bg-active-musicas);
      color: var(--filter-text-active-musicas);
    }

    .rede-guest-login-card .mer-cta--block {
      margin-top: 0.75rem;
    }

    .hub-forum-toolbar .mer-cta--block {
      width: 100%;
    }

    .hub-curso-card__actions .mer-cta {
      min-height: 2.75rem;
    }

    /* —— Tutoriais interativos (Escola) —— */
    .hub-tutoriais-section-head {
      margin-bottom: 1rem;
    }

    .hub-tutorial-list {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
    }

    .hub-tutorial-card {
      border: 1px solid var(--border);
      border-radius: 12px;
      background: var(--surface-2, #fff);
      overflow: hidden;
    }

    .hub-tutorial-card--done {
      border-color: rgba(74, 144, 184, 0.35);
    }

    .hub-tutorial-card__body {
      padding: 1rem 1.1rem 1.1rem;
    }

    .hub-tutorial-card__head {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 0.75rem;
      margin-bottom: 0.35rem;
    }

    .hub-tutorial-card__title {
      margin: 0;
      font-size: 1.05rem;
      font-weight: 650;
      line-height: 1.3;
    }

    .hub-tutorial-card__badge {
      flex-shrink: 0;
      font-size: 0.72rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.03em;
      padding: 0.2rem 0.45rem;
      border-radius: 999px;
      background: rgba(74, 144, 184, 0.12);
      color: var(--accent-escola);
    }

    .hub-tutorial-card__badge--done {
      background: rgba(61, 143, 98, 0.14);
      color: var(--accent-campanhas);
    }

    .hub-tutorial-card__summary {
      margin: 0 0 0.35rem;
      color: var(--text-muted, #5a6478);
      font-size: 0.92rem;
      line-height: 1.45;
    }

    .hub-tutorial-card__meta {
      margin: 0 0 0.85rem;
      font-size: 0.82rem;
      color: var(--text-muted, #5a6478);
    }

    .tutorial-coach-backdrop {
      position: fixed;
      inset: 0;
      pointer-events: none;
      z-index: 1190;
    }

    .tutorial-coach-backdrop--sheet {
      z-index: 50;
    }

    .tutorial-coach-backdrop--save {
      z-index: 1090;
    }

    .tutorial-coach-backdrop--editor {
      z-index: 1190;
    }

    .tutorial-coach__panels {
      position: absolute;
      inset: 0;
      pointer-events: none;
    }

    .tutorial-coach__panel {
      position: fixed;
      background: rgba(18, 24, 38, 0.72);
      pointer-events: auto;
      transition: top 0.15s ease, left 0.15s ease, width 0.15s ease, height 0.15s ease;
    }

    .tutorial-coach__pulse {
      position: fixed;
      border-radius: 10px;
      box-shadow: 0 0 0 3px rgba(74, 144, 184, 0.8);
      /* Pulso via opacity (compositor) — animar box-shadow repinta a cada quadro. */
      animation: tutorial-coach-pulse 1.6s ease-in-out infinite;
      pointer-events: none;
    }

    @keyframes tutorial-coach-pulse {
      0%, 100% { opacity: 1; }
      50% { opacity: 0.35; }
    }

    .tutorial-coach__card {
      position: fixed;
      max-width: min(22rem, calc(100vw - 24px));
      padding: 1rem 1.1rem;
      border-radius: 12px;
      background: var(--surface-2, #fff);
      border: 1px solid rgba(74, 144, 184, 0.35);
      box-shadow: 0 12px 40px rgba(18, 24, 38, 0.25);
      pointer-events: auto;
      z-index: 1400;
    }

    .tutorial-coach__card--top {
      top: 12px;
      left: 50%;
      transform: translateX(-50%);
    }

    .tutorial-coach__card--celebrate {
      text-align: center;
      border-color: rgba(74, 144, 184, 0.55);
      box-shadow: 0 16px 48px rgba(74, 144, 184, 0.22);
      background: linear-gradient(165deg, #fff 0%, #f3f9fd 100%);
    }

    .tutorial-coach__card--celebrate .tutorial-coach__title {
      font-size: 1.25rem;
      line-height: 1.35;
    }

    .tutorial-coach__card--celebrate .tutorial-coach__body {
      color: var(--text, #1a2332);
    }

    .tutorial-coach__card--celebrate .tutorial-coach__actions {
      justify-content: center;
      margin-top: 0.25rem;
    }

    .tutorial-coach__progress {
      margin: 0 0 0.35rem;
      font-size: 0.78rem;
      font-weight: 600;
      color: var(--accent-escola);
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }

    .tutorial-coach__title {
      margin: 0 0 0.4rem;
      font-size: 1.05rem;
      font-weight: 650;
    }

    .tutorial-coach__body {
      margin: 0 0 0.85rem;
      font-size: 0.92rem;
      line-height: 1.45;
      color: var(--text-muted, #5a6478);
    }

    .tutorial-coach__actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 0.5rem;
      flex-wrap: wrap;
    }

    .tutorial-coach__skip {
      border: none;
      background: transparent;
      color: var(--text-muted, #5a6478);
      font-size: 0.88rem;
      padding: 0.35rem 0.5rem;
      cursor: pointer;
    }

    .tutorial-coach__primary {
      min-height: 2.5rem;
    }

    body.tutorial-coach-open {
      overflow: hidden;
    }

    body.tutorial-coach-open #mic-picker-modal {
      z-index: 1500;
    }

    .mer-mod-menu-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 2rem;
      height: 2rem;
      padding: 0;
      border: none;
      border-radius: 8px;
      background: transparent;
      color: rgba(26, 35, 50, 0.5);
      cursor: pointer;
      flex-shrink: 0;
    }

    .mer-mod-menu-btn:hover,
    .mer-mod-menu-btn:focus-visible {
      color: rgba(26, 35, 50, 0.85);
      background: rgba(26, 35, 50, 0.05);
    }

    .mer-mod-menu-btn svg {
      width: 1.2rem;
      height: 1.2rem;
    }

    .mer-mod-menu-btn--sm {
      width: 1.6rem;
      height: 1.6rem;
    }

    .mer-mod-menu-btn--sm svg {
      width: 1rem;
      height: 1rem;
    }

    .mer-blocked-panel {
      margin-top: 1rem;
      border-top: 1px solid var(--border);
      padding-top: 0.75rem;
    }

    .mer-blocked-panel > summary {
      cursor: pointer;
      font-size: 0.9rem;
      color: var(--ink-soft);
      list-style: none;
    }

    .mer-blocked-panel > summary::-webkit-details-marker {
      display: none;
    }

    .mer-blocked-list {
      list-style: none;
      margin: 0.6rem 0 0;
      padding: 0;
      display: grid;
      gap: 0.4rem;
    }

    .mer-blocked-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.6rem;
      padding: 0.45rem 0.6rem;
      border: 1px solid var(--border);
      border-radius: 10px;
      background: var(--surface-2);
      font-size: 0.9rem;
    }

    .mer-blocked-item__name {
      min-width: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .mer-blocked-hint {
      margin: 0.5rem 0 0;
      font-size: 0.82rem;
      color: var(--ink-soft);
      line-height: 1.4;
    }
