/* [project]/src/components/visual-review-overlay.module.css [app-client] (css) */
.visual-review-overlay-module__VdIHGW__root {
  --review-ink: #0b1b36;
  --review-accent: #2f6df6;
  --review-accent-hover: #1f55c6;
  --review-accent-soft: #e8f1ff;
  --review-surface-strong: #fff;
  --review-text: #10213c;
  --review-muted: #5f6f88;
  --review-line: #b9cbed;
  --review-line-soft: #dbe6f7;
  --review-shadow: #071f4838;
  z-index: 100;
  pointer-events: none;
  color: var(--review-text);
  font-family: inherit;
  position: fixed;
  inset: 0;
}

.visual-review-overlay-module__VdIHGW__toolbar, .visual-review-overlay-module__VdIHGW__hint, .visual-review-overlay-module__VdIHGW__objectCard, .visual-review-overlay-module__VdIHGW__candidateCard {
  pointer-events: auto;
  box-shadow: 0 14px 38px var(--review-shadow);
}

.visual-review-overlay-module__VdIHGW__toolbar {
  z-index: 3;
  background: #0b1b36f7;
  border: 1px solid #2457ad;
  border-radius: 14px;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 6px 8px 6px 14px;
  display: flex;
  position: fixed;
  top: 16px;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 14px 38px #071f484d, inset 0 0 0 1px #699eff29;
}

.visual-review-overlay-module__VdIHGW__toolbarTitle {
  color: #b9d3ff;
  white-space: nowrap;
  align-items: center;
  gap: 7px;
  padding-right: 4px;
  font-size: 13px;
  font-weight: 750;
  display: inline-flex;
}

.visual-review-overlay-module__VdIHGW__modeControls {
  background: #ffffff1a;
  border-radius: 10px;
  gap: 3px;
  padding: 3px;
  display: flex;
}

.visual-review-overlay-module__VdIHGW__modeControls button, .visual-review-overlay-module__VdIHGW__closeButton, .visual-review-overlay-module__VdIHGW__cardTop button, .visual-review-overlay-module__VdIHGW__drawerTop button {
  color: #c5d6f2;
  cursor: pointer;
  background: none;
  border: 0;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.visual-review-overlay-module__VdIHGW__cardTop button, .visual-review-overlay-module__VdIHGW__drawerTop button {
  color: #31527f;
}

.visual-review-overlay-module__VdIHGW__modeControls button {
  border-radius: 7px;
  gap: 5px;
  min-height: 30px;
  padding: 0 9px;
  font-size: 12px;
}

.visual-review-overlay-module__VdIHGW__modeControls button[aria-pressed="true"] {
  background: var(--review-accent);
  color: #fff;
  font-weight: 700;
  box-shadow: 0 1px 4px #0000003d;
}

.visual-review-overlay-module__VdIHGW__modeControls button:focus-visible, .visual-review-overlay-module__VdIHGW__closeButton:focus-visible, .visual-review-overlay-module__VdIHGW__cardTop button:focus-visible, .visual-review-overlay-module__VdIHGW__candidateCard button:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #75a7ff;
}

.visual-review-overlay-module__VdIHGW__closeButton {
  border-radius: 8px;
  width: 31px;
  height: 31px;
}

.visual-review-overlay-module__VdIHGW__closeButton:hover {
  color: #fff;
  background: #75a7ff29;
}

.visual-review-overlay-module__VdIHGW__cardTop button:hover, .visual-review-overlay-module__VdIHGW__drawerTop button:hover {
  background: var(--review-accent-soft);
  color: var(--review-accent-hover);
}

.visual-review-overlay-module__VdIHGW__feedbackButton {
  color: #c5d6f2;
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: 0;
  border-radius: 7px;
  align-items: center;
  gap: 5px;
  min-height: 30px;
  padding: 0 8px;
  font-size: 12px;
  display: inline-flex;
}

.visual-review-overlay-module__VdIHGW__feedbackButton:hover {
  color: #fff;
  background: #75a7ff29;
}

.visual-review-overlay-module__VdIHGW__feedbackButton:focus-visible, .visual-review-overlay-module__VdIHGW__commentButton:focus-visible, .visual-review-overlay-module__VdIHGW__submitButton:focus-visible, .visual-review-overlay-module__VdIHGW__referenceActions button:focus-visible, .visual-review-overlay-module__VdIHGW__backButton:focus-visible, .visual-review-overlay-module__VdIHGW__reviewActions button:focus-visible, .visual-review-overlay-module__VdIHGW__messageForm button:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #75a7ff;
}

