:root{
  /* 색 변경 전 다크 민트 시각 시스템. 기능과 데이터는 그대로 유지한다. */
  --page:#111416; --surface:#1a1f21; --surface2:#202628; --line:#30383a;
  --ink:#f3f1ec; --sub:#a7acab;
  --accent:#98d8c2; --accent-fg:#98d8c2; --accent-d:#7cc4ac; --accent-ink:#0d1a15; --accent-bg:#1c2f28;
  --muted-green:#315143;
  --ok:#7ee2b8; --ok-solid:#1f5c44;
  --warn:#ff9686; --warn-solid:#6e2a20;
  /* 라운지(플레이어 커뮤니티) 전용 보조 강조색 -- lounge.css가 폴백으로도 참조한다 */
  --coral:#ff8a75; --teal:#4f9484;
  /* 하위 호환: 과거 --bg/--bg2 이름을 계속 쓰는 규칙이 있다면 새 표면 토큰을 그대로 가리키게 한다 */
  --bg:var(--page); --bg2:var(--surface2);
  --radius:12px; --container:1200px;
  /* 타이포그래피 척도(handoff/ui-typography-density-20260928.md) -- 화면마다 임의의 style="font-size:..."를
     흩어놓지 않고, 여기 정의된 값만 재사용한다. 가격은 항상 같은 줄의 제목/본문보다 크고 굵게 남아
     가장 먼저 눈에 들어오는 숫자여야 한다는 요구를 만족하도록 --fs-price를 --fs-body보다 확실히 키운다. */
  --fs-body:16px; --fs-small:14px; --fs-meta:14px; --fs-label:14px;
  --fs-price:22px; --fs-product-title:1.4rem; --fs-section:1.2rem; --fs-pagetitle:28px;
}
*{box-sizing:border-box}
.ledger-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
.ledger-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.ledger-scroll .ledger{min-width:650px}
@media(max-width:719px){.ledger-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.ledger-summary .price{overflow-wrap:anywhere}}
html{color-scheme:dark}
html,body{margin:0;padding:0;background:var(--page);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Pretendard','Malgun Gothic',sans-serif;
  font-size:var(--fs-body);line-height:1.5;
  padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
input,select,textarea{font-family:inherit;font-size:var(--fs-body);color:var(--ink)}
/* 선택 항목은 클릭한 칸 바로 아래의 문서 흐름에서 펼친다. */
.gc-select-shell{display:block;position:relative;width:100%;min-width:0}
.gc-select-shell.gc-select-compact{display:inline-block;width:auto;min-width:132px;max-width:100%;vertical-align:middle}
.gc-select-shell select[hidden],.gc-select-menu[hidden]{display:none!important}
.gc-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface2);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.gc-select-compact .gc-select-trigger{min-height:38px;padding:7px 10px;font-size:.84rem}
.gc-select-trigger::after{content:'⌄';flex:none;color:var(--sub);font-size:1.15em;line-height:1}
.gc-select-trigger:disabled{opacity:.55;cursor:default}
.gc-select-trigger:focus-visible,.gc-select-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.gc-select-menu{display:block;width:100%;max-height:min(240px,40vh);overflow-y:auto;overscroll-behavior:contain;margin-top:5px;border:1px solid var(--line);border-radius:8px;background:var(--surface2);box-shadow:0 8px 20px rgba(0,0,0,.22)}
.gc-select-option{display:block;width:100%;min-height:38px;padding:9px 12px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.gc-select-option:last-child{border-bottom:0}
.gc-select-option:hover,.gc-select-option[aria-selected="true"]{background:var(--accent-bg);color:var(--ink)}
.gc-select-option:disabled{opacity:.55;cursor:default}
.gc-update-notice{position:fixed;right:16px;bottom:16px;z-index:100;display:flex;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:10px 12px;border:1px solid var(--accent);border-radius:10px;background:var(--surface);color:var(--ink);box-shadow:0 8px 28px rgba(0,0,0,.4);font-size:.85rem}
.gc-update-notice button{border:0;border-radius:7px;background:var(--accent);color:var(--accent-ink);padding:7px 11px;font-weight:750}
/* 데모 런타임 전용 고정 안내(비데모에서는 hidden이라 화면이 전혀 달라지지 않는다). 헤더는 이 막대 높이만큼 아래에 고정. */
.demobar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:5px 12px;background:#2a352e;color:#d8e8df;border-bottom:1px solid #466b57;font-size:.78rem;line-height:1.3;text-align:center}
.demobar[hidden]{display:none}
.demobar strong{font-size:.78rem;font-weight:700}
.demobar-sub{font-size:.72rem;opacity:.95}
.badge.demo{color:#ffd77a;border-color:#e0a83a;background:#3b2f10}
.demo-note{border:1px dashed #e0a83a;border-radius:8px;background:#2a2210;color:#ffe7ab;padding:6px 10px;font-size:.78rem;margin:6px 0}
.demo-disabled{opacity:.7;cursor:default}
header.top{border-bottom:1px solid var(--line);position:sticky;top:var(--demobar-h,0px);background:var(--surface);z-index:20}
.top-inner{display:flex;align-items:center;gap:14px;max-width:var(--container);margin:0 auto;padding:12px 20px;flex-wrap:wrap;row-gap:10px}

.searchbar{flex:1;max-width:480px;min-width:110px}
.searchbar input{width:100%;border:1px solid var(--line);border-radius:10px;padding:11px 14px;font-size:var(--fs-body);background:var(--surface2);color:var(--ink);min-height:44px}
.searchbar input::placeholder{color:var(--sub)}
.mobile-search-toggle,.mobile-bottom-nav{display:none}
nav.desktop-nav{display:flex;gap:20px;font-size:.9rem;font-weight:700;color:var(--sub)}
@media(min-width:720px){nav.desktop-nav{gap:12px;font-size:.82rem}.top-inner{gap:10px}}
nav.desktop-nav a{padding:6px 0}
nav.desktop-nav a.active{color:var(--accent-fg)}
.catalog-type-links{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 16px}
.catalog-type-links a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:7px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--sub);font-size:.85rem;font-weight:700}
.catalog-type-links a:hover,.catalog-type-links a[aria-current="page"]{border-color:var(--accent-fg);color:var(--accent-fg)}
/* 로그인(우측 상단 독립 계정 버튼)과 판매하기 CTA는 일반 메뉴 텍스트와 분리한다.
   header.top 자체는 모바일에서도 표시되므로(데스크톱 전용은 .desktop-nav만) 두 버튼 모두 모바일 상단에서도 보인다. */
.top-actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex:0 0 auto}
.sellcta,.loginbtn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:10px;font-weight:800;font-size:.86rem;white-space:nowrap;padding:0 16px}
.sellcta{background:var(--accent);color:var(--accent-ink);padding:0 22px;font-size:.92rem;box-shadow:0 1px 2px rgba(0,0,0,.35)}
.sellcta:hover{background:#a8e2cf}
.sellcta:active{background:var(--accent-d)}
.loginbtn{background:transparent;color:var(--ink);border:1.5px solid var(--line);font-weight:700}
.loginbtn:hover{border-color:var(--sub)}
.loginbtn.loggedin{border-color:var(--accent-fg);color:var(--accent-fg)}
@media(max-width:719px){
  .searchbar{display:none;order:3;flex-basis:100%;max-width:none}
  header.top.search-open .searchbar{display:block}
  .mobile-search-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:44px;padding:0;border:0;background:none;color:var(--sub);border-radius:9px}
  .mobile-search-toggle svg{width:23px;height:23px}
  .mobile-search-toggle[aria-expanded=true]{color:var(--accent)}
  .loginbtn{display:none}
  .sellcta{padding:0 12px;font-size:.8rem}
  .mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:calc(65px + env(safe-area-inset-bottom,0px));padding:0 4px env(safe-area-inset-bottom,0px);border-top:1px solid var(--line);background:var(--surface)}
  .mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:58px;border-radius:8px;color:var(--sub);font-size:.7rem;font-weight:700;line-height:1.1;white-space:nowrap}
  .mobile-bottom-nav a svg{width:23px;height:23px;flex:none}
  .mobile-bottom-nav a.active,.mobile-bottom-nav a:hover{color:var(--accent)}
  .home-catalog-shortcuts{display:none}
}
.consoletabs-wrap{border-bottom:1px solid var(--line);background:var(--surface)}
.consoletabs{display:flex;gap:8px;padding:12px 20px;overflow-x:auto;max-width:var(--container);margin:0 auto}
.consoletabs button{border:1px solid var(--line);background:var(--surface2);border-radius:999px;padding:9px 16px;font-size:.86rem;font-weight:700;color:var(--sub);white-space:nowrap;min-height:40px}
.consoletabs button.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.mainlayout{display:flex;justify-content:center;align-items:flex-start;gap:22px;position:relative}
/* 화면 전환 표시: 절대 위치라 레이아웃 높이/너비를 바꾸지 않는다(느린 요청에만 220ms 뒤 표시). */
.route-bar{position:absolute;top:0;left:0;right:0;height:3px;overflow:hidden;opacity:0;transition:opacity .15s;pointer-events:none;z-index:5}
.route-bar.on{opacity:1}
.route-bar::after{content:"";position:absolute;top:0;bottom:0;left:-40%;width:40%;background:var(--accent);animation:routebar 1s ease-in-out infinite}
@keyframes routebar{from{left:-40%}to{left:100%}}
@media(prefers-reduced-motion:reduce){.route-bar::after{animation:none;left:0;width:100%;opacity:.6}}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.route-error .btnrow{margin-top:10px}
.route-error .btnrow .btn{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:106px;min-height:44px;margin:0;padding:0 16px;line-height:1.2;font-size:.9rem}
main{max-width:var(--container);margin:0;padding:16px 20px 90px;min-width:0;flex:1 1 auto;background:var(--page)}
@media(min-width:768px){main{flex:0 1 var(--container)}}
/* 우측 배너: 넓은 PC 화면에서만 본문 옆에 보이고, 좁은 화면에서는 완전히 숨겨 본문 폭을 복원한다.
   모바일 본문/하단메뉴 위에 겹쳐 띄우지 않는다(고정폭 사이드 영역일 뿐, 오버레이가 아님). */
