
  .modal { display: none; position: fixed; inset: 0; z-index: 9999; }
  .modal.is-open { display: block; }

  .modal-backdrop {
    position: absolute; inset: 0;
    background: rgba(15, 23, 42, 0.55);
    backdrop-filter: blur(4px);
  }

  .modal-panel {
    position: relative;
    width: min(720px, calc(100% - 28px));
    margin: 6vh auto;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: 0 30px 80px rgba(15, 23, 42, 0.35);
    overflow: hidden;
  }

  .modal-head {
    display: flex; align-items: center; justify-content: space-between;
    padding: 16px 18px;
    border-bottom: 1px solid var(--color-border);
    background:
      radial-gradient(circle at top left, rgba(255, 224, 204, 0.55) 0%, rgba(255, 255, 255, 0.9) 60%),
      #fff;
  }

  .modal-body { padding: 16px 18px 18px; }

  .modal-x {
    border: 1px solid var(--color-border);
    background: #fff;
    border-radius: 10px;
    width: 38px;
    height: 38px;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
  }

  body.modal-open { overflow: hidden; }

