/* Cloud-edition CSS body. Extracted into dist/cloud/assets/cloud.css.
       Keep this block in sync with src/cloud/cloud.css — the concat tool
       prefers marker content over the file when both exist. */

    .cloud-edition-block {
      margin: 0.5rem 0 0.25rem;
      padding: 0.5rem 0.75rem;
      display: flex;
      flex-direction: column;
      gap: 0.375rem;
    }

    .cloud-plan-chip {
      display: inline-flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.5rem;
      padding: 0.25rem 0.5rem;
      border-radius: 0.5rem;
      font-size: 0.75rem;
      font-weight: 600;
      line-height: 1.1;
      border: 1px solid transparent;
    }

    .cloud-plan-chip--free {
      background: rgb(241 245 249);
      color: rgb(71 85 105);
      border-color: rgb(226 232 240);
    }

    .cloud-plan-chip--team {
      background: rgb(219 234 254);
      color: rgb(29 78 216);
      border-color: rgb(191 219 254);
    }

    .cloud-plan-chip--business {
      background: rgb(254 243 199);
      color: rgb(146 64 14);
      border-color: rgb(253 230 138);
    }

    .cloud-plan-chip__name {
      letter-spacing: 0.02em;
      text-transform: uppercase;
    }

    .cloud-plan-chip__upgrade {
      font-size: 0.7rem;
      font-weight: 600;
      text-decoration: none;
      opacity: 0.85;
      padding: 0.125rem 0.375rem;
      border-radius: 0.375rem;
      background: rgba(255, 255, 255, 0.55);
      transition: opacity 120ms ease, transform 120ms ease;
    }

    .cloud-plan-chip__upgrade:hover {
      opacity: 1;
      transform: translateX(1px);
    }

    .cloud-usage-summary {
      font-size: 0.7rem;
      color: rgb(100 116 139);
      letter-spacing: 0.01em;
    }

    .cloud-billing-banner {
      font-size: 0.7rem;
      font-weight: 500;
      padding: 0.25rem 0.5rem;
      border-radius: 0.375rem;
    }

    .cloud-billing-banner--trialing {
      background: rgb(220 252 231);
      color: rgb(21 128 61);
    }

    .cloud-billing-banner--past_due,
    .cloud-billing-banner--restricted {
      background: rgb(254 226 226);
      color: rgb(153 27 27);
    }

    .cloud-billing-banner--canceled,
    .cloud-billing-banner--paused {
      background: rgb(254 243 199);
      color: rgb(146 64 14);
    }

    .cloud-billing-banner--incomplete,
    .cloud-billing-banner--unknown {
      background: rgb(241 245 249);
      color: rgb(71 85 105);
    }

    /* Limit-hit modal (PR-2b). Blocking dialog on 403 PLAN_LIMIT_REACHED. */

    .cloud-limit-modal__backdrop {
      position: fixed;
      inset: 0;
      background: rgba(15, 23, 42, 0.55);
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 1000;
      padding: 1rem;
    }

    .cloud-limit-modal__dialog {
      background: white;
      border-radius: 0.75rem;
      box-shadow: 0 20px 50px -10px rgba(15, 23, 42, 0.35);
      max-width: 28rem;
      width: 100%;
      padding: 1.5rem;
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
      outline: none;
    }

    .cloud-limit-modal__title {
      margin: 0;
      font-size: 1.125rem;
      font-weight: 700;
      color: rgb(15 23 42);
      line-height: 1.3;
    }

    .cloud-limit-modal__desc {
      margin: 0;
      font-size: 0.875rem;
      line-height: 1.5;
      color: rgb(51 65 85);
    }

    .cloud-limit-modal__pitch {
      margin: 0.25rem 0 0;
      font-size: 0.8125rem;
      line-height: 1.5;
      color: rgb(71 85 105);
      background: rgb(248 250 252);
      padding: 0.625rem 0.75rem;
      border-radius: 0.5rem;
      border: 1px solid rgb(226 232 240);
    }

    .cloud-limit-modal__actions {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-end;
      gap: 0.5rem;
      margin-top: 0.5rem;
    }

    .cloud-limit-modal__btn {
      font-size: 0.875rem;
      font-weight: 600;
      padding: 0.5rem 1rem;
      border-radius: 0.5rem;
      border: 1px solid transparent;
      cursor: pointer;
      transition: background 120ms ease, transform 80ms ease;
    }

    .cloud-limit-modal__btn:focus-visible {
      outline: 2px solid rgb(37 99 235);
      outline-offset: 2px;
    }

    .cloud-limit-modal__btn:disabled {
      opacity: 0.7;
      cursor: progress;
    }

    .cloud-limit-modal__btn--secondary {
      background: rgb(241 245 249);
      color: rgb(51 65 85);
      border-color: rgb(226 232 240);
    }

    .cloud-limit-modal__btn--secondary:hover {
      background: rgb(226 232 240);
    }

    .cloud-limit-modal__btn--primary {
      background: rgb(37 99 235);
      color: white;
      border-color: rgb(29 78 216);
    }

    .cloud-limit-modal__btn--primary:hover:not(:disabled) {
      background: rgb(29 78 216);
    }