/* 레이아웃 v3 (2026-11-04): 왼쪽 물건 목록(경매·공매) → 가운데 지도 → 오른쪽 판정 카드. panel3.js 가 body.v3 를 붙이면 켜짐.
   v2(layout.css·panel.js)의 오른쪽 카드·에드 답 꾸미기는 그대로 쓰고, 왼쪽만 바꾼다. 끄려면 index.html 에서 layout3.css·panel3.js 두 줄을 빼면 됨 */
@media (min-width: 821px) {
  body.v3.simple .app, body.v3.simple .app.adClosed { grid-template-columns: 400px 1fr; }
  body.v3 .app > .col { display: none; }                 /* 에드 대화는 탭으로 */
  body.v3 .app.v3chat > .col { display: flex; }
  body.v3.simple #adPanel { display: flex !important; }
  body.v3.simple .app.v3chat > #adPanel { display: none !important; }
  body.v3 #adTab, body.v3 #adFold, body.v3 #adScope { display: none !important; }
  body.v3 .v2Hello { display: none !important; }

  /* 머리: 브랜드 + 탭 */
  body.v3 .v3Top { display: flex; align-items: center; gap: 10px; padding: 14px 16px 10px; border-bottom: 1px solid var(--edge); }
  body.v3 .v3Top .brand { flex: 1; padding: 0; border: 0; margin: 0; font-size: 15px; }
  body.v3 .v3Tabs { display: flex; gap: 2px; background: #F0F2F4; border-radius: 10px; padding: 3px; }
  @media (prefers-color-scheme: dark) { body.v3 .v3Tabs { background: #1B1F23; } }
  body.v3 .v3Tabs button { all: unset; cursor: pointer; font-size: 13px; font-weight: 600; padding: 5px 11px; border-radius: 8px; color: var(--fg3); }
  body.v3 .v3Tabs button.on { background: var(--bg); color: var(--fg); box-shadow: 0 1px 3px rgba(0,0,0,.12); }
  body.v3 .adHead { padding: 12px 16px 8px; border-bottom: 0; }
  body.v3 .adHead b { font-size: 15px; }

  /* 필터 줄 */
  body.v3 .v3Filt { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 16px 10px; border-bottom: 1px solid var(--edge); align-items: center; }
  body.v3 .v3Filt .seg { display: inline-flex; border: 1px solid var(--edge); border-radius: 999px; overflow: hidden; }
  body.v3 .v3Filt .seg button { all: unset; cursor: pointer; font-size: 12px; font-weight: 600; padding: 4px 10px; color: var(--fg3); }
  body.v3 .v3Filt .seg button.on { background: var(--fg); color: var(--bg); }
  body.v3 .v3Filt .chip { all: unset; cursor: pointer; font-size: 12px; font-weight: 600; padding: 4px 10px; border: 1px solid var(--edge); border-radius: 999px; color: var(--fg3); }
  body.v3 .v3Filt .chip.on { border-color: var(--accent); color: var(--accent); background: #F0FAF6; }
  @media (prefers-color-scheme: dark) { body.v3 .v3Filt .chip.on { background: #163327; } }
  body.v3 .v3Filt select { font: inherit; font-size: 12px; font-weight: 600; padding: 3px 6px; border: 1px solid var(--edge); border-radius: 999px; background: var(--bg); color: var(--fg3); max-width: 120px; }
  body.v3 .v3Filt .chip.soon.on { border-color: #E8590C; color: #E8590C; background: #FFF4EC; }

  /* 카드: 등급 배지 */
  body.v3 .adList { flex: 1; overflow-y: auto; }
  body.v3 .adCard { grid-template-columns: 84px 1fr; gap: 10px; padding: 12px 16px; position: relative; }
  body.v3 .adThumb { width: 84px; height: 66px; }
  body.v3 .adGr { position: absolute; left: 16px; top: 12px; width: 22px; height: 22px; border-radius: 6px 0 8px 0; font-size: 12px; font-weight: 800; color: #fff; display: grid; place-items: center; background: #6B7684; }
  body.v3 .adGr.A { background: var(--accent); } body.v3 .adGr.B { background: #E0A800; }
  body.v3 .adPrice { font-size: 16px; }
  body.v3 .adMeta { font-size: 12px; line-height: 1.5; }
  body.v3 .adEnd b.soon { color: #E8590C; }
  body.v3 .adCard.sel { background: #F0FAF6; box-shadow: inset 3px 0 0 var(--accent); }
  @media (prefers-color-scheme: dark) { body.v3 .adCard.sel { background: #163327; } }
  body.v3 .adFoot { font-size: 11px; color: var(--fg3); padding: 8px 16px; margin: 0; border-top: 1px solid var(--edge); }

  /* 맨 아래 검색칸: 지번·리 입력 → 에드에게 보냄 */
  body.v3 .v3Search { display: flex; gap: 6px; padding: 10px 12px 12px; border-top: 1px solid var(--edge); background: var(--bg); }
  body.v3 .v3Search input { flex: 1; font: inherit; font-size: 14px; padding: 9px 12px; border: 1.5px solid var(--edge); border-radius: 12px; background: var(--bg); color: var(--fg); }
  body.v3 .v3Search input:focus { outline: 0; border-color: var(--accent); }
  body.v3 .v3Search button { all: unset; cursor: pointer; width: 38px; border-radius: 12px; background: var(--accent); color: #fff; display: grid; place-items: center; font-weight: 700; }

  /* 에드 탭일 때 왼쪽 위에 돌아가기 */
  body.v3 .col .v3Back { all: unset; cursor: pointer; font-size: 13px; font-weight: 600; color: var(--accent); margin-bottom: 8px; }

  /* 핀: 등급 색. A 초록(기존 ok), B 노랑, C 회색 작은 점 */
  body.v3 .obPin.grB span { background: #E0A800; } body.v3 .obPin.grB span::after { border-top-color: #E0A800; } body.v3 .obPin.grB i { background: #E0A800; }
  body.v3 .obPin.grA span { background: var(--accent); } body.v3 .obPin.grA span::after { border-top-color: var(--accent); } body.v3 .obPin.grA i { background: var(--accent); }
  body.v3 .obPin.grC i { width: 7px; height: 7px; margin: -3.5px 0 0 -3.5px; background: #B0B8C1; border-width: 1.5px; opacity: .8; }
  body.v3 .obPin.bPin.grA span { background: #1F6FEB; } body.v3 .obPin.bPin.grA span::after { border-top-color: #1F6FEB; }
  body.v3 .obPin.bPin.grB span { background: #8E6CF2; } body.v3 .obPin.bPin.grB span::after { border-top-color: #8E6CF2; } body.v3 .obPin.bPin.grB i { background: #8E6CF2; }
  body.v3 .obPin.grA.pulse span, body.v3 .obPin.grB.pulse span { outline: 3px solid rgba(0,0,0,.35); }

  /* 지도 위 범례 (왼쪽 아래) */
  body.v3 .v3Legend { position: fixed; left: 416px; bottom: 16px; z-index: 900; background: var(--bg); border: 1px solid var(--edge); border-radius: 10px; padding: 6px 10px; font-size: 12px; color: var(--fg3); display: flex; gap: 10px; align-items: center; box-shadow: 0 2px 8px rgba(0,0,0,.1); }
  body.v3 .v3Legend i { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 4px; vertical-align: -1px; }
  body.v3 .v3Legend label { cursor: pointer; display: inline-flex; gap: 4px; align-items: center; }
}