.ad-right{display:none}
@media(min-width:1820px){
  .ad-right:not(:empty){display:block;position:absolute;left:calc(50% + 600px + 22px);top:16px;width:280px}
}
.ad-right .ad-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}
.ad-right .ad-card img{display:block;width:100%;height:auto}
.ad-badge{position:absolute;top:6px;left:6px;background:rgba(0,0,0,.6);color:#fff;font-size:.62rem;font-weight:700;padding:2px 6px;border-radius:4px;letter-spacing:.02em}
.ad-card{position:relative}
.ad-top-banner{display:block;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:0 0 14px;position:relative}
.ad-top-banner img{display:block;width:100%;height:auto;max-height:140px;object-fit:cover}
.ad-home-hero{margin:0 0 28px;border-color:#375b48;border-radius:16px;background:#20352a;min-height:220px}
.ad-home-hero img{height:220px;max-height:none;object-fit:contain}
.ad-home-secondary{margin:0 0 20px;background:var(--surface)}
.ad-home-secondary img{max-height:140px;object-fit:contain}
@media(max-width:720px){.ad-home-hero{margin-bottom:20px;min-height:190px}.ad-home-hero img{height:190px}}
@media(max-width:430px){.ad-home-hero{min-height:180px}.ad-home-hero img{height:180px}}
@media(max-width:720px){.ad-home-secondary{margin-bottom:16px}.ad-home-secondary img{max-height:110px}}
.ad-launch{position:fixed;inset:0;background:#000;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ad-launch[hidden]{display:none}
.ad-launch img{max-width:min(92vw,480px);max-height:70vh;object-fit:contain}
.ad-launch .ad-launch-badge{color:#fff;font-size:.72rem;margin-bottom:10px;letter-spacing:.03em}
.ad-launch .ad-launch-actions{margin-top:16px;display:flex;gap:10px;align-items:center}
.ad-launch button{background:#fff;color:#111;border:none;border-radius:8px;padding:9px 16px;font-weight:700;font-size:.85rem;cursor:pointer}
.ad-launch .ad-launch-count{color:#ddd;font-size:.75rem}
.ad-popup-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:190;display:flex;align-items:center;justify-content:center;padding:20px}
.ad-popup{background:var(--surface);border:1px solid var(--line);border-radius:14px;max-width:min(92vw,420px);overflow:hidden}
.ad-popup img{display:block;width:100%;height:auto}
.ad-popup .ad-popup-body{padding:12px 14px}
.ad-popup .ad-popup-actions{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.ad-popup .ad-popup-actions button{background:none;border:none;color:var(--sub);font-size:.78rem;cursor:pointer;padding:6px}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 12px}
@media(min-width:720px){.grid{grid-template-columns:repeat(3,1fr);gap:22px 18px}}
@media(min-width:1040px){.grid{grid-template-columns:repeat(4,1fr)}}
.card{cursor:pointer}
.catalog-note{grid-column:1/-1;text-align:center;color:var(--sub);font-size:var(--fs-small);padding:18px 0;border-top:1px dashed var(--line);margin-top:8px}
.catalog-lineup-link{margin:10px 0 18px}
.catalog-more{display:block;margin:18px auto;min-width:180px}
.lineup-controls{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.lineup-controls label{display:grid;gap:5px;flex:1 1 220px;font-weight:700}
.lineup-controls input,.lineup-controls select{min-height:44px;min-width:0;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);color:var(--ink);font:inherit;font-size:16px}
.lineup-controls select{align-self:end;flex:0 1 210px}
.lineup-items{display:grid;gap:8px;margin:12px 0 18px}
.lineup-item{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface2)}
.lineup-item h2{font-size:1rem;line-height:1.35;margin:5px 0}.lineup-item h2 a{color:var(--ink)}
.lineup-item p{font-size:.84rem;color:var(--sub);margin:0}.lineup-status{font-size:.75rem;color:var(--accent-fg);font-weight:700}
.lineup-action{flex:none;font-size:.82rem;color:var(--sub)}
@media(max-width:520px){.lineup-controls select{flex:1 1 100%}.lineup-item{align-items:flex-start}.lineup-action{font-size:.75rem}}
.cover{width:100%;aspect-ratio:3/4;border-radius:var(--radius);background:var(--surface2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden;padding:10px;box-sizing:border-box;position:relative}
.cover-big{aspect-ratio:3/4}
/* 사진 표시(handoff/game-package-photos-20260928.md UI 범위): 카탈로그 참고 이미지는 고정 3:4 박스 안에서 contain으로 보여 주고,
   로딩 중/실패/미승인이어도 박스 크기는 aspect-ratio가 정하므로 카드 높이와 스크롤이 변하지 않는다(이미지 크기가 레이아웃에 관여하지 않음). */
.cover.cover-real,.cover.imgph{flex-direction:column;gap:6px}
.cover img{width:100%;max-width:100%;max-height:100%;object-fit:contain;flex:1 1 0;min-height:0}
.cover .coverlabel{font-size:.76rem;line-height:1.35;color:var(--sub);text-align:center;flex:none}
/* 태그/플랫폼 칩은 이미지 위에 겹치지 않고 박스 안쪽 맨 위 줄(줄바꿈 허용)에 놓는다 -- 좁은 카드(390px 2열)에서도 서로 겹치지 않는다. */
.cover-head{display:flex;flex-wrap:wrap;gap:4px;width:100%;flex:none;min-height:0}
.cover-tag,.cover-plat{font-size:.72rem;font-weight:700;line-height:1.1;padding:3px 6px;border-radius:6px;background:var(--surface);border:1px solid var(--line);color:var(--sub);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cover-tag{border-color:var(--accent-fg);color:var(--accent-fg)}
.cover-tag.ok{border-color:var(--ok);color:var(--ok)}
/* 로컬 TEST 전용 참고 이미지(사용권 미확인)는 눈에 띄게: 점선 경고 테두리 + 박스 맨 위 고정 배너. 배너는 고정 박스 안의 흐름 요소라 카드 크기를 바꾸지 않는다. */
.cover.cover-test{border:1px solid #796947}
.cover-testbanner{width:100%;flex:none;background:#383325;color:#ebddb7;font-weight:700;font-size:.68rem;line-height:1.2;padding:3px 5px;border-radius:5px;text-align:center;border:1px solid #796947}
.imgph-icon{color:var(--sub);opacity:.8;flex:none}
.imgph-title{font-size:.8rem;font-weight:700;color:var(--ink);flex:none}
.cover-failed .coverlabel{color:var(--warn)}
.cover.cover-photo-only{padding:0;gap:0}
.cover.cover-photo-only img{display:block;width:100%;height:100%;max-height:none;min-height:0;object-fit:contain;flex:none}
.cover.cover-photo-only .coverlabel{display:none}
.cover.cover-photo-only.cover-failed .coverlabel{display:block;padding:12px}
.card:focus-visible,.tradedcard:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius)}
.imglabel{font-size:.72rem;color:var(--sub);margin-top:6px;cursor:pointer}
.imglabel a{color:var(--accent-fg)}
.imgph{color:var(--sub);font-size:.8rem;text-align:center}
/* 판매자 실물 사진(그 매물 전용): 52px 고정 + "실물" 태그로 카탈로그 참고 이미지와 구분 */
.thumbwrap{position:relative;flex:none;width:52px;height:52px;padding:0;border:0;background:none;border-radius:8px;cursor:zoom-in;display:block}
.thumbwrap:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.listthumb{display:block;width:52px;height:52px;border-radius:8px;object-fit:cover;background:var(--surface2);border:1px solid var(--line)}
.thumb-tag{position:absolute;left:2px;bottom:2px;font-size:.66rem;font-weight:800;line-height:1;padding:2px 4px;border-radius:4px;background:var(--accent);color:var(--accent-ink)}
.listthumb-ph{flex:none;width:52px;height:52px;border-radius:8px;background:var(--surface2);border:1px dashed var(--line);display:flex;align-items:center;justify-content:center;font-size:.6rem;line-height:1.25;color:var(--sub);text-align:center}
.card .title{margin-top:10px;font-size:.95rem;font-weight:700;line-height:1.35;height:2.6em;overflow:hidden}
.card .sub{font-size:var(--fs-small);color:var(--sub);margin-top:3px}
.card .price{margin-top:5px;font-weight:800;font-size:var(--fs-price)}
.card .pricenote{font-size:.68rem;color:var(--sub);margin-top:2px;line-height:1.3}
h1.pagetitle{font-size:var(--fs-pagetitle);font-weight:800;margin:4px 0 12px;letter-spacing:-.01em;color:var(--ink)}
/* 화면마다 <h2 style="font-size:...">로 흩어져 있던 섹션 제목을 이 클래스 하나로 통일한다(요구사항:
   "centralize a restrained scale... section title", "use shared tokens/classes instead of page-specific
   patches"). 관리자 화면의 과도하게 작던(.9rem) 제목은 이 값(1rem)으로 올라오고, 다른 화면의 1rem 제목은
   그대로 유지되어 화면 간 위계가 일관된다("raise undersized supporting text"). */
.section-title{font-size:var(--fs-section);font-weight:800;margin:0 0 10px;color:var(--ink);line-height:1.4}
.producttitle{font-size:var(--fs-product-title);font-weight:800;margin:4px 0 8px;letter-spacing:-.01em;color:var(--ink);line-height:1.3}
.home-value-prop{margin-bottom:12px}
.home-value-main{font-size:1.05rem;font-weight:800;color:var(--ink)}
.home-value-sub{font-size:.82rem;color:var(--sub);margin-top:2px}
.home-eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.14em;color:var(--accent-fg);margin-bottom:8px}
.home-browse-label{margin:0 0 10px;color:var(--sub)}
.is-home .mfr-grid{gap:10px}
.is-home .mfr-card{min-height:66px;padding:8px;gap:8px}
.is-home .mfr-icon{width:26px;height:26px;border-radius:7px;background:transparent}
.is-home .mfr-icon svg{width:25px;height:25px}
.is-home .mfr-name{font-size:.94rem;white-space:nowrap}
@media(max-width:719px){.is-home .mfr-card{min-height:62px}}
@media(max-width:360px){.is-home .mfr-name{font-size:.8rem}}
.sell-selector-heading{font-size:.96rem;font-weight:800;color:var(--ink);margin:4px 0 10px}
.sell-page-head{max-width:760px;margin:20px auto 14px}
.sell-page-head .pagetitle{margin:0 0 4px}
.sell-page-head p{margin:0;color:var(--sub)}
.sell-login-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:760px;margin:0 auto 14px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink)}
.sell-login-notice strong{font-size:.98rem}
.sell-login-notice p{margin:2px 0 0;color:var(--sub);font-size:.86rem}
.sell-login-notice .btn{flex:none}
.sell-form{max-width:760px;margin:0 auto;padding:clamp(16px,3vw,28px)}
.sell-form>.hr,.sell-form #sRest>.hr{margin:22px 0}
.sell-photo-box{border:1px dashed var(--accent);border-radius:12px;background:var(--muted-green);padding:18px;margin:12px 0 18px}
.sell-photo-box strong{display:block;font-size:.96rem;color:var(--ink)}
.sell-photo-box p{margin:5px 0 12px;color:var(--sub);line-height:1.5}
.sell-photo-box input[type=file]{width:100%;padding:9px;background:var(--surface2)}
.sell-photo-box input[type=file][hidden]{display:none}
.sell-mobile-photo-actions{display:none}
.sell-photo-box #sPhotoStatus{margin:8px 0;color:var(--sub)}
@media(max-width:719px){
  .sell-photo-box #sPhoto{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0;border:0}
  .sell-mobile-photo-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .sell-mobile-photo-actions .btn{min-height:44px;white-space:normal;text-align:center;justify-content:center}
}
.sell-check{display:flex;align-items:flex-start;gap:9px;margin-top:13px;line-height:1.5;color:var(--ink)}
.sell-check input[type=checkbox]{flex:none;width:18px;height:18px;margin:2px 0 0}
.sell-fee-note,.sell-trade-note{margin:12px 0;padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);line-height:1.55;color:var(--ink)}
.sell-trade-note{color:var(--sub)}
@media(max-width:719px){.sell-page-head{margin:12px 0}.sell-login-notice{align-items:stretch;flex-direction:column;gap:10px}.sell-login-notice .btn{width:100%}.sell-form{padding:16px}.sell-photo-box{padding:14px}}
.sell-choice-step{padding:12px 14px;margin:0 0 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.sell-product-search{padding:14px;margin:0 0 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.sell-product-search label{display:block;margin:0 0 8px;font-size:.9rem;font-weight:750;color:var(--ink)}
.sell-product-search input{display:block;width:100%;min-height:46px;margin:0;background:var(--surface2);color:var(--ink)}
.sell-product-search #sProductSearchStatus{min-height:1.4em;margin-top:7px;color:var(--sub)}
.sell-product-search #sUnlistedStart{margin-top:8px}
#sUnlistedFields input,#sUnlistedFields select{display:block;width:100%;min-height:44px;margin:0 0 10px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface2);color:var(--ink);font-size:1rem}
.sell-product-results{max-height:min(320px,42vh);overflow-y:auto;overscroll-behavior:contain;margin-top:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface2)}
.sell-product-results[hidden]{display:none}
.sell-product-result{display:flex;flex-direction:column;gap:3px;width:100%;padding:10px 12px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.sell-product-result:last-child{border-bottom:0}
.sell-product-result:hover,.sell-product-result:focus-visible{background:var(--surface)}
.sell-product-result:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.sell-product-result:disabled{opacity:.55;cursor:default}
.sell-grade-result{--grade-color:var(--sub);display:grid;gap:4px;min-height:82px;margin-top:14px;padding:13px 15px;border:1.5px solid var(--line);border-radius:10px;background:var(--surface2);color:var(--ink)}
.sell-grade-title{font-size:.9rem;font-weight:750;color:var(--sub)}
.sell-grade-value{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-size:1.35rem;line-height:1.2;font-weight:850;color:var(--grade-color)}
.sell-grade-code{font-size:2rem;line-height:1;font-weight:900;letter-spacing:.01em}
.sell-grade-caption{font-size:1rem;font-weight:750}
.sell-grade-help{font-size:.78rem;line-height:1.4;color:var(--sub)}
.sell-grade-result[data-grade="S+"]{--grade-color:#f4cf82;border-color:#a77b37;background:#2c271d}
.sell-grade-result[data-grade="S"]{--grade-color:#98d8c2;border-color:#538b75;background:#1c3028}
.sell-grade-result[data-grade="A"]{--grade-color:#99cef0;border-color:#4c829f;background:#1c2a32}
.sell-grade-result[data-grade="B"]{--grade-color:#f4bd82;border-color:#a7764f;background:#30251e}
.sell-grade-result[data-grade="C"]{--grade-color:#f1a1a1;border-color:#a65e61;background:#302124}
.sell-grade-result[data-state="invalid"]{--grade-color:var(--warn);border-color:var(--warn);background:var(--warn-solid)}
.sell-choice-step[hidden]{display:none}
.sell-choice-step label{display:block;font-size:.82rem;font-weight:750;color:var(--sub);margin:0 0 7px}
.sell-choice-step select{display:block;width:100%;margin:0;min-height:44px;background:var(--surface2);color:var(--ink)}
.sell-choice-step select[hidden]{display:none}
.sell-choice-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface2);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.sell-choice-trigger::after{content:'⌄';margin-left:10px;color:var(--sub);font-size:1.15em;line-height:1}
.sell-choice-trigger:focus-visible,.sell-choice-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sell-choice-trigger:disabled{opacity:.55;cursor:default}
.sell-choice-menu{margin-top:5px;max-height:min(240px,40vh);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:8px;background:var(--surface2)}
.sell-choice-menu[hidden]{display:none}
.sell-choice-option{display:block;width:100%;padding:10px 12px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.sell-choice-option:last-child{border-bottom:0}
.sell-choice-option:hover,.sell-choice-option[aria-selected="true"]{background:var(--surface)}
.sell-choice-option:disabled{color:var(--sub);opacity:.6;cursor:default}
.home-sell-prop{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;font-size:.85rem;color:var(--sub)}
.home-browse-intro{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 10px;color:var(--sub);font-size:.82rem}
.home-browse-intro span:first-child{color:var(--ink);font-weight:700}
.home-search-row{display:flex;gap:8px;margin-bottom:4px}
.home-search-row input{flex:1;border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:1rem;min-height:46px;background:var(--surface2);color:var(--ink)}
.home-search-row .btn{flex:none;width:auto;padding:0 20px}
.detail{display:grid;grid-template-columns:1fr;gap:20px}
@media(min-width:820px){.detail{grid-template-columns:380px 1fr}}
.detail .cover-big{width:100%;aspect-ratio:3/4;border-radius:14px}
@media(max-width:819px){.detail .cover-big{aspect-ratio:auto;height:250px}.detail{gap:12px}}
.badge{display:inline-block;font-size:.68rem;padding:3px 8px;border-radius:99px;font-weight:700;margin:0 6px 6px 0;border:1px solid var(--line);color:var(--sub)}
.badge.ok{color:var(--ok);border-color:var(--ok)}
.badge.warn{color:var(--warn);border-color:var(--warn)}
.hr{border:none;border-top:1px solid var(--line);margin:14px 0}
/* 가격을 가장 먼저 읽히는 숫자로 남기기 위한 "히어로" 크기 -- 조건별 최저가처럼 그 화면의 대표
   금액 하나에만 쓰고, 목록 각 행의 금액(.lprice)은 지금처럼 작게 유지해 위계를 만든다. */
.pricebox{font-size:1.55rem;font-weight:800;color:var(--ink)}
.small{font-size:var(--fs-small);color:var(--sub);line-height:1.6}
.src{font-size:.72rem;color:var(--sub);word-break:break-all}
.src a{color:var(--accent-fg)}
.filters{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.filters select{border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-size:.8rem;background:var(--surface2);color:var(--ink)}
.listrow{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-top:1px solid var(--line);gap:10px}
.listrow .lprice{font-weight:800;font-size:var(--fs-price);color:var(--ink)}
.shipnote{display:block;font-size:.66rem;font-weight:500;color:var(--sub);margin-top:1px}
.card .price .shipnote{display:inline}
.btnrow{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.btn{flex:1;text-align:center;padding:12px;border-radius:var(--radius);font-weight:800;font-size:.92rem;border:none;min-height:44px}
.btn.buy{background:var(--accent);color:var(--accent-ink)}
.btn.buy:hover{background:#a8e2cf}
.btn.buy:active{background:var(--accent-d)}
.btn.sell{background:transparent;color:var(--accent);border:1.5px solid var(--accent);padding:11.5px}
.btn.sell:hover{background:var(--accent-bg)}
.btn.sell:active{background:var(--muted-green)}
.btn.ghost{background:var(--surface2);border:1px solid var(--line);color:var(--ink)}
.btn.ghost:hover{border-color:var(--sub)}
.btn.ghost.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.btn:disabled{opacity:.4}
.form label{display:block;font-size:var(--fs-label);color:var(--sub);margin-top:12px;margin-bottom:4px;font-weight:700}
.form select,.form input[type=text],.form input[type=number],.form textarea,.form input[type=password],.form input[type=file],.form input[type=email],.form input[type=tel]{
  width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:.9rem;background:var(--surface2);color:var(--ink);min-height:44px}
.form textarea{min-height:80px}
/* 상품 건의: 공통 관리자 양식과 분리된 간결한 회원 입력 화면. */
.suggest-page{width:100%;max-width:600px;margin:28px auto 44px}
.suggest-header{margin-bottom:22px}
.suggest-header .pagetitle{margin:0 0 8px}
.suggest-header p{margin:0;color:var(--sub);font-size:15px;line-height:1.6;word-break:keep-all}
.suggest-private{display:inline-flex;align-items:center;gap:6px;margin-top:12px;color:var(--accent-fg);font-size:13px}
.suggest-private svg{flex:none}
.suggest-card{display:grid;gap:22px;padding:28px;border:1px solid var(--line);border-radius:16px;background:var(--surface);min-width:0}
.suggest-kind{border:0;padding:0;margin:0;min-width:0}
.suggest-kind legend,.suggest-field>label{display:block;padding:0;margin:0 0 9px;font-size:14px;font-weight:700;color:var(--ink)}
.suggest-kind legend{float:left;width:100%}
.suggest-kind-options{clear:both;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.suggest-kind-options label{position:relative;cursor:pointer;min-width:0}
.suggest-kind-options input{position:absolute;width:1px;height:1px;opacity:0;margin:0}
.suggest-kind-options span{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 4px;border:1px solid var(--line);border-radius:9px;background:var(--page);font-size:14px;font-weight:650;white-space:nowrap;color:var(--sub)}
.suggest-kind-options input:checked+span{border-color:var(--accent-fg);background:var(--accent-bg);color:var(--accent-fg)}
.suggest-kind-options input:focus-visible+span{outline:2px solid var(--accent-fg);outline-offset:3px}
.suggest-field{min-width:0}
.suggest-field label span{margin-left:5px;font-size:12px;font-weight:400;color:var(--sub)}
.suggest-field input,.suggest-field textarea{display:block;width:100%;max-width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--page);color:var(--ink);font:inherit;font-size:16px;line-height:1.5}
.suggest-field textarea{min-height:108px;resize:vertical}
.suggest-field input:focus,.suggest-field textarea:focus{border-color:var(--accent-fg)}
.suggest-submit{width:100%;min-height:48px;font-size:16px}
.suggest-result{padding:12px 14px;border-radius:9px;font-size:14px;line-height:1.5;background:var(--accent-bg);color:var(--accent-fg);word-break:keep-all}
.suggest-result[data-kind=error]{background:var(--surface2);color:var(--warn)}
.suggest-result[hidden]{display:none}
.suggest-login p{margin:0;color:var(--sub);line-height:1.6}
@media(max-width:599px){.suggest-page{margin:16px auto 28px}.suggest-header{margin-bottom:18px}.suggest-header .pagetitle{font-size:25px}.suggest-card{padding:20px;gap:20px}.suggest-kind-options{gap:6px}.suggest-kind-options span{font-size:13px}}
/* 입력값/자리표시자를 항상 뚜렷이 구분되게 유지한다(요구사항: "actual entered values must always be
   clearly visible and visually distinct from placeholders", "placeholders must remain readable but
   visibly secondary"). 브라우저 기본 자리표시자 투명도는 브라우저마다 달라 어떤 곳에서는 거의 안 보일
   정도로 흐려지므로, opacity:1을 명시하고 색은 --sub(이미 다크 배경에서 대비가 확인된 보조 텍스트 색)로
   고정한다 -- 페이지 전체 입력요소에 한 번만 적용해 화면마다 따로 손대지 않는다. */
::placeholder{color:var(--sub);opacity:1}
/* 크롬/사파리 자동완성은 배경을 강제로 밝은 노란/흰색으로 바꾸는데, 그대로 두면 다크 테마 위에 밝은
   상자가 떠서 대비가 깨진다(요구사항: "browser autofill... must preserve contrast"). 배경을 표면색으로,
   글자색을 그대로 유지하도록 강제한다(트랜지션 지연 트릭은 표준적으로 쓰이는 우회법). */
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus,
textarea:-webkit-autofill, select:-webkit-autofill{
  -webkit-box-shadow:0 0 0 1000px var(--surface2) inset;
  -webkit-text-fill-color:var(--ink);
  caret-color:var(--ink);
  transition:background-color 9999s ease-in-out 0s;
}
/* 비활성/읽기전용 입력은 버튼의 기존 규칙(.btn:disabled)과 같은 방식으로 흐리게 표시해 "선택할 수
   없는 상태"임을 알리되, 남은 글자는 여전히 읽을 수 있는 정도로만 낮춘다(불투명도 .6). */
input:disabled, select:disabled, textarea:disabled, input[readonly]{opacity:.6;cursor:default}
input[type=checkbox]:not(:disabled),input[type=radio]:not(:disabled){cursor:pointer}
.checklist label{display:flex;gap:8px;align-items:center;font-weight:500;font-size:.86rem;margin:6px 0}
.checklist input{width:auto}
.steps{display:flex;gap:6px;margin-bottom:16px}
.steps div{flex:1;height:4px;border-radius:2px;background:var(--line)}
.steps div.on{background:var(--accent)}
.msg-err{color:var(--warn);font-size:.8rem;margin-top:8px}
.msg-ok{color:var(--ok);font-size:.8rem;margin-top:8px}
.chatlist .row{display:flex;gap:10px;align-items:center;padding:12px 0;border-top:1px solid var(--line);cursor:pointer}
.chatlog{background:var(--surface2);border-radius:10px;padding:10px;min-height:260px;max-height:52vh;overflow:auto;display:flex;flex-direction:column;gap:8px}
.bubble{padding:8px 12px;border-radius:10px;background:var(--surface);border:1px solid var(--line);max-width:78%;font-size:.86rem;align-self:flex-start;color:var(--ink)}
.bubble.me{align-self:flex-end;background:var(--accent);color:var(--accent-ink);border-color:var(--accent-fg)}
.bubble.sys{align-self:center;background:none;border:none;font-size:.72rem;color:var(--sub)}
.bubble.card{align-self:center;width:100%;border-style:dashed}
.bubble.block{align-self:center;color:var(--warn);font-size:.78rem;background:var(--warn-solid);border-color:var(--warn)}
.restrictbanner{border:1.5px solid var(--warn);background:var(--warn-solid);border-radius:var(--radius);padding:12px 14px;margin-bottom:14px;color:var(--ink)}
.restrictbanner .small{color:var(--ink);opacity:.85}
.chatbtns{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
.chatbtns button{font-size:.72rem;padding:6px 9px;border-radius:8px;border:1px solid var(--line);background:var(--surface2);color:var(--ink)}
.sendrow{display:flex;gap:8px;margin-top:8px}
.sendrow input{flex:1;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--surface2);color:var(--ink)}
table.ledger{width:100%;border-collapse:collapse;font-size:.8rem}
table.ledger th,table.ledger td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line)}
@media(max-width:719px){
  header.top .desktop-nav,header.top .consoletabs-desktop{display:none}
  main{padding-bottom:calc(90px + env(safe-area-inset-bottom,0px))}
}
.empty{padding:40px 0;text-align:center;color:var(--sub);font-size:.86rem}
.reviewrow{padding:10px 0;border-top:1px solid var(--line);font-size:.86rem}
.stars{color:var(--accent-fg);font-weight:800}
.game-rating{color:var(--accent-fg)}
.seller-rating{color:#ffd18a}
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:flex-end;justify-content:center;z-index:50}
.modal{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:14px 14px 0 0;max-width:480px;width:100%;max-height:86vh;overflow:auto;padding:18px}
@media(min-width:720px){.modal-overlay{align-items:center}.modal{border-radius:14px}}
.modal.photomodal{max-width:640px;padding:12px}
.modal.photomodal img{width:100%;border-radius:10px;display:block}
.trade-guide-modal h2{margin:0 0 8px;font-size:1.3rem}
.trade-guide-modal p{margin:0;color:var(--sub)}
.trade-guide-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}
.trade-guide-choices .btn{display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:8px;line-height:1.2;text-align:center}
.trade-guide-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:24px}
.trade-guide-actions .btn{min-height:44px}
@media(max-width:420px){.trade-guide-actions .btn{flex:1;padding:0 8px}}
.trade-guide-page{max-width:760px;margin:0 auto;padding:20px 0 36px}
.trade-guide-lead{margin:0 0 18px;color:var(--sub);line-height:1.5}
.trade-guide-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}
.trade-guide-tabs a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-weight:700;line-height:1.2;text-align:center}
.trade-guide-tabs a[aria-current=page]{border-color:var(--accent-fg);background:var(--muted-green)}
.trade-guide-page-steps{list-style:none;display:grid;gap:10px;margin:0;padding:0}
.trade-guide-page-steps li{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.trade-guide-page-steps h2{font-size:1rem;margin:0 0 4px}
.trade-guide-page-steps p{margin:0;color:var(--sub);line-height:1.55;font-size:.9rem}
.trade-guide-page-steps .home-value-step-n{flex:none}
.trade-guide-note{margin:0 0 16px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);color:var(--sub);line-height:1.5;font-size:.85rem}
.trade-guide-next{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.trade-guide-next .btn{display:flex;align-items:center;justify-content:center;min-height:48px;line-height:1.2}
@media(max-width:719px){.trade-guide-page{padding:14px 0 28px}.trade-guide-page-steps li{padding:13px}.trade-guide-choices .btn{padding:8px;font-size:.84rem}}

.toastbox{position:fixed;left:0;right:0;bottom:calc(20px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:center;gap:8px;z-index:80;pointer-events:none}
@media(min-width:720px){.toastbox{bottom:24px}}
.toast{background:var(--surface2);color:var(--ink);border:1px solid var(--line);padding:10px 16px;border-radius:10px;font-size:.82rem;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s;max-width:86vw;text-align:center}
.toast.show{opacity:1;transform:translateY(0)}
.toast.err{background:var(--warn-solid);color:#fff;border-color:var(--warn)}
.toast.ok{background:var(--ok-solid);color:#fff;border-color:var(--ok)}

.btn.sm{flex:none;padding:7px 12px;font-size:.75rem;border-radius:8px;margin:0 6px 6px 0;display:inline-block;width:auto}
.btn.ghost[disabled]{opacity:.45;cursor:default}

.radiorow{display:flex;flex-wrap:wrap;margin-top:2px}
.radiorow label{font-size:.86rem}

.photogrid{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.photothumb{width:76px;height:76px;object-fit:cover;border-radius:8px;border:1px solid var(--line);background:var(--surface2)}
.photothumbwrap{position:relative}
.photodel{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:rgba(0,0,0,.7);color:#fff;border:none;font-size:.65rem;line-height:1;cursor:pointer}

.ostatus{font-weight:700}
.ostatus[data-status=pending_payment]{color:var(--warn)}
.ostatus[data-status=paid],.ostatus[data-status=shipped]{color:var(--ok)}
.ostatus[data-status=completed]{color:var(--ok)}
.ostatus[data-status=disputed],.ostatus[data-status=expired]{color:var(--warn)}
.countdown{color:var(--warn);font-weight:600;margin-top:4px}
/* 주문 내역 액션 줄(handoff/order-actions-visual-20260929.md): 주문취소/분쟁접수/주문 메시지가 버튼 유무와
   무관하게 같은 높이·글자·정렬을 갖도록 전용 컨테이너로 묶는다. 동작/권한/확인창은 그대로, 시각만 맞춘다. */
.order-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}
.order-actions .btn.sm{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:0;padding:0 16px;margin:0;font-size:.95rem;font-weight:700;line-height:1.2;border-radius:10px;text-align:center}
@media(max-width:390px){.order-actions{gap:6px}.order-actions .btn.sm{flex:1 1 auto;padding:0 10px;font-size:.9rem}}

/* 홈: 회사/기종 선택 아래 라운지 인기글 + 거래가 많은 게임 (독립 로딩/빈/오류 상태) */
.homesec-row{display:flex;flex-direction:column;gap:22px;margin-top:10px}
@media(min-width:820px){.homesec-row{flex-direction:row}.homesec{flex:1;min-width:0}}
.homesec-title{font-size:1.05rem;font-weight:800;margin:0 0 4px;color:var(--ink)}
.home-lounge-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.home-lounge-heading .homesec-title{margin:0}
.home-lounge-more{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:36px;padding:5px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:.82rem;font-weight:700;white-space:nowrap}
.home-lounge-more:hover{border-color:var(--accent-fg)}
.homefeed{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.tradedgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:10px}
@media(min-width:480px){.tradedgrid{grid-template-columns:repeat(3,1fr)}}
.tradedcard{display:block;border:1px solid var(--line);border-radius:var(--radius);padding:10px;background:var(--surface)}
.tradedcard:hover{border-color:var(--accent-fg)}
.tradedcard .cover{aspect-ratio:3/4}

.revbtns{margin-top:8px;display:flex;gap:6px;flex-wrap:wrap}
.revbody{margin:6px 0}
.revbody details{cursor:pointer}
.srcbox{margin:8px 0}
.srcbox summary{cursor:pointer;font-size:.78rem;color:var(--sub)}

.compare-box{background:var(--muted-green);border:1px solid var(--accent);border-radius:8px;padding:10px 12px;margin:8px 0;color:var(--ink)}
.mfr-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media(min-width:640px){.mfr-grid{grid-template-columns:repeat(4,1fr)}}
.mfr-card{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-align:left;min-height:64px}
.mfr-card:hover{border-color:var(--accent-fg)}
.mfr-card:active{background:var(--surface2)}
.console-mfr-grid{gap:10px;margin-bottom:25px}
.console-mfr-grid .mfr-card{min-height:66px;padding:8px;gap:8px}
.console-mfr-grid .mfr-icon{width:26px;height:26px;border-radius:7px;background:transparent}
.console-mfr-grid .mfr-icon svg{width:25px;height:25px}
.console-mfr-grid .mfr-name{font-size:.94rem;white-space:nowrap}
.console-mfr-grid .mfr-card[aria-current=page]{border-color:var(--accent-fg);background:var(--surface2)}
@media(max-width:719px){.console-mfr-grid .mfr-card{min-height:62px}}
.mfr-icon{flex:none;width:38px;height:38px;border-radius:10px;background:var(--surface2);display:flex;align-items:center;justify-content:center;color:var(--accent-fg)}
.mfr-card-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.mfr-name{font-weight:800;font-size:1.02rem;color:var(--ink)}
.mfr-sub{font-size:var(--fs-small);color:var(--sub)}
.crumbrow{font-size:.8rem;color:var(--sub);margin-bottom:10px}
.crumbrow a{color:var(--accent-fg);font-weight:600}
.consoletabs .crumb{align-self:center;font-weight:700;color:var(--sub);margin-right:4px;white-space:nowrap}

/* 매물 카드 왼쪽 등급 배지 + 판매자 이니셜 아바타(handoff/ui-reference-dark-mint-20260928.md 참고 화면) --
   둘 다 이미 있는 실제 값(등급/판매자명)을 다르게 보여줄 뿐, 새 데이터를 만들지 않는다. */
.condbadge{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:26px;padding:0 8px;border-radius:8px;border:1px solid var(--accent);color:var(--accent-fg);font-weight:800;font-size:.72rem}
.avatar{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--surface2);color:var(--sub);font-size:.62rem;font-weight:800;margin-right:4px;vertical-align:middle}
.avatar{position:relative;overflow:hidden;flex:none}
.avatar img{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit;object-fit:cover}
.seller-profile-head{display:flex;align-items:center;gap:12px;min-width:0}
.seller-profile-head .avatar{width:48px;height:48px;font-size:1.1rem;margin-right:0}
.seller-profile-head .pagetitle{min-width:0;overflow-wrap:anywhere;margin:0}
.seller-reviews-summary{color:var(--sub);font-size:.88rem;line-height:1.5;margin-bottom:16px}
.seller-reviews-panel .empty{padding:20px 0}
.seller-profile-summary{color:var(--sub);margin-top:8px;line-height:1.5}
.seller-listing-card{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 0;border-top:1px solid var(--line)}
.seller-listing-photo .thumbwrap,.seller-listing-photo .listthumb,.seller-listing-photo .listthumb-ph{width:68px;height:68px}
.seller-listing-info{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:3px}
.seller-listing-title{color:var(--ink);font-weight:800;line-height:1.35;text-decoration:none;overflow-wrap:anywhere}
.seller-listing-title:hover{text-decoration:underline;text-underline-offset:3px}
.seller-listing-info>.small{color:var(--sub);font-size:.76rem;overflow-wrap:anywhere}
.seller-listing-condition{font-size:.79rem;color:var(--sub);line-height:1.4}
.seller-listing-condition .badge{margin:0 0 0 4px;vertical-align:middle}
.seller-listing-price{justify-self:end;color:var(--ink);font-size:1.05rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.seller-listing-price .pricenote{display:block;text-align:right}
@media(max-width:600px){.seller-listing-card{grid-template-columns:60px minmax(0,1fr);gap:10px}.seller-listing-photo .thumbwrap,.seller-listing-photo .listthumb,.seller-listing-photo .listthumb-ph{width:60px;height:60px}.seller-listing-price{grid-column:2;justify-self:start;font-size:1rem}.seller-listing-price .pricenote{text-align:left}}

/* 최근 체결 시세: 서버가 내려준 실제 최저/중간값/최고 3개 값만 막대로 시각화한다(허구 히스토리 아님) */

/* 게임/판본 상세 페이지 하단 컴팩트 푸터(handoff/ui-reference-dark-mint-20260928.md 화면 6 참고) */
.pagefooter{border-top:1px solid var(--line);margin-top:28px;padding:16px 0 6px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px}
.pagefooter-brand{font-weight:800;color:var(--accent-fg)}

/* 관리자 패키지 사진(직접 촬영) 등록/검수 화면 -- 승인 전 비공개 사진은 항상 "공개 아님"으로 보이게 한다. 모든 조작 요소는 44px 이상. */
.pp-note{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:12px 14px;margin-bottom:14px;line-height:1.55}
.pp-note ul{margin:6px 0 0;padding-left:18px;color:var(--sub);font-size:var(--fs-small)}
.pp-note li{margin:4px 0}
.pp-pick select,.pp-pick input[type=text]{min-height:44px}
.pp-games,.pp-editions{margin-top:10px}
.pp-gamelist{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;margin-top:8px}
.pp-game{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;min-height:52px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);color:var(--ink)}
.pp-game.on{border-color:var(--accent-fg);background:var(--accent-bg)}
.pp-game:disabled{opacity:.5;cursor:default}
.pp-game-t{font-weight:700;overflow-wrap:anywhere}
.pp-eds{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;margin:8px 0 0;min-width:0}
.pp-eds legend{font-weight:800;padding:0 6px}
.pp-ed{display:flex;gap:10px;align-items:flex-start;min-height:44px;padding:8px 6px;border-top:1px solid var(--line);cursor:pointer}
.pp-ed:first-of-type{border-top:none}
.pp-ed input{width:22px;height:22px;margin:2px 0 0;flex:none}
.pp-ed.disabled{opacity:.55;cursor:default}
.pp-work{margin-top:18px}
.pp-selected{border:2px solid var(--accent);background:var(--accent-bg);border-radius:var(--radius);padding:12px 14px;margin-bottom:6px}
.pp-sel-t{font-size:1.1rem;font-weight:800;overflow-wrap:anywhere}
.pp-item{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;padding:14px 0;border-top:1px solid var(--line)}
.pp-item[data-status=unverified]{border-left:3px dashed var(--sub);padding-left:10px}
.pp-item[data-visible=true]{border-left:3px solid var(--ok);padding-left:10px}
.pp-thumb{width:150px;aspect-ratio:3/4;background:var(--surface2);border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden;text-align:center;font-size:.72rem;color:var(--sub)}
.pp-thumb img{width:100%;height:100%;object-fit:contain;display:block}
.pp-thumb-fail{color:var(--warn);padding:8px;border-color:var(--warn)}
.pp-meta{min-width:0}
.pp-vis{margin:4px 0}
.pp-dl{display:grid;grid-template-columns:minmax(72px,auto) minmax(0,1fr);gap:3px 10px;margin:8px 0 0;font-size:var(--fs-small)}
.pp-dl dt{color:var(--sub)}
.pp-dl dd{margin:0;overflow-wrap:anywhere}
.pp-ext{margin-top:10px;color:var(--sub);font-size:var(--fs-small)}
.pp-ext summary{min-height:44px;display:flex;align-items:center;cursor:pointer}
.pp-target{border:1px dashed var(--accent);border-radius:10px;padding:10px 12px;margin-bottom:8px;font-size:var(--fs-small);color:var(--ink);line-height:1.6}
.pp-form input[type=date]{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:.9rem;background:var(--surface2);color:var(--ink);min-height:44px}
.pp-form input[type=text],.pp-form select,.pp-form input[type=file]{min-height:44px}
.pp-form label.pp-attest,.pp-modal label.pp-attest{display:flex;gap:10px;align-items:flex-start;font-weight:500;font-size:.86rem;color:var(--ink);margin-top:14px;min-height:44px}
.pp-form .pp-attest input,.pp-modal .pp-attest input{width:22px;height:22px;flex:none;margin:1px 0 0}
.pp-form [aria-invalid=true]{border-color:var(--warn);outline:1px solid var(--warn)}
.pp-ferr{margin-top:4px}
.pp-errsum{border:2px solid var(--warn);background:var(--warn-solid);color:#fff;border-radius:10px;padding:10px 12px;margin-bottom:8px;font-size:.86rem;line-height:1.5}
.pp-errsum ul{margin:6px 0 0;padding-left:18px}
.pp-errsum a{color:#fff;text-decoration:underline;display:inline-block;min-height:24px}
.pp-preview{margin-top:10px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.pp-preview canvas{max-width:100%;height:auto;border:1px dashed var(--sub);border-radius:8px;background:var(--surface2)}
.pp-okmsg{border:1px solid var(--ok);border-radius:10px;padding:10px 12px;color:var(--ink);margin-top:8px}
.pp-modal{max-width:520px}
.pp-ap-img{width:100%;max-height:52vh;aspect-ratio:4/3;background:var(--surface2);border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:10px;text-align:center;color:var(--warn);font-size:.8rem}
.pp-ap-img img{width:100%;height:100%;object-fit:contain}
.pp-warnbox{border:1.5px solid var(--warn);background:var(--warn-solid);color:#fff;border-radius:10px;padding:10px 12px;margin:10px 0;font-size:.84rem;line-height:1.55}
@media(max-width:560px){
  .pp-item{grid-template-columns:1fr}
  .pp-thumb{width:min(220px,100%)}
  .pp-gamelist{grid-template-columns:1fr}
}
.pp-back{display:inline-flex;align-items:center;min-height:44px}
.pp-item .badge,.pp-selected .badge,.pp-ed .badge,.pp-title-badge{font-size:.82rem;line-height:1.35}
.pp-thumb,.pp-ap-img{font-size:.82rem}
.pp-work .btn.sm,.pp-games .btn.sm,.pp-editions .btn.sm{font-size:.82rem}

/* 홈/게임 화면 "지금 게임칩 시장": 판매 중(ACTIVE)과 구매확정 거래(완료)는 항상 별도 블록. 값이 없으면 없다고 표시한다. */
.mkt-sec{margin-top:6px;min-height:96px}
.game-profile{margin:14px 0 4px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.game-profile-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}
.game-profile-facts>div{min-width:0;display:flex;flex-direction:column;gap:3px}
.game-profile-facts span{font-size:var(--fs-small);color:var(--sub)}
.game-profile-facts strong{font-size:.91rem;line-height:1.4;font-weight:650;color:var(--ink);overflow-wrap:anywhere}
.game-profile-summary{font-size:.9rem;line-height:1.55;color:var(--ink);margin:12px 0 6px}
.game-profile-source{color:var(--sub);line-height:1.45;margin:0}
.game-profile-source a{color:var(--accent-fg)}
@media(max-width:560px){.game-profile{padding:12px}.game-profile-facts{gap:9px 10px}.game-profile-facts strong{font-size:.85rem}}
.is-home .mkt-sec{min-height:400px}
.home-chart{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px;margin:14px 0 18px}
.home-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.home-chart-head .btn{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:44px;line-height:1.2}
.home-chart-head h3{font-size:1.12rem;line-height:1.35;margin:4px 0 0;color:var(--ink)}
.home-chart-body{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:12px;align-items:start;margin-top:10px}
.home-chart-plot{min-width:0}
.home-chart-body .mkt-series{margin:0;min-width:0}
.home-chart-body .mkt-svg{height:auto;max-height:none;aspect-ratio:420/174}
.home-grade-graph{min-width:0}
.home-grade-line{fill:none;stroke:var(--grade-color);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.home-grade-dot{fill:var(--grade-color);stroke:var(--surface);stroke-width:1.5}
.home-grade-dot:focus-visible{stroke:var(--ink);stroke-width:3;outline:none}
.home-grade-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin:6px 0;font-size:.79rem;color:var(--ink)}
.home-grade-legend span{display:inline-flex;align-items:center;gap:5px}
.home-grade-legend i{width:11px;height:11px;border-radius:50%;display:inline-block;flex:none}
.home-chart-graph-footer{margin-top:8px}
.home-chart-graph-footer .home-grade-legend{margin:0 0 4px}
.home-chart-empty{display:flex;align-items:center;justify-content:center;min-height:145px;border:1px dashed var(--line);border-radius:9px;padding:20px;color:var(--sub);text-align:center;line-height:1.5}
/* 2026-09-30 owner 재요청: 구매가능 최저가/최근 거래가 요약은 이제 오른쪽 좁은 칸이 아니라 본문 아래
   전체 폭 2단 행으로 옮겨(과도한 세로 빈 공간 축소, 아래 .home-chart-right 주석 참고). */
.home-chart-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.home-chart-facts>div{border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:var(--surface2);display:flex;flex-direction:column;gap:3px}
.home-chart-facts span,.home-chart-facts small{color:var(--sub);font-size:.75rem;line-height:1.35}
.home-chart-facts strong{font-size:1.1rem;color:var(--ink)}
/* 시세 그래프 오른쪽: 선택된 게임의 큰 패키지 이미지 + 등급별 ACTIVE 매물 요약(owner 요청, 2026-09-30).
   2026-09-30 재요청: 오른쪽 칸이 그래프보다 훨씬 길어 카드 아래에 빈 공간이 크게 남던 문제 -- 이미지를
   줄이고(220px->170px) .home-chart-facts를 이 칸 밖으로 옮겨 그래프 높이에 더 가깝게 맞췄다. */
.home-chart-right{display:grid;grid-template-columns:minmax(120px,.85fr) minmax(0,1.15fr);align-items:stretch;gap:8px;min-width:0}
.home-chart-img{display:flex;align-items:center;justify-content:center;min-height:160px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);overflow:hidden;text-decoration:none;color:inherit}
.home-chart-img .cover{max-width:160px;aspect-ratio:1;margin:0 auto;border:0;background:transparent}
.home-chart-img .cover .cover-head,.home-chart-img .cover .coverlabel,.home-chart-img .cover .imgph-title{display:none}
.home-chart-img-note{text-align:center;color:var(--sub);margin-top:4px}
.home-chart-grades{border:1px solid var(--line);border-radius:9px;padding:8px 10px;background:var(--surface2)}
.home-chart-grades-h{margin:0 0 6px;font-size:.85rem;color:var(--ink);display:flex;align-items:center;gap:6px}
.home-grade-active-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}
.home-grade-active-list li{display:flex;align-items:center;gap:8px;min-height:20px}
.home-grade-active-list li.skeleton{background:var(--surface);border-radius:6px;opacity:.5}
.home-grade-active-badge{flex:none;min-width:26px;text-align:center;border-radius:6px;padding:2px 6px;font-weight:800;font-size:.75rem;background:var(--accent-bg);color:var(--accent-fg)}
.home-grade-active-price{font-weight:700;color:var(--ink);font-size:.85rem}
.home-chart-grades .small{margin-top:6px;display:block}
.home-chart-selector{display:flex;gap:6px;overflow-x:auto;scrollbar-gutter:stable;margin-top:8px;padding-bottom:3px}
.home-chart-option{flex:none;max-width:136px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);color:var(--sub);padding:6px 10px;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.home-chart-option.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:800}
.home-chart-option:focus-visible,.home-market-more:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.home-listing-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:12px 0 8px}
.home-listing-head h3{font-size:1.1rem;color:var(--ink);margin:0}
/* 홈 시장 카드 행(rail): 카드 수만큼 실제로 렌더링하고 숨기지 않는다 -- 데스크톱 ~1100px에서 대략 6장이 한 번에 보이고,
   넘치면 가로 스크롤/화살표/키보드(←→,Home,End)로 나머지를 본다. 카드 폭이 고정이라 이동 중에도 행 높이가 바뀌지 않는다. */
.home-rail-wrap{position:relative;margin:0}
.home-rail{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:2px 2px 6px;scroll-padding-left:2px}
.home-rail::-webkit-scrollbar{display:none}
.home-rail:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:10px}
.home-market-cell{flex:0 0 auto;width:150px;min-width:0;scroll-snap-align:start}
@media(min-width:640px){.home-market-cell{width:176px}}
@media(min-width:1080px){.home-market-cell{width:178px}}
.home-rail-nav{position:absolute;top:calc(50% - 30px);transform:translateY(-50%);z-index:2;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:1.3rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.4)}
.home-rail-prev{left:-6px}
.home-rail-next{right:-6px}
.home-rail-nav[hidden]{display:none}
.home-rail-nav:disabled{opacity:.35;cursor:default}
.home-rail-nav:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.home-rail-nav:hover:not(:disabled){border-color:var(--accent-fg);color:var(--accent-fg)}
.home-rail-pos{text-align:right;margin-top:4px}
.home-rail-pos[hidden]{display:none}
.home-market-card{height:100%;padding:8px;gap:0}
.home-market-link{display:flex;flex-direction:column;gap:4px;min-width:0;height:100%;color:inherit}
.home-market-link:hover .home-market-title{color:var(--accent-fg)}
.home-market-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}
.home-market-link .cover{width:100%;aspect-ratio:1;min-height:0;padding:6px}
.home-market-link .cover img{max-height:100%;object-fit:contain}
.home-market-link .cover .cover-head,.home-market-link .cover .coverlabel,.home-market-link .cover .imgph-title{display:none}
.home-market-link .cover .cover-testbanner{font-size:.62rem;line-height:1.2;padding:3px 4px}
.home-market-title{font-size:.87rem;font-weight:800;line-height:1.3;min-height:2.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:5px}
.home-market-price{font-size:1rem;font-weight:850;color:var(--ink);line-height:1.25;margin-top:3px}
.home-market-card .small{font-size:.7rem;line-height:1.35}
.home-market-recent{border-top:1px solid var(--line);padding-top:5px;margin-top:4px}
.home-market-open{color:var(--accent-fg);font-size:.77rem;font-weight:800;margin-top:auto;padding-top:6px}
/* 시세 확인/상품 등록/안전한 거래 + 실제 값만 안내 + 내 게임장(준비 중) — 카드 행 아래 보조 패널(마케팅 슬라이드 아님). */
.home-value-panels{display:grid;grid-template-columns:1fr;gap:10px;margin-top:18px}
@media(min-width:820px){.home-value-panels{grid-template-columns:repeat(2,1fr)}}
.home-value-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px 16px}
.home-value-panel h4{margin:0 0 8px;font-size:.95rem;color:var(--ink)}
.home-value-panel .badge{margin-left:6px;font-size:.78rem}
.home-value-panel p.small{margin:0}
.home-value-steps ol{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:9px}
.home-value-steps li{display:flex;align-items:flex-start;gap:9px;font-weight:700;font-size:.86rem;color:var(--ink)}
.home-value-steps li>span:last-child{display:flex;flex-direction:column;gap:1px}
.home-value-steps li .small{font-weight:500;color:var(--sub)}
.home-value-step-n{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--accent-bg);color:var(--accent-fg);font-size:.8rem;font-weight:800;flex:none;margin-top:1px}
.home-value-steps .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:2px}
@media(max-width:719px){.home-chart{padding:12px}.home-chart-head{flex-wrap:wrap}.home-chart-body{grid-template-columns:1fr}.home-chart-right{grid-template-columns:minmax(110px,.85fr) minmax(0,1.15fr)}.home-chart-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.home-listing-head{flex-wrap:wrap}.home-chart-body .mkt-svg{height:auto}}
@media(max-width:719px){.home-chart{margin:10px 0 14px}.home-chart-head{flex-wrap:nowrap;align-items:flex-end;gap:8px}.home-chart-head>div{min-width:0;flex:1}.home-chart-head h3{font-size:1rem;line-height:1.3}.home-chart-head .btn{min-height:38px;padding:7px 9px;font-size:.75rem;white-space:nowrap}.home-chart-range{display:none}.home-chart-body{margin-top:10px}.home-chart-empty{min-height:72px;padding:10px 14px;font-size:.83rem}}
@media(max-width:719px){.home-chart-img{min-height:0}}
.mkt-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:10px}
@media(min-width:720px){.mkt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1040px){.mkt-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.mcard{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:12px;display:flex;flex-direction:column;gap:10px;min-width:0}
.mcard[data-demo=true]{border-style:dashed}
.mkt-block{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface2);min-width:0}
.mkt-trades{border-left:4px solid var(--sub)}
.mkt-h{margin:0 0 4px;font-size:.92rem;font-weight:800;color:var(--ink);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mkt-tag{font-size:.8rem;font-weight:700;color:var(--sub);border:1px solid var(--line);border-radius:99px;padding:1px 8px}
.mkt-big{font-size:var(--fs-price);font-weight:800;color:var(--ink);line-height:1.3}
.mkt-from{font-size:.86rem;font-weight:600;color:var(--sub)}
.mkt-none{font-size:.9rem;color:var(--sub);line-height:1.5}
.mkt-count{margin-top:4px}
.mkt-demo{color:var(--warn)}
.mkt-foot{margin-top:10px}
.mkt-series{margin-top:8px}
.mkt-svg{display:block;width:100%;height:auto;max-height:90px;background:var(--surface);border:1px solid var(--line);border-radius:8px}
.mkt-range{stroke:var(--sub);stroke-width:2;stroke-linecap:round}
.mkt-dot{fill:var(--accent)}
.mkt-dot:focus-visible{stroke:var(--ink);stroke-width:2;outline:none}
.mkt-guide{fill:none;stroke:var(--accent);stroke-width:2;stroke-dasharray:5 5;opacity:.75;pointer-events:none}
.mkt-gridline{stroke:var(--line);stroke-width:1;pointer-events:none}
.mkt-tick{fill:var(--sub);font-size:11px;font-family:inherit}
.mkt-axis{display:flex;justify-content:space-between;gap:6px;margin-top:2px}
.mkt-days summary{min-height:44px;display:flex;align-items:center;cursor:pointer}
.mkt-days ul{margin:0 0 6px;padding-left:18px;font-size:var(--fs-small);color:var(--sub)}
.mkt-panel{display:grid;grid-template-columns:1fr;gap:10px;margin:8px 0}
@media(min-width:1040px){.mkt-panel{grid-template-columns:1fr 1fr}}
.mkt-title-sec{margin:6px 0 10px}
.title-hero{grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:34px;align-items:center;margin:20px 0 42px}
.title-hero .cover-big{aspect-ratio:4/3;max-height:390px}
.title-hero-copy{min-width:0}
.title-kicker{color:var(--accent-fg);font-size:.8rem;font-weight:700;letter-spacing:.04em;margin-bottom:12px}
.title-hero .producttitle{font-size:clamp(1.6rem,2.4vw,2.15rem);line-height:1.22;margin:0 0 22px}
.title-summary{font-size:.98rem;line-height:1.65;color:var(--ink);margin:0 0 22px;max-width:60ch}
.title-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 0 16px;border-bottom:1px solid var(--line)}
.title-facts>div{display:flex;flex-direction:column;gap:5px;min-width:0}
.title-facts span{font-size:.79rem;color:var(--sub)}
.title-facts strong{font-size:.94rem;line-height:1.4;color:var(--ink);overflow-wrap:anywhere}
.title-source{padding:10px 0 0;overflow-wrap:anywhere}
.title-source a{color:var(--accent-fg)}
.title-hero-actions{margin-top:16px;gap:8px}
.title-hero-actions .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.title-market-board{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:24px;margin-top:10px}
.title-market-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.title-market-stats>div{display:flex;flex-direction:column;gap:7px;min-width:0}
.title-market-stats span{font-size:.79rem;color:var(--sub)}
.title-market-stats strong{font-size:clamp(1.16rem,2vw,1.52rem);color:var(--accent-fg);line-height:1.25}
.title-condition-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:13px 0 8px}
.title-condition-option{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;min-height:105px;padding:15px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer}
.title-condition-option[aria-pressed="true"]{background:var(--surface2);border-color:var(--sub);box-shadow:none}
.title-condition-option:focus-visible{outline:2px solid var(--accent-fg);outline-offset:3px}
.title-condition-option>span{font-size:.84rem;font-weight:750;color:var(--sub)}
.title-condition-option strong{font-size:1.16rem;line-height:1.2}
.title-condition-option small{color:var(--sub);font-size:.75rem;line-height:1.35}
.title-condition-note{color:var(--sub)}
.title-list-more{display:block;width:min(100%,360px);margin:14px auto 0;min-height:44px}
.title-market-compare-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:26px;color:var(--ink)}
.title-market-compare-head strong{font-size:.96rem}
.title-market-compare-head span{font-size:.78rem;color:var(--sub)}
.title-market-compare{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.title-market-offer{display:flex;flex-direction:column;gap:7px;min-width:0;min-height:112px;padding:15px;border:1px solid var(--line);border-left:4px solid var(--offer-color);border-radius:10px;background:var(--surface2,#242a29)}
.title-market-offer.rank-1{--offer-color:#9adac3}.title-market-offer.rank-2{--offer-color:#8eb8e9}.title-market-offer.rank-3{--offer-color:#e7bd83}
.title-market-offer-rank{color:var(--offer-color);font-size:.79rem;font-weight:750}
.title-market-offer-price{color:var(--ink);font-size:clamp(1.08rem,1.6vw,1.34rem);line-height:1.2;white-space:nowrap}
.title-market-offer-detail{color:var(--sub);font-size:.78rem;line-height:1.4;overflow-wrap:anywhere}
.title-market-bars{display:flex;align-items:end;justify-content:center;gap:12px;min-height:240px;padding:28px 0 0;border-bottom:1px solid var(--line)}
.title-market-bar-cell{width:min(22%,190px);height:205px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:0}
.title-market-bar-price{font-size:.82rem;color:var(--ink);margin-bottom:7px;white-space:nowrap}
.title-market-bar{width:100%;min-height:12px;max-height:150px;background:#587d67;border-radius:6px 6px 0 0;flex:none}
.title-market-bar.best{background:#a4ddbf}
.title-market-bar-label{position:relative;top:8px;font-size:.73rem;color:var(--sub);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.title-market-foot{padding-top:18px}
.title-market-empty{min-height:140px;display:flex;align-items:center;justify-content:center;text-align:center}
.title-market-trades{margin:14px 0 30px}
.title-editions{margin:28px 0}
.title-all-listings-heading{font-size:.82rem;line-height:1.35;color:var(--sub);margin:3px 0 12px}
.title-edition-hint{margin:12px 0 4px}
#editionPicker:not(:empty){margin-bottom:18px}
#titleAllListings .lrow{margin-bottom:10px}
@media(max-width:819px){.title-hero{grid-template-columns:1fr;gap:18px;margin:12px 0 28px}.title-hero .cover-big{aspect-ratio:4/3;height:auto;max-height:340px}}
@media(max-width:560px){.title-hero .cover-big{height:260px;aspect-ratio:auto}.title-hero .producttitle{margin-bottom:14px}.title-summary{margin-bottom:16px}.title-facts{gap:8px}.title-facts strong{font-size:.82rem}.title-market-board{padding:15px}.title-market-stats{gap:8px}.title-market-stats span{font-size:.72rem}.title-market-bars{gap:8px;min-height:185px}.title-market-bar-cell{width:31%;height:150px}.title-market-bar{max-height:105px}.title-market-bar-price{font-size:.72rem}.title-market-bar-label{font-size:.66rem}}
@media(max-width:560px){.title-market-compare{grid-template-columns:1fr}.title-market-offer{min-height:0;gap:5px;padding:12px}.title-market-compare-head{margin-top:20px}.title-market-compare-head strong{font-size:.88rem}}
@media(max-width:560px){.title-condition-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.title-condition-option{min-height:94px;padding:12px}.title-condition-option strong{font-size:1.06rem}}
@media(max-width:560px){#titleAllListings .listrow{flex-direction:column;align-items:stretch;gap:5px;padding:12px 0}#titleAllListings .listrow>span:first-child{width:100%;min-width:0;align-items:flex-start!important}#titleAllListings .listrow>span:first-child>span:last-child{min-width:0}#titleAllListings .listrow>span:last-child{display:block;width:100%;text-align:left!important;padding-left:32px}#titleAllListings .listrow .lprice{font-size:1.04rem}}
@media(max-width:560px){#titleAllListings .listrow .condbadge{display:none}#titleAllListings .listrow>span:last-child{padding-left:0}}
.ed-market{color:var(--sub)}
.mkt-sec .btn,.mkt-title-sec .btn,.mcard .btn{font-size:.85rem}
.mkt-sec .badge,.mkt-title-sec .badge,.mcard .badge{font-size:.8rem}
.mkt-sec .demo-note,.mkt-title-sec .demo-note,.mcard .demo-note{font-size:.82rem}

/* 게임칩거래소 로고(05 열린 프레임): 마크(currentColor 프레임 + 민트 모서리) + 글자. by HOBBYON은 보조. 라이트 배경용 토큰은 .on-light로 확인/재사용한다. */
:root{--logo-ink:#f3f1ec;--logo-accent:#98d8c2;--logo-sub:#a7acab}
.on-light{--logo-ink:#18314A;--logo-accent:#9ADAC3;--logo-sub:rgba(24,49,74,.72)}
.logo{display:inline-flex;align-items:center;gap:9px;color:var(--logo-ink);min-height:44px;flex:0 0 auto}
.logo-mark{width:32px;height:32px;flex:none;display:block}
.logo-text{display:flex;flex-direction:column;line-height:1.1;gap:0}
.logo-name{font-weight:800;font-size:1.18rem;letter-spacing:-.05em;color:var(--logo-ink);white-space:nowrap}
/* by HOBBYON: 이름보다 뚜렷이 작고 붙어 보이도록(오너 지적) 자간을 좁히고 이름 바로 아래로 당긴다. 문구/마크는 그대로. */
.logo-by{font-weight:650;font-size:.75rem;letter-spacing:.02em;color:var(--logo-sub);white-space:nowrap;margin-top:-1px}
.logo:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}
.msglink{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:44px;padding:0 6px;font-size:.82rem;font-weight:700;color:var(--sub);white-space:nowrap;position:relative}
.msglink[hidden]{display:none}
.msglink:hover,.msglink.active{color:var(--accent-fg)}
.msglink-icon{width:23px;height:23px;flex:none}
.msglink-count{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#dc3545;color:#fff;font-size:.7rem;line-height:1;font-weight:850;font-variant-numeric:tabular-nums}
.msglink-count[hidden]{display:none}
@media(max-width:719px){.top-inner{padding-left:12px;padding-right:12px;column-gap:8px}.top-actions{gap:4px}.msglink{width:34px;min-width:34px;padding:0}.msglink-count{position:absolute;top:0;right:-4px;min-width:18px;height:18px;padding:0 3px;font-size:.63rem}}
@media(max-width:400px){.sellcta,.loginbtn{padding:0 9px}.logo-name{font-size:1rem}}
@media(max-width:360px){.top-inner{padding-left:8px;padding-right:8px}.top-actions{gap:2px}.sellcta{padding:0 7px}.mobile-search-toggle{width:34px}.msglink{width:30px;min-width:30px}.logo-by{display:none}}
@media(max-width:400px){.logo{gap:7px}.logo-mark{width:28px;height:28px}.logo-name{font-size:1.05rem}}
@media(max-width:360px){.top-inner{flex-wrap:nowrap;gap:3px}.logo{gap:4px}.logo-mark{width:23px;height:23px}.logo-name{font-size:.88rem}.top-actions{gap:1px}.mobile-search-toggle{width:29px}.msglink{width:27px;min-width:27px}.msglink-icon{width:20px;height:20px}.sellcta{font-size:.7rem;padding:0 5px}}

/* 거래 메시지: 상품 문의(매물에 묶임) / 주문 메시지(주문 ID에 묶임) / 메시지함. 모든 조작 요소는 44px 이상, 글자 12px 이상. */
.lrow{min-width:0;margin:10px 0}
.listing-card{display:grid;grid-template-columns:112px minmax(0,1fr) 124px;gap:12px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
.listing-card-photo,.listing-card-photo .thumbwrap,.listing-card-photo .listthumb,.listing-card-photo .listthumb-ph{width:112px;height:112px;border-radius:9px}
.listing-card-photo .listthumb{object-fit:cover}
.listing-card-photo .listthumb-ph{font-size:.78rem}
.listing-card-main{min-width:0;min-height:112px;display:flex;flex-direction:column}
.listing-card-head{display:flex;align-items:flex-start;gap:6px;min-width:0}
.listing-card-head .condbadge{flex:none;margin:2px 0 0}
.listing-card-condition{font-weight:750;line-height:1.35;min-width:0;overflow-wrap:anywhere}
.listing-card-head .interest-heart{flex:none;margin-left:auto;width:34px;height:34px;border-radius:8px}
.listing-card-price{font-size:1.32rem;font-weight:850;line-height:1.3;white-space:nowrap;font-variant-numeric:tabular-nums;margin:5px 0;color:var(--ink)}
.listing-card-price .shipnote{font-size:.72rem}
.listing-card-seller,.listing-card-rating,.listing-card-date{font-size:.78rem;color:var(--sub);line-height:1.35;margin-top:3px;overflow-wrap:anywhere}
.listing-card-meta{display:flex;align-items:end;justify-content:space-between;gap:5px;margin-top:auto;min-width:0}
.listing-card-meta .listing-card-rating{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.listing-card-meta .listing-card-date{flex:none;white-space:nowrap;text-align:right}
.listing-card-actions{display:flex;flex-direction:column;gap:6px;min-width:0}
.listing-card-actions .btn{width:100%;min-height:44px;margin:0;display:inline-flex;align-items:center;justify-content:center;font-size:.83rem;font-weight:800;line-height:1.2;padding:8px}
.listing-card-actions .offer-unavailable:disabled{background:#303639;border-color:#485255;color:#b7c0bd;opacity:1;cursor:default}
.listing-card-actions .pricenote{line-height:1.3}
@media(max-width:700px){.listing-card{grid-template-columns:124px minmax(0,1fr);gap:9px 11px;padding:10px}.listing-card-photo,.listing-card-photo .thumbwrap,.listing-card-photo .listthumb,.listing-card-photo .listthumb-ph{width:124px;height:124px}.listing-card-main{min-height:124px}.listing-card-condition{font-size:.88rem}.listing-card-price{font-size:1.23rem}.listing-card-actions{grid-column:1/-1;flex-direction:row}.listing-card-actions .btn{flex:1 1 0;width:0;min-width:0;white-space:nowrap;font-size:.78rem}.listing-card-actions .pricenote{align-self:center}}
@media(max-width:360px){.listing-card{grid-template-columns:104px minmax(0,1fr)}.listing-card-photo,.listing-card-photo .thumbwrap,.listing-card-photo .listthumb,.listing-card-photo .listthumb-ph{width:104px;height:104px}.listing-card-main{min-height:104px}.listing-card-price{font-size:1.12rem}.listing-card-actions .btn{font-size:.72rem;padding:7px 4px}}
.lactions{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.lactions .btn.sm{margin:0;font-size:.85rem;display:inline-flex;align-items:center;justify-content:center}
.inq-panel{margin:0 0 8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.inq-panel[hidden]{display:none}
.inq-note{margin-bottom:8px}
.inq-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:10px}
.inq-item{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface2);min-width:0}
.inq-item.inq-warn{border-color:var(--warn);background:var(--warn-solid);color:#fff;font-size:.86rem;line-height:1.5}
.inq-head{display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center}
.inq-head .badge,.msgrow .badge,.msgtab .badge{font-size:.8rem}
.inq-q{margin-top:6px;font-size:.95rem;line-height:1.5;overflow-wrap:anywhere;white-space:pre-wrap}
.inq-a{margin-top:8px;padding:8px 10px;border-left:3px solid var(--accent);background:var(--accent-bg);border-radius:6px;font-size:.9rem;overflow-wrap:anywhere;white-space:pre-wrap}
.inq-answer textarea,.inq-form textarea,.inq-form select,.ordercompose textarea,.ordercompose select{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:.9rem;background:var(--surface2);color:var(--ink)}
.inq-form select,.ordercompose select{min-height:44px}
.inq-answer{margin-top:8px}
.inq-actions{margin-top:8px}
.inq-actions .btn{margin:0}
.inq-pub{display:flex;gap:10px;align-items:flex-start;font-weight:500;color:var(--ink);font-size:.86rem;min-height:44px;margin-top:10px}
.inq-pub input{width:22px;height:22px;flex:none;margin:1px 0 0}
.inq-form label{display:block;font-size:var(--fs-label);color:var(--sub);margin-top:10px;margin-bottom:4px;font-weight:700}
.inq-form label.inq-pub{display:flex;color:var(--ink)}
.inq-login{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.msgtabs{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}
.msgtab{min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:99px;background:var(--surface2);color:var(--ink);font-weight:700;font-size:.86rem;display:inline-flex;align-items:center;gap:6px}
.msgtab[aria-selected=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.msgcount{font-size:.8rem;font-weight:800;opacity:.85}
.msgrow{display:block;padding:12px 0;border-top:1px solid var(--line);color:inherit;min-height:44px}
.msgrow:hover b{color:var(--accent-fg)}
.msgrow:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}
.ordersum{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:10px 12px;margin-bottom:10px;line-height:1.6;font-size:.9rem}
.ordercompose{margin-top:10px}
.ordercompose label{display:block;font-size:var(--fs-label);color:var(--sub);margin-top:10px;margin-bottom:4px;font-weight:700}
.ordercompose .btn{margin:0}
.ometa{opacity:.85;margin-bottom:2px}
.chatlog .bubble .small{color:inherit}
.chatlog .bubble.block{font-size:.84rem;line-height:1.5}
.pagetitle .badge{font-size:.8rem}

/* 대표 시리즈 카드(게임 찾기): 서버 /api/series 계약. 조작 요소 44px+, 글자 12px+. */
.series-sec{margin:14px 0 6px}
.series-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.series-picker-head .section-title{margin:0}
.series-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;font-weight:750;cursor:pointer}
.series-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.series-picker .series-row{display:none}
.series-picker.is-open .series-row{display:grid}
.series-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:8px 0 12px}
.series-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:60px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);min-width:0}
.series-card:hover{border-color:var(--accent-fg)}
.series-card.active{border-color:var(--accent-fg);background:var(--accent-bg);outline:1px solid var(--accent)}
.series-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.series-title{font-weight:800;font-size:.95rem;line-height:1.3;overflow-wrap:anywhere}
.series-sub{font-size:.8rem;color:var(--sub);line-height:1.4}
.series-card .badge{font-size:.8rem;margin:2px 0 0}
.series-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.series-chips .btn{display:inline-flex;align-items:center;justify-content:center;margin:0;font-size:.85rem}
.series-search{display:flex;gap:8px;margin:6px 0}
.series-search input{flex:1;min-width:0;border:1px solid var(--line);border-radius:10px;padding:10px 14px;font-size:1rem;min-height:46px;background:var(--surface2);color:var(--ink)}
.series-search .btn{flex:none;width:auto;padding:0 18px}
.series-count{margin:4px 0 10px}
@media(max-width:560px){
  .series-picker{margin:8px 0 12px}
  .series-picker.is-open .series-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* 로그인/회원가입(handoff/auth-ux-separate-signup-20260929.md): 로그인은 이메일 하나만, 회원가입은 별도 화면(#/register).
   두 화면 모두 가운데 정렬된 좁은 카드로 데스크톱에서 화면 전체 폭을 쓰지 않는다. */
.auth-page{max-width:400px;margin:24px auto 40px}
.auth-login-page{max-width:480px}
.auth-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:22px 22px 24px}
.auth-card .pagetitle{margin:0 0 4px}
.mfa-secret{display:block;overflow-wrap:anywhere;padding:12px;margin:12px 0;border:1px solid var(--line);border-radius:8px;font-size:16px;letter-spacing:.08em;user-select:all}
#mfaRecoveryCodes{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;border:1px solid var(--line);border-radius:8px;user-select:all}
.auth-btnrow{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.auth-btnrow .btn{flex:1 1 140px;margin:0;display:inline-flex;align-items:center;justify-content:center}
.auth-social-stack{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:16px}
.auth-social-brand,.auth-social-google{width:100%;max-width:336px;height:40px;min-height:40px}
.auth-social-brand{position:relative;display:flex;align-items:center;justify-content:center;padding-left:26px;border-radius:4px;font-family:"Google Sans",Arial,"Malgun Gothic",sans-serif;font-size:14px;line-height:21px;font-weight:500;letter-spacing:0;color:#191919;transition:filter .15s ease}
.auth-social-brand:hover{filter:brightness(.95)}
.auth-social-brand:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.auth-social-symbol{position:absolute;left:13px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:18px;height:18px}
.auth-social-kakao{background:#fee500}
.auth-social-kakao-symbol::before{content:'';width:17px;height:13px;border-radius:50%;background:#191919}
.auth-social-kakao-symbol::after{content:'';position:absolute;left:3px;bottom:1px;width:6px;height:6px;background:#191919;clip-path:polygon(0 100%,100% 0,100% 100%)}
.auth-social-naver{background:#03c75a;color:#fff}
.auth-social-naver-symbol{font-size:19px;line-height:1;font-weight:900;font-family:Arial,sans-serif}
.auth-social-google{display:flex;align-items:center;justify-content:center;color:var(--sub);font-size:14px}
.auth-social-google>div{max-width:100%}
.signup-privacy a{color:var(--accent-fg);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.site-legal-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;padding:28px 16px 32px;color:var(--sub);font-size:13px}
.site-legal-footer>a,.site-legal-footer>button{white-space:nowrap}
.site-legal-footer a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.site-legal-footer{padding-bottom:calc(104px + env(safe-area-inset-bottom))}}
.auth-forgot{margin-top:10px;text-align:center}
.auth-testbox{border:1px dashed var(--warn);border-radius:10px;padding:10px 12px;margin-top:14px}
.auth-testlabel{color:var(--warn);font-weight:700;margin-bottom:8px}
.auth-check{display:flex;align-items:center;gap:8px;min-height:44px;font-weight:500;color:var(--ink);font-size:.88rem;margin-top:6px}
.auth-check input{width:22px;height:22px;flex:none}
.signup-privacy{margin:18px 0;padding:18px;border:1px solid var(--line,#4b5a55);border-radius:14px;background:rgba(139,205,178,.07)}
.signup-privacy h2{font-size:1.05rem;line-height:1.4;margin:0 0 10px}
.signup-privacy p{line-height:1.65;margin:8px 0}
.signup-community-policy{padding:12px 14px;border-radius:9px;background:var(--surface2);color:var(--ink)}
.signup-privacy .auth-check{font-size:1rem;line-height:1.5;margin-top:14px}
.legal-body{background:var(--bg);color:var(--ink)}
.legal-document{width:min(760px,calc(100% - 32px));margin:32px auto 80px;padding:32px;border:1px solid var(--line);border-radius:16px;background:var(--surface);font-size:16px;line-height:1.72}
.legal-document h1{margin:8px 0 12px;font-size:clamp(27px,4vw,38px);line-height:1.22}
.legal-document h2{font-size:20px;line-height:1.35;margin:0 0 12px}
.legal-document section{border-top:1px solid var(--line);padding-top:22px;margin-top:22px}
.legal-document p{margin:0 0 12px;color:var(--sub)}
.legal-document strong{color:var(--ink)}
.legal-document a{color:var(--accent-fg);text-decoration:underline;text-underline-offset:2px}
.legal-document .legal-kicker{font-size:13px;font-weight:800;letter-spacing:.08em;color:var(--accent-fg)}
.legal-document .legal-lead{font-size:17px;color:var(--ink)}
.legal-document .legal-meta{font-size:13px}
.legal-document .legal-pending{padding:14px;border-radius:8px;background:var(--surface2);color:var(--ink)}
.legal-document .legal-back{display:inline-block;margin-bottom:16px;font-size:14px;font-weight:700}
@media(max-width:600px){.legal-document{width:100%;margin:0 0 36px;padding:22px 18px;border:0;border-radius:0}}
.auth-note{margin-top:6px}
.signup-address-page{max-width:720px}
.signup-address-fields{border:1px solid var(--line);border-radius:10px;padding:8px 14px 14px;margin:16px 0;background:var(--surface2);min-width:0}
.signup-address-fields legend{color:var(--ink);font-weight:750;padding:0 6px}
.signup-address-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 12px}
.signup-address-grid>div{min-width:0}
.signup-address-wide{grid-column:1/-1}
.signup-postcode-row{display:flex;gap:8px;align-items:center}
.signup-postcode-row input{min-width:0;flex:1}
.signup-postcode-row .btn{flex:none;min-height:44px;white-space:nowrap}
.postcode-search-btn{margin-top:6px}
@media(max-width:560px){.signup-address-grid{grid-template-columns:1fr}.signup-address-fields{padding:8px 12px 12px}.signup-postcode-row .btn{font-size:.78rem;padding:8px}}
@media(max-width:420px){.auth-page{margin:14px auto 30px;max-width:none}.auth-card{padding:16px}}

/* 배송지 관리(handoff/member-address-book-shipping-20260929.md) -- API가 없으면 이 화면은 안내문만 보이므로
   이 CSS 자체는 항상 로드되지만, 실제로는 state.addressesApiAvailable이 true일 때만 화면에 나타난다. */
.addr-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px 16px;margin-bottom:12px}
.addr-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:4px}
.addr-roles{margin-bottom:4px}
.addr-actions{margin-top:10px;flex-wrap:wrap}
.addr-actions .btn{min-height:44px}
.addr-pending-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border:1px dashed var(--accent);border-radius:var(--radius);padding:10px 14px;margin:12px 0}
.addr-pending-banner .btn{min-height:44px}
@media(max-width:420px){.addr-card{padding:12px}.addr-pending-banner{flex-direction:column;align-items:stretch}}

/* 마이페이지의 모든 하위 화면은 같은 제목·복귀·탭 구조를 사용한다. */
.mypage-subpage{max-width:1000px;margin:12px auto 48px;min-width:0}
.mypage-subpage-head{margin-bottom:20px}
.mypage-subpage-back{display:inline-flex;align-items:center;min-height:40px;color:var(--accent-fg);font-size:.9rem;font-weight:750}
.mypage-subpage-head h1{font-size:1.8rem;line-height:1.25;margin:8px 0 4px}
.mypage-subpage-head p{color:var(--sub);font-size:.93rem;margin:0 0 16px}
.mypage-subpage-nav{display:flex;gap:8px;overflow-x:auto;padding:1px 0 10px;scrollbar-width:none}
.mypage-subpage-nav::-webkit-scrollbar{display:none}
.mypage-subpage-nav a{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:40px;padding:7px 15px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--sub);font-size:.86rem;font-weight:700;white-space:nowrap}
.mypage-subpage-nav a:hover,.mypage-subpage-nav a.active{border-color:var(--accent);background:var(--accent);color:#12221b}
.mypage-subpage-content{min-width:0}
.mypage-subpage[data-section="profile"] #mypagePayoutSection,.mypage-subpage[data-section="profile"] #mypageSecuritySection{display:none}
.mypage-subpage[data-section="payout"] .mypage-avatar-row,.mypage-subpage[data-section="payout"] .mypage-profile-form,.mypage-subpage[data-section="payout"] .mypage-private:not(#mypagePayoutSection),.mypage-subpage[data-section="payout"] #mypageSecuritySection{display:none}
.mypage-subpage[data-section="security"] .mypage-avatar-row,.mypage-subpage[data-section="security"] .mypage-profile-form,.mypage-subpage[data-section="security"] .mypage-private{display:none}
.mypage-subpage[data-section="payout"] #mypagePayoutSection,.mypage-subpage[data-section="security"] #mypageSecuritySection{margin-top:16px;padding-top:0;border-top:0}
.mypage-panel-top button[hidden]{display:none}
.mypage-panel,.mypage-interest-panel{min-width:0;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.mypage-avatar{position:relative;display:flex;align-items:center;justify-content:center;width:78px;height:78px;flex:none;overflow:hidden;border-radius:50%;background:#2e473b;color:#bce8d0;font-size:2.15rem;font-weight:850;line-height:1}
.mypage-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mypage-panel-top button{border:0;background:none;color:var(--sub);min-height:38px;text-align:left;font-size:.82rem}
.mypage-panel,.mypage-interest-panel{padding:26px}
.mypage-panel-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.mypage-panel-top h2{margin:0;font-size:1.3rem;line-height:1.3}
.mypage-panel-top button{color:var(--accent-fg);font-weight:700}
.mypage-avatar-row{display:flex;align-items:center;gap:20px;margin:26px 0 28px}
.mypage-avatar-row>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.mypage-avatar-row input[type=file][hidden]{display:none}
.mypage-avatar-row strong{font-size:1.08rem}
.mypage-profile-form{display:flex;flex-direction:column;gap:8px}
.mypage-profile-form label{font-size:.84rem;font-weight:700;color:#b9d8cf;margin-top:10px}
.mypage-profile-form input,.mypage-profile-form textarea{width:100%;padding:12px;border:1px solid #46524c;border-radius:8px;background:#151b19;color:var(--ink);font-size:1rem}
.mypage-profile-form textarea{resize:vertical;min-height:72px}
.mypage-profile-form input::placeholder,.mypage-profile-form textarea::placeholder{color:var(--sub)}
.mypage-form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:4px}
.mypage-form-actions .btn{margin:0;min-height:44px}
.mypage-private,.mypage-security{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}
.mypage-private h2,.mypage-security h2{font-size:.91rem;color:var(--accent-fg);margin:0 0 18px}
.mypage-private-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px}
.mypage-private-grid>div{display:flex;flex-direction:column;gap:6px;min-width:0}
.mypage-private-grid span{color:var(--sub);font-size:.8rem}
.mypage-private-grid strong{font-size:.95rem;overflow-wrap:anywhere}
.mypage-private-grid .mypage-address{grid-column:1/-1}
.mypage-address a{color:var(--accent-fg);font-size:.84rem;font-weight:700}
.mypage-security .btnrow{margin-top:10px}
.mypage-interest-panel h2{font-size:1.12rem;margin:24px 0 14px}
.mypage-interest-panel h2 span{color:var(--accent-fg);margin-left:7px}
.mypage-interest-divider{border-top:1px solid var(--line);padding-top:22px}
.mypage-saved-games{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px}
.mypage-saved-game{min-width:0;display:flex;flex-direction:column;gap:7px}
.mypage-saved-cover{position:relative}
.mypage-saved-cover .cover{width:100%;aspect-ratio:1;min-height:0;padding:6px;border-radius:10px}
.mypage-saved-cover .cover img{object-fit:contain}
.mypage-saved-cover .cover .cover-head,.mypage-saved-cover .cover .coverlabel,.mypage-saved-cover .cover .imgph-title{display:none}
.mypage-saved-title{font-size:.96rem;font-weight:800;line-height:1.35}
.mypage-saved-title:hover{color:var(--accent-fg)}
.mypage-saved-game>strong{font-size:1.12rem;color:var(--ink)}
.mypage-saved-listings{display:flex;flex-direction:column;gap:12px}
.my-listing-list{display:grid;gap:10px}
.my-listing-card{display:grid;grid-template-columns:72px minmax(0,1fr) auto;grid-template-areas:"photo info price" "photo actions actions";gap:8px 14px;align-items:start;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);min-width:0}
.my-listing-photo{grid-area:photo}.my-listing-photo .thumbwrap,.my-listing-photo .listthumb,.my-listing-photo .listthumb-ph{width:72px;height:72px}
.my-listing-info{grid-area:info;min-width:0;display:flex;flex-direction:column;gap:3px;line-height:1.35}
.my-listing-title{font-size:1rem;line-height:1.35;overflow-wrap:anywhere}.my-listing-title a:hover{color:var(--accent-fg)}
.my-listing-condition{font-size:.86rem;overflow-wrap:anywhere}
.my-listing-price{grid-area:price;font-size:1.13rem;font-weight:850;white-space:nowrap;font-variant-numeric:tabular-nums}
.my-listing-actions{grid-area:actions;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.my-listing-actions:empty{display:none}.my-listing-actions .btn{margin:0;min-height:36px;padding:6px 10px}
.my-listing-completed{margin-top:16px}.my-listing-completed>summary{cursor:pointer;font-weight:750;padding:11px;border:1px solid var(--line);border-radius:10px}.my-listing-completed .my-listing-list{margin-top:10px}
@media(max-width:600px){.my-listing-card{grid-template-columns:68px minmax(0,1fr);grid-template-areas:"photo info" "photo price" "actions actions";gap:7px 10px;padding:11px}.my-listing-photo .thumbwrap,.my-listing-photo .listthumb,.my-listing-photo .listthumb-ph{width:68px;height:68px}.my-listing-price{font-size:1.08rem}.my-listing-actions{justify-content:flex-start}.my-listing-actions .btn{flex:1 1 auto;min-width:72px;white-space:nowrap}.my-listing-info>.small{font-size:.78rem}}
.mypage-saved-listing{display:grid;grid-template-columns:86px minmax(0,1fr) 124px;gap:16px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:11px;background:var(--surface2)}
.mypage-saved-listing .listthumb-ph,.mypage-saved-listing .thumbwrap,.mypage-saved-listing .listthumb{width:86px;height:86px}
.mypage-saved-copy{min-width:0;display:flex;flex-direction:column;gap:4px}
.mypage-saved-copy>a{font-weight:750;overflow-wrap:anywhere}
.mypage-saved-copy>a:hover{color:var(--accent-fg)}
.mypage-saved-price{font-size:1.33rem;font-weight:850;color:var(--ink)}
.mypage-saved-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px}
.mypage-saved-actions .btn{margin:0;display:flex;align-items:center;justify-content:center}
.interest-star,.interest-heart{display:inline-flex;align-items:center;justify-content:center;flex:none;width:38px;height:38px;border:1px solid #667a70;border-radius:50%;background:#111a16d9;color:#b6bdb9;font-size:1.35rem;line-height:1;cursor:pointer;z-index:2}
.interest-star:hover,.interest-star.saved{color:#f5d98a;border-color:#f5d98a}
.interest-star{position:relative;width:44px;height:44px;border:0;background:transparent;color:#eef2ed;line-height:1;padding:0;filter:drop-shadow(0 1px 2px #0008)}
.interest-star svg{position:relative;z-index:1;display:block;width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linejoin:round;filter:drop-shadow(0 1px 2px #000c)}
.interest-star.saved svg{fill:currentColor;stroke-width:1.7}
.interest-star:hover,.interest-star.saved{border:0;color:#f5d98a}
.interest-star:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
.interest-heart{border-radius:9px;font-size:1.25rem;background:var(--surface)}
.interest-heart:hover,.interest-heart.saved{color:#98d8c2;border-color:#98d8c2}
.game-card-visual{position:relative;min-width:0}
.game-card-visual .cover{aspect-ratio:1;min-height:0;height:auto;padding:8px;border-radius:10px}
.game-card-visual .cover img{object-fit:contain}
.game-card-visual .cover .cover-head,.game-card-visual .cover .coverlabel,.game-card-visual .cover .imgph-title{display:none}
.game-card-visual .interest-star,.mypage-saved-cover .interest-star{position:absolute;right:3px;top:3px}
.home-market-card{position:relative}
.home-market-card>.interest-star{position:absolute;right:8px;top:8px}
@media(max-width:600px){.detail #mannerBox .empty{padding:12px 0;text-align:left;line-height:1.45}}
@media(max-width:760px){.mypage-panel,.mypage-interest-panel{padding:18px}}
@media(max-width:600px){.mypage-subpage{margin:0 -12px 40px}.mypage-subpage-head{padding:8px 16px 0}.mypage-subpage-head h1{font-size:1.55rem}.mypage-subpage-nav{margin-right:-16px;padding-right:16px}.mypage-subpage .mypage-panel,.mypage-subpage .mypage-interest-panel{border-left:0;border-right:0;border-radius:0}.mypage-subpage-content{padding:0 12px}}
@media(max-width:520px){.mypage-private-grid{grid-template-columns:1fr;gap:16px}.mypage-saved-games{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mypage-saved-listing{grid-template-columns:70px minmax(0,1fr);gap:10px;padding:11px}.mypage-saved-listing .listthumb-ph,.mypage-saved-listing .thumbwrap,.mypage-saved-listing .listthumb{width:70px;height:70px}.mypage-saved-actions{grid-column:1/-1;flex-direction:row;align-items:center}.mypage-saved-actions .btn{flex:1}.listing-row-price{justify-content:flex-start}.listing-row-right{align-items:flex-start;text-align:left}}

/* 마이페이지 첫 화면: 프로필·실제 활동·동작하는 메뉴를 먼저 보여준다. */
.mypage-home{max-width:1000px;margin:12px auto 48px;color:var(--ink)}
.mypage-home-heading,.mypage-home-section-title{display:flex;align-items:center;justify-content:space-between;gap:14px}
.mypage-home-heading{margin-bottom:24px}
.mypage-home-heading h1{font-size:1.8rem;margin:0;line-height:1.25}
.mypage-home-heading>a{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;color:var(--ink)}
.mypage-home-heading svg,.mypage-home-link-icon svg,.mypage-home-stat-icon svg{width:24px;height:24px}
.mypage-home-heading>a:hover,.mypage-home-link:hover{background:var(--surface2)}
.mypage-home-profile{display:flex;align-items:center;gap:18px;margin-bottom:22px}
.mypage-home-avatar{position:relative;display:block;flex:none}
.mypage-home-avatar .mypage-avatar{width:82px;height:82px}
.mypage-home-camera{position:absolute;right:-2px;bottom:-2px;width:30px;height:30px;display:grid;place-items:center;border:2px solid var(--bg);border-radius:50%;background:var(--surface2);color:var(--ink)}
.mypage-home-camera svg{width:17px;height:17px}
.mypage-home-identity{min-width:0}.mypage-home-identity>strong{display:block;font-size:1.45rem;line-height:1.3;overflow-wrap:anywhere}
.mypage-home-identity>div{display:flex;flex-wrap:wrap;gap:8px 17px;margin-top:6px}
.mypage-home-identity a,.mypage-home-identity button,.mypage-home-section-title>a{color:var(--sub);font-size:.9rem}
.mypage-home-identity button{padding:0;border:0;background:none;cursor:pointer;font:inherit;color:var(--sub)}
.mypage-home-identity a:hover,.mypage-home-identity button:hover,.mypage-home-section-title>a:hover{color:var(--accent-fg)}
.mypage-social{margin:0 0 20px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.mypage-social-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px 18px;flex-wrap:wrap;margin-bottom:13px}
.mypage-social-heading h2{margin:0;font-size:1.02rem;line-height:1.3;color:var(--ink)}
.mypage-social-heading p{margin:0;color:var(--sub);font-size:.82rem;line-height:1.4}
.mypage-social-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mypage-social-provider{display:flex;align-items:center;gap:9px;min-width:0;min-height:51px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.mypage-social-provider:hover:not(:disabled),.mypage-social-provider:focus-visible{border-color:var(--accent);outline:none}
.mypage-social-provider:disabled{cursor:default;opacity:.7}
.mypage-social-icon{display:grid;place-items:center;flex:none;width:27px;height:27px;border-radius:7px}
.mypage-social-icon.kakao{background:#fee500}.mypage-social-bubble{position:relative;display:block;width:17px;height:13px;border-radius:50%;background:#191919}.mypage-social-bubble::after{content:'';position:absolute;left:2px;bottom:-3px;width:6px;height:5px;background:#191919;clip-path:polygon(0 0,100% 0,0 100%)}
.mypage-social-icon.naver{background:#03c75a;color:#fff;font-family:Arial,sans-serif;font-size:19px;font-weight:900;line-height:1}
.mypage-social-icon.google{background:#fff}.mypage-social-icon.google svg{display:block;width:20px;height:20px}
.mypage-social-provider-name{font-size:.9rem;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mypage-social-provider-status{margin-left:auto;color:var(--accent-fg);font-size:.78rem;font-weight:750;white-space:nowrap}
.mypage-social-provider:disabled .mypage-social-provider-status{color:var(--sub)}
.mypage-social .msg-ok{margin:12px 0 0}.mypage-social-status{margin:0;color:var(--sub);font-size:.82rem}.mypage-social-status:not(:empty){margin-top:10px}
.mypage-home-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:17px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.mypage-home-stat{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:9px 3px;text-align:center;font-size:.82rem;color:var(--sub)}
.mypage-home-stat:hover{color:var(--accent-fg)}
.mypage-home-stat-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#254437;color:#a9e7d0}
.mypage-home-stat:nth-child(2) .mypage-home-stat-icon{background:#253b48;color:#acdbea}
.mypage-home-stat:nth-child(3) .mypage-home-stat-icon{background:#3b3049;color:#dbbdeb}
.mypage-home-stat:nth-child(4) .mypage-home-stat-icon{background:#443b27;color:#f1d394}
.mypage-home-stat strong{font-size:1.12rem;color:var(--ink);line-height:1.2}
.mypage-home-recent{margin:30px 0 26px}.mypage-home-section-title{margin-bottom:13px}.mypage-home-section-title h2{margin:0;font-size:1.08rem}
.mypage-home-recent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.mypage-home-recent-card{min-width:0;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface);display:flex;flex-direction:column;gap:5px}
.mypage-home-recent-card:hover{border-color:var(--accent)}
.mypage-home-recent-photo{display:grid;place-items:center;overflow:hidden;width:100%;aspect-ratio:1.35;border-radius:9px;background:var(--surface2);color:var(--sub);font-size:.8rem}
.mypage-home-recent-photo img{width:100%;height:100%;object-fit:cover}
.mypage-home-recent-card strong{font-size:.91rem;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.mypage-home-recent-card>span:not(.mypage-home-recent-photo){font-size:1.1rem;font-weight:800}
.mypage-home-recent-card small{color:var(--sub)}
.mypage-home-empty{margin:0;padding:22px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--sub)}
.mypage-home-empty a{color:var(--accent-fg);font-weight:700}
.mypage-home-group{margin:12px 0;border-top:8px solid var(--surface2);padding-top:20px}
.mypage-home-group h2{margin:0 16px 8px;font-size:.92rem;color:var(--sub)}
.mypage-home-link{display:flex;align-items:center;gap:16px;width:100%;min-height:60px;padding:10px 16px;border:0;border-radius:9px;background:transparent;color:var(--ink);text-align:left;cursor:pointer;font:inherit}
.mypage-home-link-icon{display:grid;place-items:center;flex:none;width:30px;color:var(--sub)}
.mypage-home-link-copy{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.mypage-home-link-copy strong{font-size:1rem;font-weight:650}.mypage-home-link-copy small{font-size:.79rem;color:var(--sub)}
.support-page{max-width:760px;margin:0 auto;padding:20px 0 36px}.support-page h1{margin:10px 0;font-size:1.7rem}.support-back{display:inline-block;color:var(--sub);font-size:.9rem}.support-muted{margin:0 0 20px;color:var(--sub);line-height:1.6}
.support-links{padding:8px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.support-links .mypage-home-link{min-height:58px}
.support-card{margin:0 0 12px;padding:17px;border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow-wrap:anywhere}.support-card h2{margin:0 0 6px;font-size:1.05rem}.support-card time,.support-card .small{color:var(--sub);font-size:.82rem}.support-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.support-preline{white-space:pre-line;line-height:1.6;margin:12px 0 0}.support-answer{margin-top:14px;padding:12px;border-radius:10px;background:var(--surface2)}.support-answer p{margin-bottom:0}
.support-form{display:grid;gap:9px;margin:0 0 18px}.support-form label{font-weight:700}.support-form input,.support-form textarea,.support-form select{width:100%;min-width:0}.support-form textarea{resize:vertical}.support-form>.btn{justify-self:start}.support-hint{color:var(--sub);font-size:.85rem;line-height:1.55}.support-operator-list{display:grid;grid-template-columns:minmax(130px,auto) 1fr;gap:8px 14px;margin:16px 0}.support-operator-list dt{color:var(--sub)}.support-operator-list dd{margin:0;overflow-wrap:anywhere}
@media(max-width:600px){.support-page{padding:14px 0 30px}.support-page h1{font-size:1.5rem}.support-card{padding:14px}.support-operator-list{grid-template-columns:1fr;gap:2px}.support-operator-list dd{margin-bottom:9px}}
.mypage-home-chevron{font-size:1.55rem;line-height:1;color:var(--sub)}
.mypage-home-actions{display:flex;gap:16px;margin:24px 16px 0}.mypage-home-actions button{border:0;padding:9px 0;background:none;color:var(--sub);cursor:pointer;font-size:.88rem}
.mypage-back{display:inline-block;margin-bottom:13px;color:var(--accent-fg);font-weight:700}
@media(max-width:600px){.mypage-home{margin:0 -12px 38px}.mypage-home-heading,.mypage-home-profile,.mypage-home-recent,.mypage-home-stats,.mypage-social{margin-left:16px;margin-right:16px}.mypage-home-heading{margin-top:10px}.mypage-home-recent-grid{gap:9px}.mypage-home-stats{gap:2px;padding:12px 5px}.mypage-home-stat{font-size:.75rem}.mypage-home-stat-icon{width:40px;height:40px}.mypage-home-group{border-top-width:8px}.mypage-home-link{min-height:62px;padding-left:22px;padding-right:22px}}
@media(max-width:430px){.mypage-social{padding:14px 12px}.mypage-social-grid{gap:6px}.mypage-social-provider{flex-direction:column;justify-content:center;gap:3px;padding:7px 3px;min-height:66px;text-align:center}.mypage-social-provider-name{font-size:.8rem}.mypage-social-provider-status{margin-left:0;font-size:.72rem}}
@media(max-width:390px){.mypage-home-recent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mypage-home-stat{font-size:.71rem}.mypage-home-stat-icon{width:36px;height:36px}}

/* 본체 거래 화면: 카드 넓이와 큰 모델명을 우선해 가격/재고 상태를 빠르게 읽을 수 있게 한다. */
.console-shop{margin:4px 0 36px}
/* 게임 첫 화면과 본체 첫 화면의 머리말·회사 선택 칸을 같은 밀도로 맞춘다. */
.console-shop-hero{min-height:119px;padding:12px 20px;border:1px solid #375b48;border-radius:12px;background:linear-gradient(110deg,#213d30,#172520 72%,#16221e);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px}
.console-shop-hero>span{font-size:.78rem;font-weight:850;letter-spacing:.11em;color:#9ce0c3}
.console-shop-hero h1{font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.18;letter-spacing:-.04em;margin:0;color:#f5f7f2}
.console-shop-hero p{font-size:.88rem;line-height:1.5;margin:0;color:#c0d5c7;max-width:80ch}
.console-shop-hero>a{color:#aee6ca;font-size:.83rem;font-weight:750;text-decoration:underline;text-underline-offset:3px}
.console-shop .home-browse-intro{margin-top:20px}
.console-shop-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 12px}
.console-shop-filters button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:80px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-size:1rem;font-weight:750;text-align:left}
.console-shop-filters button small{font-size:.8rem;color:var(--sub)}
.console-shop-filters button[aria-pressed=true]{background:var(--accent-bg);border-color:var(--accent);color:var(--ink)}
.console-shop-filters button[aria-pressed=true] small{color:#42634f}
.console-shop-note{margin:0 0 20px;line-height:1.5}
.console-shop-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.console-shop-empty{grid-column:1/-1;line-height:1.6}
.console-shop-empty .btnrow{justify-content:center;margin-top:12px}
.console-shop-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:18px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.console-shop-card-link{display:flex;flex:1;flex-direction:column;gap:10px;min-width:0}
.console-shop-card-link .cover{aspect-ratio:1;min-height:0;height:auto;padding:10px;border:0;border-radius:10px;background:#1c3127}
.console-shop-card-link .cover img{object-fit:contain}
.console-shop-card-link .cover .coverlabel{display:none}
.console-shop-card-link .cover .imgph-title{font-size:.8rem;line-height:1.35;color:#bbd8c7}
.console-shop-card-link>strong{font-size:1.08rem;line-height:1.35;overflow-wrap:anywhere}
.console-shop-card-link:hover>strong{color:var(--accent-fg)}
.console-shop-card-link>.small{font-size:.83rem;color:var(--sub)}
.console-shop-price{margin-top:auto;font-size:1.11rem;font-weight:850;color:var(--ink);line-height:1.3}
.console-shop-card>.btn{min-height:44px;margin:0;display:flex;align-items:center;justify-content:center}
@media(max-width:1050px){.console-shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.console-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.console-shop-card{padding:12px}.console-shop-hero{padding:14px;min-height:0}.console-shop-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.console-shop-filters button{min-height:72px}}
@media(max-width:430px){.console-shop-card-link>strong{font-size:.98rem}.console-shop-card-link>.small{font-size:.78rem}.console-shop-price{font-size:1rem}.console-shop-filters{gap:8px}.console-shop-filters button{padding:10px;font-size:.94rem}}

/* 게임·본체·아미보·주변기기 공통 카탈로그 리듬: 같은 바깥 폭, 같은 이미지/글자 간격. */
.category-hero{min-height:220px;margin:0 0 28px;padding:38px clamp(20px,4vw,42px);border:1px solid #375b48;border-radius:16px;background:#20352a;color:var(--ink);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px}
.category-hero-kicker{color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:.12em}
.category-hero h1{color:var(--ink);font-size:clamp(2rem,3.2vw,2.6rem);font-weight:800;line-height:1.18;letter-spacing:-.04em;margin:0}
.category-hero p{color:#c0d2c7;font-size:clamp(1rem,1.4vw,1.15rem);font-weight:500;line-height:1.5;margin:0;max-width:68ch}
.featured-carousel{margin:0 0 22px;border:1px solid #375b48;border-radius:18px;background:#20352a;overflow:hidden;color:#f4faf6}
.featured-slide{min-height:350px}
.featured-main-link{display:grid;grid-template-columns:minmax(180px,220px) 1fr;align-items:center;gap:24px;min-height:350px;padding:18px;color:inherit;text-decoration:none}
.featured-main-link:hover,.featured-popular-grid a:hover{color:inherit}
.featured-photo{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:#17241e;border-radius:12px;aspect-ratio:1;min-width:0;color:#b9cbc0;font-size:.9rem;text-align:center}
.featured-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.featured-photo-fallback{display:none;padding:16px}.featured-photo-error img{display:none}.featured-photo-error .featured-photo-fallback{display:block}
.featured-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;min-width:0}
.featured-copy strong{font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.25;letter-spacing:-.035em}.featured-copy b{font-size:1.45rem}
.featured-copy>span:not(.featured-eyebrow):not(.featured-more){color:#c4d4ca;font-size:.97rem}
.featured-eyebrow{font-size:.84rem;letter-spacing:.06em;font-weight:800;color:#a0dcc5}.featured-more{font-weight:750;color:#a0dcc5}
.featured-controls{display:flex;align-items:center;justify-content:center;gap:18px;padding:0 12px 10px}
.featured-arrow,.featured-dots button{border:1px solid #597265;background:#1a2c22;color:#d9eee3;cursor:pointer}
.featured-arrow{width:34px;height:30px;border-radius:8px;font-size:1.3rem;line-height:1}.featured-dots{display:flex;gap:8px}.featured-dots button{width:10px;height:10px;padding:0;border-radius:50%}.featured-dots button[aria-current=true]{background:#a0dcc5;border-color:#a0dcc5}
.featured-ranking{min-height:350px;padding:16px 20px;display:flex;flex-direction:column;gap:7px}
.featured-ranking-head h2{margin:2px 0 1px;font-size:1.35rem;line-height:1.2}.featured-ranking-head p{margin:0;color:#c4d4ca;font-size:.78rem}
.featured-ranking-list{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:4px;flex:1;align-content:center}
.featured-ranking-list a{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:44px;padding:5px 10px;border:1px solid #456051;border-radius:9px;background:#1a2c22;color:inherit}
.featured-ranking-list a:hover,.featured-ranking-list a:focus-visible{border-color:#a0dcc5;color:inherit;background:#263e30}
.featured-rank-number{font-size:1.1rem;font-weight:850;color:#a0dcc5}.featured-rank-title{min-width:0;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.featured-rank-title small,.featured-rank-score small{display:block;font-size:.68rem;font-weight:500;color:#b9cbc0;line-height:1.25}
.featured-rank-score{text-align:right;white-space:nowrap;font-weight:850;color:#f4faf6}.featured-ranking-foot{margin-top:auto;color:#b9cbc0;font-size:.7rem}.featured-ranking-empty{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;color:#d5e3da;font-size:.95rem}
.featured-empty{min-height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:20px}.featured-empty b{font-size:1.3rem}.featured-empty span{color:#b9cbc0}
.featured-slide-mobile{display:none}.featured-slide-desktop{display:block}
.featured-hot-grid{display:grid;grid-template-columns:repeat(min(var(--featured-count,4),2),minmax(0,1fr));gap:12px;padding:14px;min-height:350px}
.featured-hot-card{display:grid;grid-template-columns:136px minmax(0,1fr);align-items:center;gap:10px;padding:8px;min-width:0;color:inherit;text-decoration:none;border:1px solid #456051;border-radius:12px;overflow:hidden;background:#1a2c22}
.featured-hot-card:hover,.featured-hot-card:focus-visible{color:inherit;border-color:#a0dcc5}
.featured-hot-card .featured-photo{width:136px;border-radius:8px}.featured-hot-copy{display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:0}.featured-hot-copy strong{font-size:1.04rem;line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.featured-hot-copy b{font-size:1.2rem}.featured-hot-copy small{font-size:.78rem;color:#b9cbc0}
@media(min-width:1060px){.featured-hot-grid{grid-template-columns:repeat(var(--featured-count,4),minmax(0,1fr))}.featured-hot-card{grid-template-columns:1fr;grid-template-rows:200px minmax(0,1fr);gap:8px}.featured-hot-card .featured-photo{width:min(100%,200px);justify-self:center}.featured-hot-copy{padding:0 7px 4px}}
@media(max-width:720px){.featured-slide-mobile{display:block}.featured-slide-desktop{display:none}}
.listing-focused{outline:2px solid #a0dcc5;outline-offset:4px;border-radius:10px}
@media(max-width:720px){.featured-main-link{grid-template-columns:40% 1fr;gap:14px;min-height:240px;padding:13px}.featured-copy strong{font-size:1.22rem}.featured-copy b{font-size:1.15rem}.featured-slide{min-height:240px}.featured-empty{min-height:240px}.featured-ranking{padding:13px;min-height:240px}.featured-ranking-head h2{font-size:1.18rem}.featured-ranking-list a{gap:7px;padding:4px 8px}.featured-slide-mobile .featured-hot-grid{grid-template-columns:repeat(min(var(--featured-count,2),2),minmax(0,1fr));gap:8px;padding:10px;min-height:240px}.featured-slide-mobile .featured-hot-card{display:flex;flex-direction:column;align-items:stretch;gap:7px;padding:7px}.featured-slide-mobile .featured-hot-card .featured-photo{width:100%;font-size:.76rem}.featured-slide-mobile .featured-hot-copy{gap:3px;flex:1;justify-content:flex-start}.featured-slide-mobile .featured-hot-copy .featured-eyebrow{font-size:.68rem;letter-spacing:0}.featured-slide-mobile .featured-hot-copy strong{font-size:.9rem;line-height:1.25}.featured-slide-mobile .featured-hot-copy small{font-size:.7rem}.featured-slide-mobile .featured-hot-copy b{margin-top:auto;font-size:1.03rem}}
.notifications-page{max-width:860px;margin:0 auto}.notifications-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.notifications-head .pagetitle{margin-bottom:5px}.notifications-head .small{margin:0}.notifications-list{display:grid;gap:9px}.notification-item{display:grid;grid-template-columns:38px minmax(0,1fr) 10px;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);color:var(--ink);text-decoration:none}.notification-item:hover{border-color:var(--accent-fg);color:var(--ink)}.notification-item.is-unread{border-color:#537e69;background:#20352a}.notification-item-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#29473a;color:#a9dec8;font-weight:800}.notification-item>span:nth-child(2){display:grid;gap:4px;min-width:0}.notification-item strong{font-size:1rem}.notification-item span span,.notification-item small{color:var(--sub)}.notification-item i{width:8px;height:8px;border-radius:50%;background:#9ddac2}
.category-filters{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 25px}
.category-filters button{min-height:44px;padding:9px 16px;border:1px solid #3c4844;border-radius:999px;background:var(--page);color:var(--ink);font-size:.93rem;font-weight:750;display:inline-flex;align-items:center;gap:10px}
.category-filters button span{font-size:.78rem;color:var(--sub)}
.category-filters button[aria-pressed=true]{background:var(--accent-bg);border-color:var(--accent);color:var(--ink)}
.category-filters button[aria-pressed=true] span{color:var(--sub)}
.category-list-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:0 0 16px}
.category-list-head h2{font-size:1.36rem;line-height:1.3;margin:0 0 5px}
.category-list-head p{color:var(--sub);font-size:.9rem;line-height:1.5;margin:0}
.category-list-head .btn{margin:0;white-space:nowrap}
.category-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.category-empty{grid-column:1/-1}
.category-product-card{min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:17px;display:flex;flex-direction:column}
.category-product-visual{position:relative;min-width:0}
.category-product-photo-link{display:block;border-radius:10px}
.category-product-photo-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
/* 게임 카드(.game-card-visual)와 같은 틀: 같은 비율(1:1)·여백·중립 배경·object-fit:contain. 종류별 삽화/그라디언트 없음. */
.category-product-visual .cover{width:100%;aspect-ratio:1;border-radius:10px;padding:8px}
.category-product-visual .cover img{object-fit:contain}
.category-product-visual .cover-head,.category-product-visual .cover-real .coverlabel{display:none}
.category-product-visual .interest-star{position:absolute;right:0;top:0}
.category-product-body{display:flex;flex:1;flex-direction:column;gap:7px;padding-top:16px}
.category-product-meta{color:var(--accent-fg);font-size:.9rem;line-height:1.45}
.category-product-name{font-size:1.25rem;line-height:1.38;font-weight:800;min-height:3.03em;overflow-wrap:anywhere}
.category-product-name:hover{color:var(--accent-fg)}
.category-product-count{font-size:.94rem;color:var(--sub)}
.category-product-price{margin-top:auto;padding-top:8px;font-size:1.38rem;line-height:1.35;font-weight:850;color:var(--ink)}
.category-product-price small{display:block;font-size:.85rem;color:var(--sub);font-weight:650;margin-bottom:3px}
.category-product-link{display:flex;align-items:center;justify-content:center;min-height:48px;margin-top:8px;border:1px solid #51695b;border-radius:9px;font-size:.96rem;font-weight:750}
.category-product-link:hover{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
@media(max-width:980px){.category-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.category-hero{min-height:190px;padding:26px 24px;margin:0 0 20px}.category-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.category-product-card{padding:11px}.category-product-body{padding-top:12px;gap:6px}.category-list-head{align-items:flex-start;flex-direction:column}.category-product-name{font-size:1.05rem;min-height:3.9em}.category-product-price{font-size:1.15rem}}
@media(max-width:430px){.category-hero{padding:24px 21px;min-height:180px}.category-hero h1{font-size:1.9rem}.category-hero p{font-size:1rem}.category-product-meta{font-size:.82rem}.category-product-card{padding:10px}}
.physical-product-hero .producttitle{font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.22;margin:10px 0 16px}
.physical-product-hero .cover-big{aspect-ratio:1}
@media(max-width:819px){.physical-product-hero .cover-big{height:auto;aspect-ratio:1}}
.category-product-visual .cover.cover-photo-only,.console-shop-card-link .cover.cover-photo-only{padding:0}
.physical-product-facts{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px;margin:22px 0;font-size:1.18rem;line-height:1.4}
.physical-product-facts strong{display:inline-flex;align-items:center;line-height:inherit}
.physical-product-facts strong:last-child{color:var(--accent-fg);font-size:inherit}
:root{--market-accent:var(--accent-fg)}
.market-home-intro{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:10px 0 14px}.market-home-intro strong{font-size:1.2rem}.market-home-intro span{font-size:.85rem;color:var(--sub)}
.title-hero.market-hero{grid-template-columns:160px minmax(0,1fr) auto;gap:20px;margin:8px 0 10px;align-items:start}.market-hero .cover-big{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:1}.market-hero .producttitle{font-size:1.65rem;margin:4px 0 10px}.market-hero .title-kicker{font-size:.78rem;margin:0}
.title-hero-links{display:flex;flex-direction:column;align-items:stretch;gap:8px;justify-self:end}.title-lounge-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:8px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);color:var(--ink);font-size:.83rem;font-weight:700;text-decoration:none;white-space:nowrap}.title-lounge-cta:hover,.title-lounge-cta:focus-visible{border-color:var(--sub);background:var(--surface)}.market-hero .title-share-cta{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:38px;margin:0;padding:8px 12px;border-radius:9px;font-size:.83rem;line-height:1.5}
.title-edition-picks{display:flex;flex-wrap:wrap;gap:8px}.title-edition-pick{display:inline-flex;flex-direction:column;gap:3px;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:.84rem;text-decoration:none}.title-edition-pick.active{border-color:var(--sub);background:var(--surface2)}.title-edition-pick .ed-market{display:block}.title-market-scope{margin-bottom:8px;color:var(--sub)}
.market-hero .title-hero-art{position:relative;overflow:visible}.market-hero .title-hero-art>.interest-star{position:absolute;top:-4px;right:-4px;width:44px;height:44px;min-width:44px}
.market-overview{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:18px;margin:0 0 14px}.market-price-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.market-price-cell{min-width:0;display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--surface2);border-radius:10px}.market-price-cell span{font-size:.83rem;color:var(--sub)}.market-price-cell strong{font-size:1.45rem;white-space:nowrap;letter-spacing:-.04em}.market-price-cell small{font-size:.72rem;color:var(--sub)}.market-price-cell.primary strong{color:var(--accent-fg)}.market-price-cell.upcoming strong{font-size:1.1rem;color:var(--sub)}.market-counts{display:flex;gap:20px;margin:14px 0;font-size:.85rem;color:var(--sub)}.market-counts b{color:var(--ink)}
.market-main-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.market-main-actions .btn{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 6px;white-space:nowrap}.market-basis{margin-top:10px;font-size:.74rem}.market-empty-action{margin-top:12px;padding:10px;border-left:3px solid var(--accent-fg);font-size:.85rem;line-height:1.5}.market-my-interest{margin-top:12px}.market-game-about{margin:10px 0 24px;padding:12px 0;border-bottom:1px solid var(--line)}.market-game-about summary{cursor:pointer;color:var(--sub);font-size:.86rem}.market-game-about[open] .producttitle{font-size:1.1rem;margin-top:16px}
.market-trade-history{margin-top:20px}.market-trade-history h3{font-size:1rem}.market-trade-row{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:.83rem}.market-trade-row span{color:var(--sub)}
.sell-condition-presets{margin:14px 0 8px}.sell-condition-presets .btnrow{gap:6px;flex-wrap:wrap}.sell-condition-presets [aria-pressed=true]{border-color:var(--accent-fg);color:var(--accent-fg)}#sConditionBrief{margin:8px 0;font-weight:700}#sConditionDetails{border:1px solid var(--line);border-radius:10px;padding:12px;margin:10px 0}#sConditionDetails summary{cursor:pointer;font-size:.85rem}#sConditionDetails[open] summary{margin-bottom:14px}
.sell-market-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.sell-market-guide div{background:var(--surface2);border:1px solid var(--line);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:5px}.sell-market-guide span,.sell-market-guide small{font-size:.78rem;color:var(--sub)}.sell-market-guide small{grid-column:1/-1}.sell-market-guide b{font-size:1.1rem}.compare-box small{font-size:.74rem}#sPrefillSummary{border:1px solid var(--line);padding:12px;border-radius:10px}
@media(max-width:600px){.market-home-intro{gap:4px;flex-direction:column;padding:6px 0 12px}.market-home-intro strong{font-size:1.1rem}.title-hero.market-hero{grid-template-columns:72px minmax(0,1fr);gap:12px;margin:12px 0}.market-hero .producttitle{font-size:1.2rem;margin:4px 0 6px}.market-overview{padding:12px}.market-price-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.market-price-cell{padding:10px;gap:4px}.market-price-cell strong{font-size:1.25rem}.market-price-cell span{font-size:.76rem}.market-main-actions .btn{font-size:.82rem}.market-counts{font-size:.78rem;gap:12px}.market-basis{font-size:.7rem}.market-trade-row{grid-template-columns:75px minmax(0,1fr) auto;gap:5px;font-size:.74rem}.sell-condition-presets .btn{font-size:.75rem;padding:9px 8px}}
@media(max-width:819px){.title-hero.market-hero{grid-template-columns:120px minmax(0,1fr);column-gap:16px;row-gap:8px}.market-hero .title-hero-art{grid-row:1/span 2}.market-hero .title-hero-links{grid-column:2;justify-self:start}}
@media(max-width:600px){.title-hero.market-hero{grid-template-columns:128px minmax(0,1fr);column-gap:12px;row-gap:4px;margin:6px 0 8px}.market-hero .title-kicker-brand{display:none}.title-hero.market-hero .producttitle{font-size:1.125rem;line-height:1.18;margin:0 0 4px}.title-hero.market-hero .title-hero-links{flex-direction:row;align-items:center;gap:8px}.title-hero.market-hero .title-lounge-cta{font-size:.78rem;min-height:34px;padding:6px 10px}.title-hero.market-hero .title-share-cta{width:auto;min-height:34px;padding:6px 10px;font-size:.78rem}}
@media(max-width:360px){.title-hero.market-hero{grid-template-columns:100px minmax(0,1fr);column-gap:8px}.title-hero.market-hero .title-hero-links{gap:5px}.title-hero.market-hero .title-lounge-cta{padding:6px 8px;font-size:.72rem}.title-hero.market-hero .title-share-cta{padding:6px 9px}}
/* Executable personal BUY; three facts, no future shop placeholder. */
.market-price-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.market-buy-grades{margin-top:12px}.market-buy-grades>div{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.market-buy-grades summary,.market-my-bids summary{cursor:pointer;font-size:.85rem}.market-watch-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.market-my-bids{margin-top:14px}.market-bid-row{padding:12px 0;border-bottom:1px solid var(--line)}.market-bid-row .btnrow{margin-top:8px;flex-wrap:wrap}.sell-instant-offers{margin:14px 0;padding:16px;border:2px solid var(--accent-fg);border-radius:12px;background:var(--surface)}.sell-instant-offers h2{font-size:1.2rem;margin:10px 0}.sell-instant-offers .btnrow{flex-wrap:wrap}.sell-instant-offers .btn{white-space:normal}.sell-instant-offers p{margin:8px 0}
@media(max-width:600px){.market-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.market-price-cell:last-child{grid-column:1/-1}.market-price-cell:last-child strong{font-size:1.4rem}.market-main-actions .btn{font-size:.8rem}.sell-instant-offers{padding:12px}}
@media(min-width:720px){#sDecisionPrices{grid-template-columns:repeat(3,minmax(0,1fr))}}
.admin-operations-results .small,.admin-operations-results .listrow,#adminOrderTrace .small{overflow-wrap:anywhere;word-break:break-word}
.admin-fold{margin:10px 0;border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}
.admin-dashboard{margin:12px 0 18px;padding:20px}
.admin-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.admin-dashboard-head .section-title{margin:0 0 2px}
.admin-dashboard-head p{margin:0}
.admin-dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.admin-kpi{min-width:0;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface2)}
.admin-kpi-label{font-size:.86rem;color:var(--sub)}
.admin-kpi-value{display:block;margin:5px 0;font-size:1.3rem;line-height:1.25;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.admin-kpi-detail{font-size:.76rem;line-height:1.4;color:var(--sub)}
.admin-dashboard-note{margin:14px 0 0;color:var(--sub);font-size:.79rem;line-height:1.5}
@media(max-width:900px){.admin-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.admin-dashboard{padding:14px}.admin-dashboard-grid{gap:7px}.admin-kpi{padding:11px}.admin-kpi-value{font-size:1.12rem}.admin-kpi-detail{font-size:.72rem}}
.admin-fold>summary{list-style:none;display:flex;align-items:center;gap:12px;min-height:60px;padding:15px 18px;cursor:pointer;font-weight:750;font-size:1.08rem}
.admin-fold>summary::-webkit-details-marker,.admin-subfold>summary::-webkit-details-marker{display:none}
.admin-fold>summary::after,.admin-subfold>summary::after{content:'⌄';margin-left:auto;color:var(--sub);font-size:1.25rem;line-height:1;transition:transform .15s ease}
.admin-fold[open]>summary::after,.admin-subfold[open]>summary::after{transform:rotate(180deg)}
.admin-fold>summary:focus-visible,.admin-subfold>summary:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
.admin-fold-hint{margin-left:auto;color:var(--sub);font-size:.78rem;font-weight:450;text-align:right}
.admin-fold>summary::after{margin-left:0}
.admin-fold>.card{margin:0;border:0;border-top:1px solid var(--line);border-radius:0}
.admin-fold-body{padding:18px;border-top:1px solid var(--line)}
.admin-fold-body>.section-title:first-child,.admin-fold-body>.btnrow:first-child{margin-top:0}
.admin-subfold{margin-top:18px;border-top:1px solid var(--line)}
.admin-subfold>summary{list-style:none;display:flex;align-items:center;gap:10px;padding:14px 0;cursor:pointer;font-weight:700}
.admin-subfold>.small{padding:6px 0;border-top:1px solid var(--line)}
@media(max-width:600px){.admin-fold>summary{align-items:flex-start;flex-wrap:wrap;font-size:1rem;min-height:56px;padding:14px}.admin-fold-hint{order:3;width:100%;margin:0;text-align:left}.admin-fold>summary::after{margin-left:auto}.admin-fold-body{padding:14px}}
.site-operator-info{max-width:1160px;margin:0 auto;padding:0 24px calc(24px + env(safe-area-inset-bottom));font-size:13px;line-height:1.65;color:var(--muted);overflow-wrap:anywhere}
.site-operator-info summary{cursor:pointer;font-weight:600}
.site-operator-info dl{display:grid;grid-template-columns:minmax(100px,auto) 1fr;gap:4px 16px}
.site-operator-info dt,.site-operator-info dd{margin:0}
#launchReadinessPanel code{overflow-wrap:anywhere}
#launchReadinessPanel .listrow>div{min-width:0;flex:1}
@media(max-width:700px){.site-operator-info{padding-bottom:100px}.site-operator-info dl{grid-template-columns:1fr}.site-operator-info dd{margin-bottom:8px}}

.homesec-row:has(#homeTradedSec[hidden]){grid-template-columns:1fr}

@media(max-width:720px){#operatorProfileForm input{font-size:16px;min-height:44px}}
.trade-share-page{max-width:560px;margin:24px auto;padding:0 16px 48px}
.trade-share-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 6px 24px #0000000b}
.trade-share-brand{font-size:.82rem;color:var(--muted);margin-bottom:10px}
.trade-share-main{display:grid;grid-template-columns:104px minmax(0,1fr);gap:16px;align-items:center}
.trade-share-art{width:104px;min-height:104px;display:grid;place-items:center;overflow:hidden;border-radius:12px;background:var(--bg)}
.trade-share-art img{width:100%;height:100%;max-height:140px;object-fit:contain}
.trade-share-art .cover{width:100%;margin:0}
.trade-share-copy{min-width:0;display:flex;flex-direction:column;gap:5px}
.trade-share-copy h1{font-size:1.18rem;line-height:1.35;margin:0;overflow-wrap:anywhere}
.trade-share-copy p{margin:0;color:var(--muted);font-size:.9rem}
.trade-share-copy strong{font-size:1.45rem;line-height:1.25;color:var(--accent)}
.trade-share-copy small{line-height:1.45}
.trade-share-cta{display:block;text-align:center;margin-top:14px;width:100%}
.trade-share-card>.small{margin:12px 0 0}
.admin-viral-summary{margin-top:20px;padding:16px;border:1px solid var(--line);border-radius:14px}
.admin-viral-summary h3{margin:0 0 10px}
.admin-viral-scroll{overflow-x:auto}
.admin-viral-scroll table{width:100%;border-collapse:collapse;min-width:650px;text-align:right}
.admin-viral-scroll th,.admin-viral-scroll td{padding:9px;border-bottom:1px solid var(--line);white-space:nowrap}
.admin-viral-scroll th:first-child{text-align:left}
@media(max-width:400px){.trade-share-main{grid-template-columns:88px minmax(0,1fr);gap:12px}.trade-share-art{width:88px;min-height:88px}.trade-share-card{padding:14px}.trade-share-copy h1{font-size:1.05rem}}
