
      .no-scroll {
        overflow: hidden; /* prevent scrolling while loading */
      }

      /* === LOADER OVERLAY === */
      #mc-loader {
        position: fixed;
        inset: 0;
        z-index: 9999;
        background: linear-gradient(
          #4a2d06,
          #2c1a04
        ); /* brown-ish like dirt background */
        display: flex;
        align-items: center;
        justify-content: center;
        color: #e0e0e0;
        font-family: "Press Start 2P", system-ui, -apple-system,
          BlinkMacSystemFont, "Segoe UI", sans-serif;
        text-transform: uppercase;
        letter-spacing: 1px;
        transition: opacity 0.5s ease;
      }

      #mc-loader.mc-loader-hidden {
        opacity: 0;
        pointer-events: none;
      }

      .mc-loader-inner {
        width: min(480px, 90vw);
        text-align: center;
      }

      .mc-title {
        font-size: 18px;
        margin-bottom: 24px;
        text-shadow: 2px 2px 0 #000;
        color: #ffffff;
      }

      .mc-progress-wrapper {
        background: #00000080;
        border: 3px solid #000;
        padding: 8px;
        box-shadow: 0 0 0 3px #555; /* blocky border */
        margin-bottom: 12px;
      }

      .mc-progress-bar {
        position: relative;
        width: 100%;
        height: 18px;
        background: #3b3b3b;
        border: 2px solid #000;
        overflow: hidden;
      }

      .mc-progress-bar-fill {
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 0%;
        background: linear-gradient(#6bbf3b, #3e8d1c);
        box-shadow: inset 0 0 0 2px #1f4f0f;
        transition: width 0.25s linear;
      }

      .mc-progress-text {
        margin-top: 6px;
        font-size: 10px;
        text-align: right;
        color: #a0ffa0;
        text-shadow: 1px 1px 0 #000;
      }

      .mc-status-text {
        margin-top: 12px;
        font-size: 10px;
        color: #d0d0d0;
        text-shadow: 1px 1px 0 #000;
        min-height: 1.2em;
      }

      .mc-tip {
        margin-top: 16px;
        font-size: 8px;
        color: #a0a0a0;
        text-shadow: 1px 1px 0 #000;
        opacity: 0.8;
      }