/* Report-an-issue widget — shared by Lite, Portal, Field. Haute palette vars
   with fallbacks so it looks right in each app. */
.ri-overlay { position: fixed; inset: 0; z-index: 200; display: none;
  align-items: center; justify-content: center; padding: 1rem;
  background: rgba(15, 31, 23, .55); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); }
.ri-overlay.open { display: flex; }
.ri-modal { background: var(--paper, #FBF7F0); border-radius: 16px; width: min(480px, 100%);
  max-height: 92vh; display: flex; flex-direction: column; overflow: hidden;
  box-shadow: 0 24px 70px rgba(15, 31, 23, .45); }
.ri-head { display: flex; align-items: center; justify-content: space-between;
  padding: 1rem 1.2rem; font-weight: 800; font-size: 1.1rem; color: var(--ink, #2A1E15);
  font-family: 'Playfair Display', serif; border-bottom: 1px solid var(--line, #E4D8C6); }
.ri-x { border: none; background: none; font-size: 1.5rem; line-height: 1; cursor: pointer;
  color: var(--soil, #7A6A5B); padding: 0 .2rem; }
.ri-body { padding: 1rem 1.2rem; overflow-y: auto; }
.ri-lbl { display: block; font-size: .82rem; font-weight: 700; color: var(--soil, #7A6A5B);
  margin: .2rem 0 .35rem; }
.ri-in, .ri-ta { width: 100%; box-sizing: border-box; font: inherit; font-size: 1rem;
  color: var(--ink, #2A1E15); border: 1.5px solid var(--sage, #D9CBB6); border-radius: 10px;
  padding: .6rem .7rem; background: #fff; margin-bottom: .9rem; }
.ri-ta { resize: vertical; min-height: 96px; }
.ri-ctxnote { font-size: .76rem; color: var(--soil, #7A6A5B); background: var(--cream, #F3ECE1);
  border-radius: 8px; padding: .5rem .6rem; line-height: 1.4; }
.ri-status { font-size: .85rem; margin-top: .6rem; min-height: 1.1em; }
.ri-status.ok { color: var(--moss-deep, #4C6640); font-weight: 600; }
.ri-status.err { color: var(--clay-deep, #A2431F); font-weight: 600; }
.ri-foot { display: flex; gap: .6rem; justify-content: flex-end; padding: .9rem 1.2rem 1.1rem;
  border-top: 1px solid var(--line, #E4D8C6); }
.ri-btn { font: inherit; font-weight: 700; font-size: .92rem; cursor: pointer; border-radius: 10px;
  padding: .55rem 1.1rem; border: 1px solid var(--sage, #D9CBB6); }
.ri-btn.ghost { background: var(--paper, #fff); color: var(--soil, #7A6A5B); }
.ri-btn.primary { background: var(--clay, #C0542A); border-color: var(--clay, #C0542A); color: #fff; }
.ri-btn.primary:disabled { opacity: .6; cursor: default; }
