/* Pathway overlay frame (Build 1.6). Drawn at 1920×1080, then scaled to fit. Used by the OBS page
   (/overlay/…) and by the preview on the Overlays tab, so both always look the same. */
.ovf{position:relative;width:1920px;height:1080px;font-family:'Nunito',system-ui,sans-serif;color:#382230;overflow:hidden;transform-origin:0 0}
.ovf .chip{font-family:'Nunito',sans-serif;letter-spacing:normal;text-transform:none;border:0;cursor:default;line-height:1.3;position:absolute;left:32px;top:24px;background:rgba(56,34,48,.92);color:#fff;font-weight:800;font-size:26px;padding:8px 18px;border-radius:12px;border-left:7px solid #d9764f;max-width:1250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ovf .chip span{color:#c8a24a}
.ovf .area{position:absolute;left:0;top:0;bottom:0}
.ovf .spot{position:absolute;border:4px dashed rgba(200,162,74,.92);border-radius:12px;transform:translate(-50%,-50%)}
.ovf .spot.anchor{border-style:solid;border-color:#c8a24a;box-shadow:0 0 0 3px rgba(56,34,48,.35)}
.ovf .spot .n{position:absolute;top:-22px;left:50%;transform:translateX(-50%);width:44px;height:44px;border-radius:50%;background:#523246;border:3px solid #c8a24a;color:#fff;font-size:21px;font-weight:800;display:grid;place-items:center}
.ovf .spot.anchor .n{background:#c8a24a;color:#382230}
.ovf .spot .lb{position:absolute;top:100%;margin-top:8px;left:50%;transform:translateX(-50%);background:rgba(56,34,48,.92);color:#fff;font-size:20px;font-weight:700;padding:4px 12px;border-radius:8px;white-space:nowrap;max-width:380px;overflow:hidden;text-overflow:ellipsis}
.ovf .spot.anchor .lb{color:#f4ead9;background:rgba(138,110,34,.95)}
.ovf .side{position:absolute;right:0;top:0;bottom:0;width:28%;background:rgba(244,234,217,.97);border-left:7px solid #c8a24a;padding:26px 30px;display:flex;flex-direction:column}
.ovf .face{height:300px;border:4px solid #c8a24a;border-radius:16px;margin-bottom:22px;flex:none;background:transparent}
.ovf .face.fill{background:radial-gradient(circle at 50% 40%,#7b5a6a,#3d2733);display:grid;place-items:center;color:#f4ead9;font-size:22px;font-weight:700}
.ovf .ey{font-size:17px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:#b25531}
.ovf h2{font-family:'Fraunces',serif;font-weight:600;font-size:36px;margin:4px 0 2px;line-height:1.1}
.ovf .sub{font-size:19px;color:#6b4a57;margin-bottom:8px}
.ovf .grp{font-size:15px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:#8a6e22;margin:14px 0 2px}
.ovf .it{display:flex;gap:12px;align-items:flex-start;padding:6px 0;border-bottom:1px solid #e6d9c4;font-size:21px;line-height:1.25}
.ovf .it b{flex:none;width:32px;height:32px;border-radius:50%;background:#523246;color:#fff;font-size:16px;display:grid;place-items:center}
.ovf .it.an b{background:#c8a24a;color:#382230}
.ovf .it small{display:block;font-size:15px;color:#6b4a57;margin-top:2px}
.ovf .it i{font-style:normal;font-size:14px;font-weight:800;color:#8a6e22;margin-left:6px}
.ovf .bottom{margin-top:auto;padding-top:14px;text-align:center}
.ovf .bottom img{height:108px}
.ovf .cr{font-size:13px;color:#6b4a57;line-height:1.35;margin-top:8px;text-align:left}
.ovf.edit .spot{cursor:grab;background:rgba(200,162,74,.12)}
.ovf.edit .spot.drag{cursor:grabbing;background:rgba(200,162,74,.3)}