.visual-review-overlay-module__VdIHGW__hint {
  z-index: 3;
  color: #eaf2ff;
  background: #0b1b36f5;
  border: 1px solid #3976df;
  border-radius: 999px;
  align-items: center;
  gap: 7px;
  margin: 0;
  padding: 8px 12px;
  font-size: 12px;
  display: inline-flex;
  position: fixed;
  top: 76px;
  left: 50%;
  transform: translateX(-50%);
}

.visual-review-overlay-module__VdIHGW__highlight {
  z-index: 1;
  border: 2px solid var(--review-accent);
  pointer-events: none;
  background: #2f6df626;
  border-radius: 5px;
  position: fixed;
  box-shadow: 0 0 0 3px #ebf3ffeb, 0 0 0 5px #2f6df62e;
}

.visual-review-overlay-module__VdIHGW__hoverLabel {
  z-index: 2;
  background: var(--review-ink);
  color: #fff;
  pointer-events: none;
  border: 1px solid #3976df;
  border-radius: 10px;
  min-width: 180px;
  max-width: 240px;
  padding: 9px 11px;
  position: fixed;
  box-shadow: 0 10px 25px #071f484d;
}

.visual-review-overlay-module__VdIHGW__hoverLabel strong, .visual-review-overlay-module__VdIHGW__hoverLabel span {
  display: block;
}

.visual-review-overlay-module__VdIHGW__hoverLabel strong {
  font-size: 13px;
  line-height: 1.35;
}

.visual-review-overlay-module__VdIHGW__hoverLabel span {
  color: #a9c8ff;
  margin-top: 3px;
  font-size: 11px;
}

.visual-review-overlay-module__VdIHGW__regionCanvas {
  z-index: 2;
  cursor: crosshair;
  pointer-events: auto;
  touch-action: none;
  position: fixed;
  inset: 0;
}

.visual-review-overlay-module__VdIHGW__regionBox {
  border: 2px solid var(--review-accent);
  pointer-events: none;
  background: #2f6df62e;
  position: fixed;
  box-shadow: inset 0 0 0 1px #ffffffe6;
}

.visual-review-overlay-module__VdIHGW__objectCard, .visual-review-overlay-module__VdIHGW__candidateCard {
  z-index: 4;
  background: #f7fafffc;
  border: 1px solid #6f9bea;
  border-radius: 16px;
  width: min(344px, 100vw - 32px);
  padding: 20px;
  position: fixed;
  bottom: 22px;
  right: 22px;
}

.visual-review-overlay-module__VdIHGW__cardTop {
  color: #1f5dc4;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
  font-weight: 750;
  display: flex;
}

.visual-review-overlay-module__VdIHGW__cardTop button {
  border-radius: 8px;
  width: 28px;
  height: 28px;
}

.visual-review-overlay-module__VdIHGW__objectCard h2, .visual-review-overlay-module__VdIHGW__candidateCard h2 {
  color: var(--review-text);
  letter-spacing: -.02em;
  margin: 13px 0 2px;
  font-size: 20px;
}

.visual-review-overlay-module__VdIHGW__designName {
  color: var(--review-muted);
  margin: 0 0 18px;
  font-size: 12px;
}

.visual-review-overlay-module__VdIHGW__cardSection {
  border-top: 1px solid var(--review-line-soft);
  margin-top: 15px;
  padding-top: 14px;
}

.visual-review-overlay-module__VdIHGW__cardSection > span, .visual-review-overlay-module__VdIHGW__candidateCard > span {
  color: #51698c;
  font-size: 11px;
  font-weight: 700;
}

.visual-review-overlay-module__VdIHGW__cardSection p {
  color: #344a69;
  margin: 5px 0 0;
  font-size: 12px;
  line-height: 1.65;
}

.visual-review-overlay-module__VdIHGW__nextStep {
  background: var(--review-accent-soft);
  color: #17488f;
  border-radius: 9px;
  margin: 18px 0 0;
  padding: 10px 11px;
  font-size: 11px;
  line-height: 1.55;
}

