    /* ---------- 1. SIDEBAR ALWAYS OPEN (desktop/laptop) ---------- */
    @media (min-width: 901px) {

      body .responsive-sidebar,
      body .responsive-sidebar:not(:hover) {
        width: var(--sidebar-expanded) !important;
        overflow-y: auto !important;
      }

      body .responsive-sidebar .tab-btn,
      body .responsive-sidebar:not(:hover) .tab-btn {
        justify-content: flex-start !important;
        padding-left: 16px !important;
        padding-right: 14px !important;
      }

      body .responsive-sidebar .nav-label,
      body .responsive-sidebar:not(:hover) .nav-label,
      body .responsive-sidebar .sidebar-mess-name,
      body .responsive-sidebar:not(:hover) .sidebar-mess-name,
      body .responsive-sidebar .sidebar-mess-text {
        opacity: 1 !important;
        width: auto !important;
        max-width: none !important;
        visibility: visible !important;
        pointer-events: auto !important;
      }

      body .container {
        max-width: calc(2200px + var(--sidebar-expanded)) !important;
        padding-left: calc(var(--sidebar-expanded) + clamp(18px, 2vw, 28px)) !important;
      }

      body .page-footer {
        max-width: calc(2200px + var(--sidebar-expanded)) !important;
        padding-left: calc(var(--sidebar-expanded) + clamp(18px, 2vw, 28px)) !important;
      }

      /* Always-open means no close/hamburger control on desktop */
      body .responsive-sidebar .sidebar-close-btn,
      body .sidebar-toggle-btn.header-sidebar-toggle {
        display: none !important;
      }

      body .sidebar-overlay {
        display: none !important;
      }
    }

    /* ---------- 2. PLAN LOCK STYLING ---------- */
    .mm-locked {
      position: relative;
      opacity: .55 !important;
      filter: grayscale(.5);
    }

    .mm-locked::after {
      content: "🔒";
      font-size: 11px;
      margin-left: 5px;
      opacity: .9;
    }

    /* ---------- 2b. FULL PANEL LOCK (Google Sheet / Edit Access ইত্যাদি পুরো পাতা) ---------- */
    /* ভেতরের সব ইনপুট/সিলেক্ট/বাটন সত্যিই অচল করে দেয় (শুধু ক্লিক আটকানো না) —
       তাই নেটিভ <select> ড্রপডাউনও আর খোলে না, কোনো পপআপ bypass করার সুযোগ থাকে না। */
    .mm-panel-locked {
      position: relative !important;
    }

    .mm-panel-locked>*:not(.mm-panel-upg-badge) {
      pointer-events: none !important;
      user-select: none !important;
      opacity: .42;
      filter: grayscale(.35) blur(.3px);
    }

    .mm-panel-upg-badge {
      position: absolute;
      top: 12px;
      right: 12px;
      z-index: 20;
      display: inline-flex;
      align-items: center;
      gap: 5px;
      background: linear-gradient(120deg, #f59e0b, #ef7d00);
      color: #fff;
      font-family: 'Sora', sans-serif;
      font-weight: 800;
      font-size: 11.5px;
      letter-spacing: .02em;
      padding: 6px 13px;
      border-radius: 999px;
      cursor: pointer;
      box-shadow: 0 8px 20px rgba(245, 158, 11, .38);
      pointer-events: auto !important;
      border: none;
      animation: mmBadgePulse 2.4s ease-in-out infinite;
    }

    .mm-panel-upg-badge:hover {
      filter: brightness(1.08);
    }

    @keyframes mmBadgePulse {

      0%,
      100% {
        box-shadow: 0 8px 20px rgba(245, 158, 11, .38);
      }

      50% {
        box-shadow: 0 8px 26px rgba(245, 158, 11, .62);
      }
    }

    .mm-plan-pill {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: .04em;
      padding: 3px 10px;
      border-radius: 999px;
      text-transform: uppercase;
      font-family: 'Sora', sans-serif;
    }

    .mm-plan-pill.free {
      background: #E5E7EB;
      color: #4B5563;
    }

    .mm-plan-pill.plus {
      background: #FFE7D8;
      color: #C2410C;
    }

    .mm-plan-pill.pro {
      background: #CFF3F3;
      color: #046A6A;
    }

    /* upgrade modal */
    .mm-up-back {
      position: fixed;
      inset: 0;
      background: rgba(15, 23, 42, .55);
      backdrop-filter: blur(3px);
      z-index: 99998;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 18px;
    }

    .mm-up-box {
      background: var(--surface, #fff);
      color: var(--text, #1F2937);
      border-radius: 18px;
      max-width: 400px;
      width: 100%;
      padding: 26px 24px;
      text-align: center;
      font-family: 'Sora', sans-serif;
      box-shadow: 0 24px 60px rgba(0, 0, 0, .28);
    }

    .mm-up-box h3 {
      margin: 10px 0 8px;
      font-size: 19px;
    }

    .mm-up-box p {
      font-size: 13.5px;
      line-height: 1.65;
      margin: 0 0 18px;
      color: color-mix(in srgb, var(--text, #1F2937) 68%, transparent);
    }

    .mm-up-box .mm-up-emoji {
      font-size: 34px;
    }

    .mm-up-actions {
      display: flex;
      gap: 10px;
    }

    .mm-up-actions button {
      flex: 1;
      padding: 11px;
      border-radius: 12px;
      font-weight: 700;
      font-size: 13.5px;
      cursor: pointer;
      font-family: 'Sora', sans-serif;
      border: 1px solid var(--border, #F1E3D8);
      background: var(--bg, #F8FAFC);
      color: var(--text, #1F2937);
    }

    .mm-up-actions button.primary {
      background: var(--accent, #FF8243);
      border-color: var(--accent, #FF8243);
      color: #fff;
    }

    /* ---------- 2c. USAGE & LIMITS CARD ---------- */
    .mm-usage-summary-row {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-bottom: 16px;
    }

    .mm-usage-chip {
      flex: 1;
      min-width: 130px;
      background: var(--bg, #F8FAFC);
      border: 1px solid var(--border, #F1E3D8);
      border-radius: 12px;
      padding: 10px 12px;
      display: flex;
      flex-direction: column;
      gap: 3px;
    }

    .mm-usage-chip span {
      font-size: 11px;
      opacity: .65;
      font-weight: 600;
    }

    .mm-usage-chip strong {
      font-size: 14.5px;
    }

    .mm-usage-row {
      margin-bottom: 12px;
    }

    .mm-usage-top {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 13px;
      font-weight: 700;
      margin-bottom: 6px;
    }

    .mm-usage-val.ok {
      color: #16a34a;
    }

    .mm-usage-val.warn {
      color: #d97706;
    }

    .mm-usage-val.danger {
      color: #dc2626;
    }

    .mm-usage-bar {
      height: 9px;
      border-radius: 999px;
      background: var(--bg, #F1F5F9);
      overflow: hidden;
    }

    .mm-usage-fill {
      height: 100%;
      border-radius: 999px;
      transition: width .3s ease;
    }

    .mm-usage-fill.ok {
      background: #16a34a;
    }

    .mm-usage-fill.warn {
      background: #d97706;
    }

    .mm-usage-fill.danger {
      background: #dc2626;
    }

    .mm-usage-hit {
      font-size: 12px;
      color: #dc2626;
      margin-top: 5px;
      font-weight: 600;
    }

    .mm-usage-hit a {
      color: #dc2626;
      text-decoration: underline;
    }

    .mm-locked-feat-list {
      list-style: none;
      margin: 0;
      padding: 0;
      display: flex;
      flex-direction: column;
      gap: 8px;
    }

    .mm-locked-feat-list li {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 13px;
      background: var(--bg, #F8FAFC);
      border: 1px dashed var(--border, #F1E3D8);
      border-radius: 10px;
      padding: 8px 12px;
    }

    .mm-inline-upg {
      font-size: 11.5px;
      font-weight: 800;
      color: #fff;
      background: linear-gradient(120deg, #f59e0b, #ef7d00);
      padding: 4px 11px;
      border-radius: 999px;
      text-decoration: none;
      white-space: nowrap;
    }

    /* ---------- 3. PAYMENT PAGE ---------- */
    .mmp-wrap {
      font-family: 'Sora', sans-serif;
      color: var(--text, #1F2937);
    }

    .mmp-back {
      background: none;
      border: none;
      font-family: 'Sora', sans-serif;
      font-size: 13.5px;
      font-weight: 700;
      color: color-mix(in srgb, var(--text, #1F2937) 65%, transparent);
      cursor: pointer;
      padding: 6px 0 14px;
      display: inline-flex;
      align-items: center;
      gap: 7px;
    }

    .mmp-grid {
      display: grid;
      grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
      gap: 18px;
      align-items: start;
    }

    @media (max-width: 900px) {
      .mmp-grid {
        grid-template-columns: 1fr;
      }
    }

    .mmp-card {
      background: var(--surface, #fff);
      border: 1px solid var(--border, #F1E3D8);
      border-radius: var(--card-radius, 16px);
      box-shadow: var(--shadow, 0 4px 24px rgba(31, 41, 55, .07));
      padding: 22px;
    }

    .mmp-card-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      flex-wrap: wrap;
      margin-bottom: 16px;
    }

    .mmp-card-head h3 {
      margin: 0;
      font-size: 16px;
      font-weight: 800;
    }

    .mmp-card-head small {
      font-size: 12px;
      color: color-mix(in srgb, var(--text, #1F2937) 55%, transparent);
    }

    .mmp-plan-chip {
      background: var(--accent, #FF8243);
      color: #fff;
      font-size: 11px;
      font-weight: 800;
      padding: 4px 11px;
      border-radius: 999px;
      letter-spacing: .05em;
    }

    .mmp-row {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 13.5px;
      padding: 9px 0;
      border-bottom: 1px dashed var(--border, #F1E3D8);
    }

    .mmp-row span {
      color: color-mix(in srgb, var(--text, #1F2937) 62%, transparent);
    }

    .mmp-save {
      color: var(--green, #069494);
    }

    .mmp-total {
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      margin-top: 14px;
      padding-top: 14px;
      border-top: 2px solid var(--border, #F1E3D8);
      font-size: 14px;
      font-weight: 700;
    }

    .mmp-total strong {
      font-size: 26px;
      font-weight: 800;
      color: var(--accent, #FF8243);
    }

    .mmp-field {
      margin: 14px 0;
    }

    .mmp-field label {
      display: block;
      font-size: 12.5px;
      font-weight: 700;
      margin-bottom: 6px;
    }

    .mmp-field .req {
      color: var(--red, #E4572E);
    }

    .mmp-input {
      width: 100%;
      box-sizing: border-box;
      padding: 11px 13px;
      border-radius: 11px;
      border: 1px solid var(--border, #F1E3D8);
      background: var(--bg, #F8FAFC);
      color: var(--text, #1F2937);
      font-family: 'Sora', sans-serif;
      font-size: 14px;
      outline: none;
    }

    .mmp-input:focus {
      border-color: var(--accent, #FF8243);
    }

    .mmp-trx {
      letter-spacing: .08em;
      font-weight: 700;
      text-transform: uppercase;
    }

    .mmp-hint {
      display: block;
      margin-top: 5px;
      font-size: 11.5px;
      color: color-mix(in srgb, var(--text, #1F2937) 52%, transparent);
    }

    .mmp-note {
      margin-top: 16px;
      background: color-mix(in srgb, var(--accent, #FF8243) 9%, transparent);
      border-left: 3px solid var(--accent, #FF8243);
      border-radius: 10px;
      padding: 11px 13px;
      font-size: 12.5px;
      line-height: 1.65;
    }

    .mmp-channels {
      display: grid;
      gap: 11px;
    }

    .mmp-channel {
      display: flex;
      align-items: center;
      gap: 13px;
      padding: 13px 15px;
      border: 2px solid var(--border, #F1E3D8);
      border-radius: 14px;
      cursor: pointer;
      transition: border-color .15s ease, transform .12s ease;
      background: var(--surface, #fff);
    }

    .mmp-channel:hover {
      transform: translateY(-1px);
    }

    .mmp-channel.is-active {
      border-color: var(--ch-color, #E2136E);
      background: color-mix(in srgb, var(--ch-color, #E2136E) 7%, transparent);
    }

    .mmp-channel .ch-logo {
      width: 42px;
      height: 42px;
      flex: 0 0 42px;
      border-radius: 11px;
      background: var(--ch-color, #E2136E);
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 800;
      font-size: 15px;
    }

    .mmp-channel .ch-body {
      flex: 1;
      min-width: 0;
    }

    .mmp-channel .ch-name {
      font-size: 12px;
      font-weight: 700;
      color: color-mix(in srgb, var(--text, #1F2937) 60%, transparent);
    }

    .mmp-channel .ch-num {
      font-size: 17px;
      font-weight: 800;
      letter-spacing: .04em;
      word-break: break-all;
    }

    .mmp-channel .ch-type {
      font-size: 11px;
      color: color-mix(in srgb, var(--text, #1F2937) 55%, transparent);
      text-transform: capitalize;
    }

    .mmp-channel .ch-copy {
      border: none;
      background: var(--ch-color, #E2136E);
      color: #fff;
      font-family: 'Sora', sans-serif;
      font-size: 12px;
      font-weight: 700;
      padding: 8px 13px;
      border-radius: 9px;
      cursor: pointer;
      white-space: nowrap;
    }

    .mmp-steps {
      margin-top: 14px;
      font-size: 12.5px;
      line-height: 1.8;
      color: color-mix(in srgb, var(--text, #1F2937) 70%, transparent);
      background: var(--bg, #F8FAFC);
      border-radius: 12px;
      padding: 12px 15px;
    }

    .mmp-steps ol {
      margin: 0;
      padding-left: 18px;
    }

    .mmp-divider {
      text-align: center;
      margin: 20px 0 4px;
      position: relative;
    }

    .mmp-divider::before {
      content: "";
      position: absolute;
      inset: 50% 0 auto;
      height: 1px;
      background: var(--border, #F1E3D8);
    }

    .mmp-divider span {
      position: relative;
      background: var(--surface, #fff);
      padding: 0 12px;
      font-size: 12px;
      font-weight: 700;
      color: color-mix(in srgb, var(--text, #1F2937) 55%, transparent);
    }

    .mmp-submit {
      width: 100%;
      margin-top: 8px;
      padding: 14px;
      border: none;
      border-radius: 13px;
      background: var(--green, #069494);
      color: #fff;
      font-family: 'Sora', sans-serif;
      font-size: 14.5px;
      font-weight: 800;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
    }

    .mmp-submit:disabled {
      opacity: .6;
      cursor: not-allowed;
    }

    .mmp-ghost-btn {
      border: 1px solid var(--border, #F1E3D8);
      background: var(--bg, #F8FAFC);
      color: var(--text, #1F2937);
      font-family: 'Sora', sans-serif;
      font-size: 12.5px;
      font-weight: 700;
      padding: 8px 13px;
      border-radius: 10px;
      cursor: pointer;
    }

    .mmp-skeleton {
      font-size: 13px;
      color: color-mix(in srgb, var(--text, #1F2937) 50%, transparent);
      padding: 10px 0;
    }

    .mmp-req-list {
      display: grid;
      gap: 10px;
    }

    .mmp-req {
      border: 1px solid var(--border, #F1E3D8);
      border-radius: 13px;
      padding: 13px 15px;
      display: flex;
      gap: 12px;
      align-items: flex-start;
      flex-wrap: wrap;
    }

    .mmp-req .r-main {
      flex: 1;
      min-width: 190px;
    }

    .mmp-req .r-title {
      font-size: 14px;
      font-weight: 800;
      margin-bottom: 3px;
    }

    .mmp-req .r-meta {
      font-size: 12px;
      line-height: 1.7;
      color: color-mix(in srgb, var(--text, #1F2937) 60%, transparent);
      word-break: break-word;
    }

    .mmp-req .r-actions {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
    }

    .mmp-req .r-actions button {
      border: none;
      border-radius: 9px;
      padding: 8px 14px;
      font-family: 'Sora', sans-serif;
      font-size: 12.5px;
      font-weight: 700;
      cursor: pointer;
    }

    .mmp-req .r-ok {
      background: var(--green, #069494);
      color: #fff;
    }

    .mmp-req .r-no {
      background: color-mix(in srgb, var(--red, #E4572E) 14%, transparent);
      color: var(--red, #E4572E);
    }

    .mm-status {
      font-size: 11px;
      font-weight: 800;
      padding: 3px 10px;
      border-radius: 999px;
      text-transform: uppercase;
      letter-spacing: .04em;
    }

    .mm-status.pending {
      background: #FEF3C7;
      color: #92400E;
    }

    .mm-status.approved {
      background: #D1FAE5;
      color: #065F46;
    }

    .mm-status.rejected {
      background: #FEE2E2;
      color: #991B1B;
    }

    /* ---------- 4. ADMIN PAGE ---------- */
    .mma-head {
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      gap: 12px;
      flex-wrap: wrap;
      margin-bottom: 16px;
    }

    .mma-head h2 {
      margin: 0 0 4px;
      font-size: 22px;
      font-weight: 800;
    }

    .mma-head p {
      margin: 0;
      font-size: 13px;
      color: color-mix(in srgb, var(--text, #1F2937) 60%, transparent);
    }

    .mma-stats {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
      gap: 12px;
      margin-bottom: 18px;
    }

    .mma-stat {
      background: var(--surface, #fff);
      border: 1px solid var(--border, #F1E3D8);
      border-radius: 14px;
      padding: 15px 17px;
    }

    .mma-stat span {
      font-size: 12px;
      color: color-mix(in srgb, var(--text, #1F2937) 58%, transparent);
    }

    .mma-stat strong {
      display: block;
      font-size: 24px;
      font-weight: 800;
      margin-top: 4px;
    }

    .mma-tabs {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      margin-bottom: 14px;
    }

    .mma-tab {
      border: 1px solid var(--border, #F1E3D8);
      background: var(--surface, #fff);
      color: var(--text, #1F2937);
      font-family: 'Sora', sans-serif;
      font-size: 13px;
      font-weight: 700;
      padding: 9px 16px;
      border-radius: 999px;
      cursor: pointer;
    }

    .mma-tab.is-active {
      background: var(--accent, #FF8243);
      border-color: var(--accent, #FF8243);
      color: #fff;
    }

    .mma-pane {
      display: none;
    }

    .mma-pane.is-active {
      display: block;
    }

    .mma-table-wrap {
      overflow-x: auto;
    }

    .mma-table {
      width: 100%;
      border-collapse: collapse;
      font-size: 13px;
      min-width: 640px;
    }

    .mma-table th,
    .mma-table td {
      padding: 10px 9px;
      text-align: left;
      border-bottom: 1px solid var(--border, #F1E3D8);
      white-space: nowrap;
    }

    .mma-table th {
      font-size: 12px;
      color: color-mix(in srgb, var(--text, #1F2937) 58%, transparent);
    }

    .mma-channel-edit {
      display: grid;
      gap: 16px;
    }

    .mma-ch-form {
      border: 1px solid var(--border, #F1E3D8);
      border-radius: 14px;
      padding: 16px;
    }

    .mma-ch-form h4 {
      margin: 0 0 12px;
      font-size: 14px;
    }

    .mma-ch-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
      gap: 11px;
    }

    /* ---------- 5. BILLING: feature matrix ---------- */
    .mm-feat-list {
      list-style: none;
      margin: 14px 0 0;
      padding: 0;
      display: grid;
      gap: 9px;
    }

    .mm-feat-list li {
      display: flex;
      justify-content: space-between;
      gap: 10px;
      font-size: 13px;
      padding-bottom: 8px;
      border-bottom: 1px dashed var(--border, #F1E3D8);
    }

    .mm-feat-list li:last-child {
      border-bottom: none;
    }

    .mm-feat-list .lbl {
      color: color-mix(in srgb, var(--text, #1F2937) 72%, transparent);
    }

    .mm-feat-list .v {
      font-weight: 700;
      text-align: right;
      white-space: nowrap;
    }

    .mm-feat-list .v.on {
      color: var(--green, #069494);
    }

    .mm-feat-list .v.off {
      color: color-mix(in srgb, var(--text, #1F2937) 35%, transparent);
    }
  
