/* Virtual measuring stick styles — shared by the Field app and Procure Lite.
   Uses the Haute palette CSS vars with safe fallbacks so it looks right in both. */
.psm { font-size: 15px; color: var(--ink, #2A1E15); }
.psm-refrow { display: flex; gap: .8rem; flex-wrap: wrap; align-items: flex-end; }
.psm-lbl { display: flex; flex-direction: column; gap: .3rem; font-size: .82rem;
  font-weight: 600; color: var(--soil, #7A6A5B); }
.psm-ref, .psm-custom-in { font: inherit; font-size: .95rem; color: var(--ink, #2A1E15);
  border: 1.5px solid var(--sage, #D9CBB6); border-radius: 9px; padding: .45rem .6rem;
  background: var(--paper, #FBF7F0); }
.psm-tips { font-size: .8rem; color: var(--soil, #7A6A5B); background: var(--cream, #F3ECE1);
  border-radius: 10px; padding: .55rem .75rem; margin: .7rem 0; line-height: 1.4; }
.psm-photorow { margin: .6rem 0; }
.psm-btn { font: inherit; font-size: .9rem; font-weight: 700; cursor: pointer;
  border: 1px solid var(--moss, #5E7B4E); background: var(--moss-soft, #E7E9DC);
  color: var(--moss-deep, #4C6640); border-radius: 10px; padding: .5rem .9rem; }
.psm-btn:active { transform: translateY(1px); }
.psm-step { font-size: .95rem; font-weight: 700; color: var(--clay-deep, #A2431F);
  margin: .3rem 0 .5rem; }
.psm-step.done { color: var(--moss-deep, #4C6640); }
.psm-canvas-wrap { position: relative; display: inline-block; max-width: 100%;
  line-height: 0; border-radius: 12px; overflow: hidden; touch-action: manipulation; }
.psm-img { max-width: 100%; max-height: 60vh; display: block; }
.psm-overlay { position: absolute; top: 0; left: 0; cursor: crosshair; touch-action: none; }
.psm-actions { display: flex; gap: .5rem; margin: .6rem 0; }
.psm-actions .psm-btn { background: var(--paper, #fff); color: var(--ink, #2A1E15);
  border-color: var(--sage, #D9CBB6); }
.psm-result { margin-top: .6rem; border: 1px solid var(--line, #E4D8C6); border-radius: 12px;
  padding: .8rem .9rem; background: var(--paper, #FBF7F0); }
.psm-h { font-family: 'Playfair Display', serif; font-size: 1.8rem; font-weight: 800;
  color: var(--ink, #2A1E15); line-height: 1.1; }
.psm-band { font-size: .9rem; font-weight: 600; color: var(--soil, #7A6A5B); margin-top: .2rem; }
.psm-note { font-size: .78rem; color: var(--soil, #7A6A5B); margin-top: .45rem; line-height: 1.4; }
.psm-apply-row { margin-top: .7rem; }
.psm-apply { background: var(--moss, #5E7B4E); color: #fff; border: none; }
