/* Review layer (preview only). Cream "sticky note" tabs so they read as ours, not part of Ben's page. */
.rv-sec { position: relative; }
.rv-tab { position: absolute; top: 1rem; right: clamp(1rem, 3vw, 2rem); z-index: 6; cursor: pointer;
  background: var(--cream); color: #2a1f15; border: 0; border-radius: 2px; box-shadow: 0 4px 14px rgba(0,0,0,.4);
  font: 700 .74rem/1 Inter, sans-serif; letter-spacing: .08em; text-transform: uppercase; padding: .6rem .8rem; }
.ev-hero.rv-sec > .rv-tab { top: 5.4rem; }
.rv-tab:hover { background: #fff; }
.rv-tab.is-good { background: #CFE3C1; }
.rv-tab.is-note { background: #F6C77A; }
.rv-tab:focus-visible, .rv-card button:focus-visible, .rv-final button:focus-visible { outline: 2px solid var(--whiskey); outline-offset: 3px; }
.rv-card { position: absolute; top: 3.6rem; right: clamp(1rem, 3vw, 2rem); z-index: 7; width: min(24rem, calc(100% - 2rem));
  background: var(--cream); color: #2a1f15; border-radius: 2px; box-shadow: 0 18px 40px rgba(0,0,0,.5); padding: 1rem; }
.ev-hero.rv-sec > .rv-card { top: 8rem; }
.rv-card[hidden] { display: none; }
.rv-h { font: 700 1.05rem/1.2 'Fraunces', serif; color: #2a1f15 !important; margin-bottom: .7rem; }
.rv-ok, .rv-pick { display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: .7rem; }
.rv-ok button, .rv-pick button { cursor: pointer; border: 1px solid #b7a27e; background: transparent; color: #2a1f15; border-radius: 2px;
  font: 600 .85rem/1 Inter, sans-serif; padding: .6rem .75rem; }
.rv-ok button[aria-pressed="true"], .rv-pick button[aria-pressed="true"] { background: #2a1f15; color: var(--cream); border-color: #2a1f15; }
.rv-card textarea, .rv-final textarea { width: 100%; font: 400 1rem/1.45 Inter, sans-serif; border-radius: 2px; padding: .7rem; resize: vertical; }
.rv-card textarea { background: #fffaf0; color: #2a1f15; border: 1px solid #b7a27e; }
.rv-up { display: flex; align-items: center; gap: .7rem; flex-wrap: wrap; margin-top: .6rem; }
.rv-upbtn { position: relative; overflow: hidden; cursor: pointer; font: 600 .85rem/1 Inter, sans-serif; padding: .6rem .75rem;
  border: 1px dashed currentColor; border-radius: 2px; }
.rv-upbtn input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.rv-upstat { font-size: .85rem; }
.rv-done { margin-top: .8rem; float: right; cursor: pointer; background: #2a1f15; color: var(--cream); border: 0; border-radius: 2px;
  font: 700 .8rem/1 Inter, sans-serif; letter-spacing: .08em; text-transform: uppercase; padding: .65rem 1rem; }
.rv-card::after { content: ''; display: block; clear: both; }
.rv-final { border-top: 2px dashed var(--cream-soft); }
.rv-final .rv-sub { margin: .8rem 0 1.6rem; }
.rv-q { margin-bottom: 1.4rem; max-width: 46rem; }
.rv-qt { color: var(--cream) !important; font-weight: 600; margin-bottom: .55rem; }
.rv-final .rv-pick button { color: var(--cream); border-color: var(--line-strong); }
.rv-final .rv-pick button[aria-pressed="true"] { background: var(--cream); color: #2a1f15; border-color: var(--cream); }
.rv-final textarea { background: var(--bg-elev); color: var(--cream); border: 1px solid var(--line-strong); }
.rv-final .rv-upbtn { color: var(--cream); }
.rv-final .rv-upstat { color: var(--cream-soft); }
.rv-send { font-size: .9rem; padding: 1.1rem 1.8rem; }
.rv-out { margin-top: 1rem; color: var(--cream) !important; }
.rv-status { position: fixed; left: 50%; bottom: 1rem; transform: translate(-50%, 1rem); opacity: 0; transition: opacity .2s, transform .2s;
  background: var(--cream); color: #2a1f15; font: 600 .82rem/1 Inter, sans-serif; padding: .6rem .9rem; border-radius: 2px; z-index: 300; pointer-events: none; }
.rv-status.on { opacity: 1; transform: translate(-50%, 0); }
@media (max-width: 640px) {
  .rv-tab { top: .6rem; right: 1rem; }
  .rv-card { position: relative; top: auto; right: auto; width: auto; margin: 1rem 0 0; }
  .ev-hero.rv-sec > .rv-card { position: absolute; top: 7.4rem; left: 1rem; right: 1rem; }
}
@media (prefers-reduced-motion: reduce) { .rv-status { transition: none; } }