.visual-review-overlay-module__VdIHGW__commentButton, .visual-review-overlay-module__VdIHGW__submitButton {
  background: var(--review-ink);
  color: #fff;
  cursor: pointer;
  border: 0;
  border-radius: 9px;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 40px;
  margin-top: 14px;
  font-size: 13px;
  font-weight: 750;
  display: inline-flex;
}

.visual-review-overlay-module__VdIHGW__commentButton:hover, .visual-review-overlay-module__VdIHGW__submitButton:hover {
  background: var(--review-accent-hover);
}

.visual-review-overlay-module__VdIHGW__commentButton:disabled, .visual-review-overlay-module__VdIHGW__submitButton:disabled, .visual-review-overlay-module__VdIHGW__reviewActions button:disabled, .visual-review-overlay-module__VdIHGW__messageForm button:disabled {
  cursor: wait;
  opacity: .68;
}

.visual-review-overlay-module__VdIHGW__candidateCard > div {
  gap: 8px;
  margin-top: 16px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__candidateCard button {
  border: 1px solid var(--review-line);
  background: var(--review-surface-strong);
  color: var(--review-text);
  text-align: left;
  cursor: pointer;
  border-radius: 10px;
  gap: 3px;
  padding: 12px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__candidateCard button:hover {
  border-color: var(--review-accent);
  background: var(--review-accent-soft);
}

.visual-review-overlay-module__VdIHGW__candidateCard button strong {
  font-size: 13px;
}

.visual-review-overlay-module__VdIHGW__candidateCard button small {
  color: var(--review-muted);
  font-size: 11px;
}

.visual-review-overlay-module__VdIHGW__commentDrawer, .visual-review-overlay-module__VdIHGW__feedbackPanel {
  z-index: 5;
  width: min(392px, 100vw - 32px);
  max-height: calc(100vh - 106px);
  box-shadow: 0 18px 46px var(--review-shadow), 0 4px 0 var(--review-accent) inset;
  pointer-events: auto;
  background: #f7fafffe;
  border: 1px solid #6f9bea;
  border-radius: 16px;
  padding: 20px;
  position: fixed;
  top: 84px;
  right: 22px;
  overflow: auto;
}

.visual-review-overlay-module__VdIHGW__drawerTop {
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.visual-review-overlay-module__VdIHGW__drawerTop div {
  gap: 4px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__drawerTop span {
  color: #1f5dc4;
  font-size: 11px;
  font-weight: 750;
}

.visual-review-overlay-module__VdIHGW__drawerTop strong {
  color: var(--review-text);
  font-size: 17px;
  line-height: 1.35;
}

.visual-review-overlay-module__VdIHGW__drawerTop button {
  border-radius: 8px;
  flex: none;
  width: 30px;
  height: 30px;
}

.visual-review-overlay-module__VdIHGW__drawerHint {
  color: var(--review-muted);
  margin: 14px 0 18px;
  font-size: 12px;
  line-height: 1.65;
}

.visual-review-overlay-module__VdIHGW__commentForm, .visual-review-overlay-module__VdIHGW__messageForm {
  gap: 13px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__commentForm label, .visual-review-overlay-module__VdIHGW__messageForm label {
  gap: 7px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__commentForm label > span, .visual-review-overlay-module__VdIHGW__messageForm label > span {
  color: #263d5f;
  font-size: 12px;
  font-weight: 750;
}

.visual-review-overlay-module__VdIHGW__commentForm textarea, .visual-review-overlay-module__VdIHGW__messageForm textarea, .visual-review-overlay-module__VdIHGW__referenceUrl input {
  background: var(--review-surface-strong);
  width: 100%;
  color: var(--review-text);
  font: inherit;
  border: 1px solid #aac0e4;
  border-radius: 9px;
  outline: none;
  font-size: 13px;
  line-height: 1.55;
}

.visual-review-overlay-module__VdIHGW__commentForm textarea, .visual-review-overlay-module__VdIHGW__messageForm textarea {
  resize: vertical;
  padding: 10px 11px;
}

.visual-review-overlay-module__VdIHGW__commentForm textarea:focus, .visual-review-overlay-module__VdIHGW__messageForm textarea:focus, .visual-review-overlay-module__VdIHGW__referenceUrl input:focus {
  border-color: var(--review-accent);
  box-shadow: 0 0 0 3px #2f6df629;
}

.visual-review-overlay-module__VdIHGW__referenceActions {
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__referenceActions > button, .visual-review-overlay-module__VdIHGW__referenceUrl button, .visual-review-overlay-module__VdIHGW__backButton, .visual-review-overlay-module__VdIHGW__reviewActions button, .visual-review-overlay-module__VdIHGW__messageForm > button {
  border: 1px solid var(--review-line);
  background: var(--review-surface-strong);
  color: #263d5f;
  cursor: pointer;
  min-height: 36px;
  font: inherit;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
}

.visual-review-overlay-module__VdIHGW__referenceActions > button {
  white-space: nowrap;
  padding: 0 10px;
}

.visual-review-overlay-module__VdIHGW__referenceActions > button:hover, .visual-review-overlay-module__VdIHGW__referenceUrl button:hover, .visual-review-overlay-module__VdIHGW__backButton:hover, .visual-review-overlay-module__VdIHGW__reviewActions button:hover, .visual-review-overlay-module__VdIHGW__messageForm > button:hover {
  border-color: var(--review-accent);
  background: var(--review-accent-soft);
}

.visual-review-overlay-module__VdIHGW__referenceUrl {
  grid-template-columns: minmax(0, 1fr) 36px;
  gap: 5px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__referenceUrl input {
  min-width: 0;
  padding: 0 9px;
}

.visual-review-overlay-module__VdIHGW__referenceUrl button {
  padding: 0;
}

.visual-review-overlay-module__VdIHGW__visuallyHidden {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
}

.visual-review-overlay-module__VdIHGW__referenceList {
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__referenceList li {
  background: var(--review-accent-soft);
  color: #344a69;
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  padding: 8px 9px;
  font-size: 12px;
  display: flex;
}

.visual-review-overlay-module__VdIHGW__referenceList button {
  color: #174ea6;
  cursor: pointer;
  font: inherit;
  background: none;
  border: 0;
  font-size: 11px;
  font-weight: 700;
}

.visual-review-overlay-module__VdIHGW__inlineError {
  color: #a33925;
  background: #fff0ed;
  border-radius: 8px;
  margin: 0;
  padding: 9px 10px;
  font-size: 12px;
  line-height: 1.5;
}

.visual-review-overlay-module__VdIHGW__submitButton {
  gap: 7px;
  margin-top: 0;
}

.visual-review-overlay-module__VdIHGW__feedbackPanel {
  top: 74px;
}

.visual-review-overlay-module__VdIHGW__feedbackList {
  gap: 9px;
  margin-top: 18px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__feedbackList > button {
  border: 1px solid var(--review-line);
  background: var(--review-surface-strong);
  color: var(--review-text);
  text-align: left;
  cursor: pointer;
  font: inherit;
  border-radius: 10px;
  gap: 5px;
  padding: 12px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__feedbackList > button:hover {
  border-color: var(--review-accent);
  background: var(--review-accent-soft);
}

.visual-review-overlay-module__VdIHGW__feedbackList strong {
  font-size: 13px;
}

.visual-review-overlay-module__VdIHGW__feedbackList p {
  color: #4e607a;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
  display: -webkit-box;
  overflow: hidden;
}

.visual-review-overlay-module__VdIHGW__feedbackList small {
  color: var(--review-muted);
  font-size: 11px;
}

.visual-review-overlay-module__VdIHGW__feedbackEmpty {
  color: var(--review-muted);
  align-items: center;
  gap: 8px;
  margin: 24px 0 8px;
  font-size: 12px;
  display: flex;
}

.visual-review-overlay-module__VdIHGW__statusBadge {
  color: #415775;
  background: #e8eef8;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  width: max-content;
  min-height: 20px;
  padding: 0 7px;
  font-size: 10px;
  font-weight: 750;
  display: inline-flex;
}

.visual-review-overlay-module__VdIHGW__statusBadge[data-status="waiting_review"] {
  color: #8a5e14;
  background: #fff0cb;
}

.visual-review-overlay-module__VdIHGW__statusBadge[data-status="needs_changes"] {
  color: #9b432d;
  background: #fde7df;
}

.visual-review-overlay-module__VdIHGW__statusBadge[data-status="accepted"], .visual-review-overlay-module__VdIHGW__statusBadge[data-status="closed"] {
  color: #397147;
  background: #e5f2e7;
}

.visual-review-overlay-module__VdIHGW__feedbackDetail {
  gap: 14px;
  margin-top: 15px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__backButton {
  justify-self: start;
  padding: 0 9px;
}

.visual-review-overlay-module__VdIHGW__commentContent {
  color: #263d5f;
  white-space: pre-wrap;
  margin: 0;
  font-size: 13px;
  line-height: 1.7;
}

.visual-review-overlay-module__VdIHGW__locationFallback {
  background: var(--review-accent-soft);
  color: #17488f;
  border-radius: 8px;
  margin: 0;
  padding: 9px 10px;
  font-size: 12px;
  line-height: 1.55;
}

.visual-review-overlay-module__VdIHGW__commentScreenshot {
  border: 1px solid var(--review-line);
  background: #edf3fc;
  border-radius: 9px;
  width: 100%;
  display: block;
}

.visual-review-overlay-module__VdIHGW__savedReferences, .visual-review-overlay-module__VdIHGW__thread {
  border-top: 1px solid var(--review-line-soft);
  gap: 8px;
  padding-top: 13px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__savedReferences > span, .visual-review-overlay-module__VdIHGW__thread > span {
  color: #51698c;
  font-size: 11px;
  font-weight: 750;
}

.visual-review-overlay-module__VdIHGW__savedReferences img {
  border: 1px solid var(--review-line);
  object-fit: contain;
  border-radius: 8px;
  max-width: 100%;
  max-height: 190px;
  display: block;
}

.visual-review-overlay-module__VdIHGW__savedReferences a {
  color: #174ea6;
  text-underline-offset: 3px;
  font-size: 12px;
  text-decoration: underline;
}

.visual-review-overlay-module__VdIHGW__thread > p {
  color: var(--review-muted);
  margin: 0;
  font-size: 12px;
}

.visual-review-overlay-module__VdIHGW__message {
  background: #edf4ff;
  border-radius: 9px;
  padding: 10px;
}

.visual-review-overlay-module__VdIHGW__message small {
  color: #51698c;
  font-size: 10px;
}

.visual-review-overlay-module__VdIHGW__message p {
  color: #344a69;
  white-space: pre-wrap;
  margin: 5px 0 0;
  font-size: 12px;
  line-height: 1.6;
}

.visual-review-overlay-module__VdIHGW__reviewActions {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  display: grid;
}

.visual-review-overlay-module__VdIHGW__reviewActions button:first-child {
  color: #397147;
  background: #f0f8ef;
  border-color: #9bbda2;
}

.visual-review-overlay-module__VdIHGW__messageForm > button {
  border-color: var(--review-ink);
  background: var(--review-ink);
  color: #fff;
  justify-self: end;
  min-width: 72px;
  padding: 0 11px;
}

.visual-review-overlay-module__VdIHGW__messageForm > button:hover {
  border-color: var(--review-accent-hover);
  background: var(--review-accent-hover);
}

@media (max-width: 640px) {
  .visual-review-overlay-module__VdIHGW__toolbar {
    justify-content: space-between;
    width: calc(100% - 16px);
    top: 8px;
  }

  .visual-review-overlay-module__VdIHGW__toolbarTitle {
    display: none;
  }

  .visual-review-overlay-module__VdIHGW__feedbackButton {
    width: 34px;
    padding: 0;
    font-size: 0;
  }

  .visual-review-overlay-module__VdIHGW__modeControls {
    flex: 1;
  }

  .visual-review-overlay-module__VdIHGW__modeControls button {
    flex: 1;
    padding-inline: 6px;
  }

  .visual-review-overlay-module__VdIHGW__hint {
    text-align: center;
    max-width: calc(100% - 20px);
    top: 66px;
  }

  .visual-review-overlay-module__VdIHGW__objectCard, .visual-review-overlay-module__VdIHGW__candidateCard {
    width: calc(100% - 16px);
    max-height: min(64vh, 520px);
    bottom: 8px;
    right: 8px;
    overflow: auto;
  }

  .visual-review-overlay-module__VdIHGW__commentDrawer, .visual-review-overlay-module__VdIHGW__feedbackPanel {
    width: calc(100% - 16px);
    max-height: calc(100vh - 72px);
    top: 64px;
    right: 8px;
  }

  .visual-review-overlay-module__VdIHGW__referenceActions {
    grid-template-columns: 1fr;
  }
}

/*# sourceMappingURL=src_components_visual-review-overlay_module_1wo88-_.css.map*/