/* =========================================================================
   BBerBee design layer — matches the landing site (bitnamu/bitnamu-bberbee-web,
   public/demo.css + DESIGN.md). Loaded AFTER style.css and only re-skins:
   colors, type, radii, controls. Layout stays in style.css.

   Rules carried over from the landing:
   - One accent: lime, only for attention / "needs action" / current selection.
     Text on lime is always ink.
   - Finished things go quiet (muted text, outlined chip) — no success green.
   - Pretendard everywhere, -0.02em tracking, tabular numbers, keep-all.
   - Controls 14px radius, cards 20px, chips full pill. Flat, borders over shadows.
   ========================================================================= */
@font-face{font-family:Pretendard;src:url('fonts/PretendardVariable.woff2') format('woff2');font-weight:45 920;font-display:swap}

:root{
  --bb-ink:#111111;--bb-ink-soft:#333333;--bb-white:#ffffff;--bb-panel:#F5F5F5;--bb-paper:#F5F5F3;
  --bb-lime:#C8F55A;--bb-lime-hover:#D8FB7E;--bb-lime-wash:#F4FDDF;--bb-lime-text:#4D7C0F;
  --bb-muted:#62656F;--bb-line:#E8E8E8;--bb-line-soft:#EFEFEC;--bb-field:#8A8A85;
  --bb-red:#D92D20;--bb-warn-bg:#FFF4D6;--bb-warn:#8A5A00;
  --bb-r-ctl:14px;--bb-r-card:20px;--bb-r-panel:22px;--bb-r-pill:999px;
  --bb-ease:cubic-bezier(.16,1,.3,1);
  /* legacy variables used inside style.css */
  --ink:#111111;--muted:#62656F;--line:#E8E8E8;--bg:#F5F5F3;--green:#4D7C0F;
}

/* ---------- base ---------- */
html,body{background:var(--bb-paper)}
body,button,input,select,textarea{font-family:Pretendard,system-ui,-apple-system,'Apple SD Gothic Neo',sans-serif}
body{color:var(--bb-ink);letter-spacing:-.02em;word-break:keep-all;-webkit-font-smoothing:antialiased}
h1,h2,h3,.buyertitle{color:var(--bb-ink);letter-spacing:-.03em;font-weight:800;text-wrap:balance}
h1{letter-spacing:-.04em}
.eyebrow{color:var(--bb-muted);letter-spacing:.06em;font-weight:700}
small,.muted{color:var(--bb-muted)}
::selection{background:var(--bb-lime);color:var(--bb-ink)}
table,.stat strong,.paymentamount,.settlegrid b,.hubstats b,td,.count,[data-qty],input[type=number]{font-variant-numeric:tabular-nums}
:focus-visible{outline:3px solid var(--bb-ink);outline-offset:3px}

/* ---------- buttons ---------- */
button,.button{font-family:inherit;letter-spacing:-.02em;font-weight:700;border-radius:var(--bb-r-ctl);transition:background-color .15s,transform .15s var(--bb-ease),border-color .15s}
button:not(.primary):not([data-view]):not([data-menu]):not([data-tab]):not([data-itab]):not([data-hubtab]):where(:not(.dashboard-table [data-dashboard-order])):where(:not(.shopper *)){background:var(--bb-white);color:var(--bb-ink);border:1px solid var(--bb-line)}
button:not(.primary):hover:where(:not(.shopper *)){background:var(--bb-panel)}
button.primary,.primary{background:var(--bb-ink)!important;color:var(--bb-white)!important;border:0!important;border-radius:var(--bb-r-ctl)}
button.primary:hover{background:var(--bb-ink-soft)!important}
button:active{transform:scale(.97)}
button:disabled{opacity:.5;cursor:not-allowed;transform:none}

/* ---------- fields ---------- */
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea{
  border:2px solid transparent!important;border-radius:var(--bb-r-ctl)!important;background:var(--bb-panel)!important;
  color:var(--bb-ink);font-weight:600;letter-spacing:-.02em}
input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,select:focus,textarea:focus{
  border-color:var(--bb-ink)!important;background:var(--bb-white)!important;outline:none}
input::placeholder,textarea::placeholder{color:#9A9CA5;font-weight:500}
input:user-invalid,select:user-invalid,textarea:user-invalid{border-color:var(--bb-red)!important}
input[type=checkbox],input[type=radio]{accent-color:var(--bb-ink)}
.field,.field>span,label.field{color:var(--bb-ink);font-weight:700;letter-spacing:-.02em}
.formerror{color:var(--bb-red)}

/* ---------- cards & panels ---------- */
.panel,.stat,.shipmentcard,.inquirycard,.storecard,.livebar,.savedcard,.edititem,.hubstats div,.settlegrid div{
  background:var(--bb-white);border:1px solid var(--bb-line);border-radius:var(--bb-r-card);box-shadow:none}
.panel .panel{background:var(--bb-panel);border-color:transparent}
.empty{color:var(--bb-muted)}
.empty strong{color:var(--bb-ink)}

/* ---------- chips / badges (Quiet Finish rule) ---------- */
.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--bb-r-pill);
  background:var(--bb-lime);color:var(--bb-ink);font-size:12px;font-weight:800;letter-spacing:-.01em;border:0}
.badge.disabled{background:transparent;color:var(--bb-muted);box-shadow:inset 0 0 0 1px var(--bb-line)}
.tag{border-radius:7px;background:var(--bb-panel);color:var(--bb-muted);font-weight:650}
.count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;margin-left:4px;
  background:var(--bb-ink);color:var(--bb-white);border-radius:var(--bb-r-pill);font-size:12px;font-weight:800;vertical-align:middle}
.onairdot{color:var(--bb-red)}

/* ---------- tabs & toggles: active = ink ---------- */
/* underline tabs: active = ink text + ink underline (no fill) */
.tabs button,[data-itab],[data-hubtab]{background:transparent!important;color:var(--bb-muted)!important;border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important}
.tabs button:hover{color:var(--bb-ink)!important}
.tabs button.active,[data-itab].active,[data-hubtab].active{color:var(--bb-ink)!important;border-bottom-color:var(--bb-ink)!important;font-weight:800}
.viewtoggle button,[data-view],[data-iview]{background:var(--bb-white);color:var(--bb-ink);border:1px solid var(--bb-line);border-radius:var(--bb-r-ctl)}
.viewtoggle button.primary,[data-view].primary,[data-iview].primary{background:var(--bb-ink)!important;color:var(--bb-white)!important;border-color:var(--bb-ink)!important}

/* ---------- seller shell ---------- */
.shell,.main{background:var(--bb-paper)}
.sidebar{background:var(--bb-white);border-right:1px solid var(--bb-line)}
.sidebar nav button,[data-menu]{background:transparent!important;color:var(--bb-ink-soft)!important;border:0!important;border-radius:var(--bb-r-ctl)!important;font-weight:700}
.sidebar nav button:hover,[data-menu]:hover{background:var(--bb-panel)!important}
.sidebar nav button.active,[data-menu].active{background:var(--bb-ink)!important;color:var(--bb-white)!important}
.sidebar nav button.active i,[data-menu].active i{color:var(--bb-lime)}
.topbar{background:rgb(245 245 243 / .92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--bb-line)}
.shop{background:var(--bb-panel);border-radius:var(--bb-r-card)}
.heading h1{font-weight:800;letter-spacing:-.04em}
.heading p{color:var(--bb-muted)}
/* first stat card highlights the scope being viewed */
.stats .stat:first-child{background:var(--bb-lime);border-color:var(--bb-ink)}
.stats .stat:first-child em,.stats .stat:first-child small{color:var(--bb-ink)}
.stat em{color:var(--bb-muted);font-style:normal}

/* tables */
.tablewrap{border-radius:var(--bb-r-card)}
th{background:var(--bb-panel);color:var(--bb-muted);font-weight:700}
td{border-color:var(--bb-line-soft)}
tr.daygroup td{background:var(--bb-panel)}
tr.picked td{background:var(--bb-lime-wash)}

/* bars */
.bulkbar{background:var(--bb-white);border:1px solid var(--bb-line);border-radius:var(--bb-r-card)}
.livebar.onair{background:var(--bb-white);border:2px solid var(--bb-ink)}
.livebar.onair .onairdot{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--bb-r-pill);background:var(--bb-ink);color:var(--bb-lime)}
.accountwarn{background:var(--bb-warn-bg);border-color:#F3D9A4;color:var(--bb-warn)}
.syncdot{background:var(--bb-lime);box-shadow:0 0 0 3px var(--bb-lime-wash)}
#refreshBadge{background:var(--bb-ink);color:var(--bb-lime);border-radius:var(--bb-r-pill)}

/* dialogs & toast */
dialog,.shippingdialog{border:0;border-radius:24px;background:var(--bb-white);color:var(--bb-ink)}
dialog::backdrop{background:rgb(17 17 17 / .55)}
#toast{background:var(--bb-ink);color:var(--bb-white);border-radius:var(--bb-r-pill);font-weight:700}

/* ---------- buyer pages (match landing demo) ---------- */
.buyerbody{background:var(--bb-panel)}
.buyer{background:var(--bb-white);border-radius:28px;box-shadow:none;border:1px solid var(--bb-line)}
.cover{background:var(--bb-lime-wash)!important}
.cover::after{border-color:rgb(200 245 90 / .45)!important}
.bio h1{font-weight:800;letter-spacing:-.04em}
.biolinks a{background:var(--bb-panel)!important;border:0!important;border-radius:var(--bb-r-ctl)!important;color:var(--bb-ink)}
.biolinks a:hover{background:#ECECEC!important}
.buyerproduct{background:var(--bb-panel);border-radius:var(--bb-r-card);border:0}
.steps span{color:var(--bb-muted)}
.steps span.on{color:var(--bb-ink);font-weight:800}
.login{border-radius:var(--bb-r-ctl)!important}
.buyerbody button.login:not(.primary){background:var(--bb-panel);border:0}
.freenote{background:var(--bb-lime-wash);color:var(--bb-ink);border-radius:var(--bb-r-ctl);font-weight:650}
.paymentbox{background:var(--bb-panel);border:0;border-radius:var(--bb-r-card)}
.bankdetails{background:var(--bb-white);border-radius:var(--bb-r-ctl)}
.trackinginfo,.shipmentnotice{background:var(--bb-panel);border-radius:var(--bb-r-ctl);color:var(--bb-ink-soft)}
.bubble{background:var(--bb-panel);border-radius:18px 18px 18px 6px}
.bubble.mine{background:var(--bb-lime);border-radius:18px 18px 6px 18px}
.bubble small{color:var(--bb-muted)}
.hublink{color:var(--bb-ink)!important;text-decoration:underline;text-underline-offset:3px}
.storechip{background:var(--bb-white);border-color:var(--bb-line)}
.hub .hubhead{border-color:var(--bb-line)}
.footerline{color:var(--bb-muted)}

@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* ---------- photos (found with tests/seed_visual.py) ---------- */
/* Card photo box: square instead of a fixed 220–460px height, so wide/tall/tiny photos
   don't leave a 460px-tall card on desktop. Keeps the team's object-fit:contain (whole
   product visible); paper ground shows the letterbox. */
.cards:not(.tableproducts) .productart{height:auto!important;aspect-ratio:1/1;background:var(--bb-panel)!important}
.cards:not(.tableproducts) .productart img{image-rendering:auto}
/* Avatars: the default logo stays contained; a real profile photo fills the circle. */
.avatar{flex:0 0 auto;overflow:hidden}
.avatar img:not([src$="logo.png"]){width:100%!important;height:100%!important;object-fit:cover!important;border-radius:50%}
/* Product table: the image column was squeezed so thumbnails became 28×65 strips. */
.productlisttable td img{width:56px!important;height:56px!important;min-width:56px;max-width:none;object-fit:cover;border-radius:12px;background:var(--bb-panel);display:block}
.productlisttable td:has(> img){width:72px;min-width:72px}
/* ON AIR label stretched to full width inside the column flex of .liveinfo */
.liveinfo .onairdot{align-self:flex-start;font-size:11px;letter-spacing:.06em;font-weight:800}
/* Chip meaning (landing DESIGN.md): lime = needs attention (with ink edge), ink = unpaid,
   outline = finished. app.js sets: 답변대기/입금 확인 요청 → lime, 입금 대기 → .unpaid, 완료 → .disabled */
.badge:not(.disabled):not(.unpaid){box-shadow:inset 0 0 0 1px var(--bb-ink)}
.badge.unpaid{background:var(--bb-ink);color:var(--bb-white)}
/* Inquiry table: last-message column was squeezed to a few characters per line */
td.lastmsg{min-width:240px;max-width:360px;line-height:1.45}
/* Buyer product list: fixed square thumbnails; products without a photo get a blank
   tile so names stay aligned. */
.buyerproduct{display:flex!important;align-items:center;gap:14px}
.buyerproduct>img{flex:0 0 72px;width:72px!important;height:72px!important;object-fit:cover;border-radius:12px;background:var(--bb-white)}
.buyerproduct:not(:has(>img))::before{content:"";flex:0 0 72px;height:72px;border-radius:12px;background:var(--bb-white);box-shadow:inset 0 0 0 1px var(--bb-line)}
.buyerproduct>div{min-width:0}
.buyerproduct{padding:12px!important;margin-bottom:8px}

.seller-dashboard .dashboard-payment-tabs button[data-dashboard-payment] {
  background: var(--bb-panel);
  border: 0;
}
.seller-dashboard .dashboard-payment-tabs button[data-dashboard-payment][aria-pressed="true"] {
  background: var(--bb-ink);
  color: var(--bb-white);
}
.seller-dashboard button[data-dashboard-print]:enabled {
  background: var(--bb-lime) !important;
  color: var(--bb-ink) !important;
}
.seller-dashboard .dashboard-table button[data-dashboard-order] {
  background: transparent;
  border: 0;
}
.seller-dashboard .dashboard-table time { font-weight: 700; }
.dashboard-source { display: inline-flex; align-items: center; gap: 5px; }
.dashboard-source.is-store::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #6a9c22;
  flex: none;
}

/* Shared seller controls. Sidebar navigation and compact icon controls keep their own sizing. */
.shell .workspace :is(.headactions, .topactions, .filter, .orderdates, .bulkbar, .ps-toolbar, .viewtoggle, .dashboard-heading-actions) :is(button, select),
.shell .workspace :is(.tabs, .dashboard-payment-tabs) > button {
  box-sizing: border-box;
  min-height: 48px;
  padding-inline: 12px;
  font-size: 16px;
  line-height: 1.25;
}
.shell .workspace :is(.tabs, .dashboard-payment-tabs) > button { font-size: 16px; }
.shell .workspace .seller-order-list td :is(button, select) {
  box-sizing: border-box;
  min-height: 48px;
  font-size: 16px;
  line-height: 1.25;
}
@media (min-width: 621px) {
  .shell .workspace .seller-order-list:not(.ordercards) td :is(button, select) { min-width: 112px; }
}

/* Seller workspace type and control scale. */
.shell .workspace {
  --seller-title: clamp(26px, 3vw, 32px);
  --seller-section: 20px;
  --seller-body: 16px;
  --seller-detail: 14px;
  --seller-control: 48px;
  --seller-field: 48px;
}
.shell .workspace #main {
  min-width: 0;
  font-size: var(--seller-body);
  line-height: 1.45;
}
#main :is(.heading, .dashboard-heading, .lb-pagehead) h1 {
  font-size: var(--seller-title);
  line-height: 1.2;
}
#main :is(.heading, .dashboard-heading) p:empty { display: none; }
#main > .heading .eyebrow { display: none; }
#main :is(.panelhead, .seller-customers, .seller-live-grid, .lv-feedhead) h2 {
  font-size: var(--seller-section);
  line-height: 1.25;
}
#main :is(.heading, .headactions, .dashboard-heading-actions, .panelhead) {
  min-width: 0;
  flex-wrap: wrap;
  gap: 8px;
}
#main .headactions {
  display: flex;
  max-width: 100%;
}
#main .headactions button { margin-inline: 0; }
#main .panelhead > :first-child { min-width: 0; overflow-wrap: anywhere; }
#main :is(.seller-orders-panel, .seller-customers) .tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0 6px;
  overflow: visible;
}
#main :is(.seller-orders-panel, .seller-customers) .tabs button {
  flex: 0 1 auto;
  max-width: 100%;
  padding-inline: 10px;
}
#main button:not(:where(.shopper *, .dashboard-actions *, .product-photos *, .bee-camera *, .imagepreview *, [data-shutter])),
#main :is(.seller-live-studio, .dashboard-heading-actions a, .profile-buyer-link) {
  min-height: var(--seller-control);
  font-size: var(--seller-body);
  line-height: 1.3;
}
#main :is(.seller-live-studio, .dashboard-heading-actions a, .profile-buyer-link) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
#main .seller-live-studio {
  padding: 8px 14px;
  border: 1px solid var(--bb-line);
  border-radius: var(--bb-r-ctl);
  background: var(--bb-white);
  color: var(--bb-ink);
  text-decoration: none;
}
#main :is(input:not([type=checkbox],[type=radio],[type=file],[type=hidden]), select, textarea):not(.shopper *) {
  min-height: var(--seller-field);
  max-width: 100%;
  font-size: var(--seller-body);
}
#main :is(.seller-customer-stats, .seller-live-grid) > .panel { margin: 0; min-width: 0; }
#main .seller-live-hero h2 { color: inherit; }
#main .seller-live-title label { color: inherit; }
#main .seller-live-hero { grid-template-columns: minmax(88px, 144px) minmax(0, 1fr); }
#main .seller-live-metrics { grid-column: 2; }
#main .seller-live-grid { grid-template-columns: minmax(0, 1fr) minmax(200px, 1fr); }
#main .seller-live-history { grid-column: 1 / -1; }

@media (max-width: 760px) {
  #main .heading > div:first-child { flex-basis: 100%; }
  #main .seller-live-grid { grid-template-columns: minmax(0, 1fr); }
  #main .seller-live-hero { grid-template-columns: minmax(0, 1fr); }
  #main .seller-live-hero > img { width: 88px; }
  #main .seller-live-metrics { grid-column: 1; }
}
@media (max-width: 620px) {
  #main .headactions { width: 100%; }
  #main .headactions > * { flex: 1 1 auto; max-width: 100%; }
  #main .seller-orders-panel .order-tools > * { min-width: 0; max-width: 100%; }
  #main .seller-order-list.ordercards td :is(select, button) { max-width: 100%; }
  #main .seller-payment button { width: auto; }
  #main .seller-customer summary { font-size: var(--seller-detail); }
}

#main .profile-photo-row .imageactions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
#main .profile-photo-row .imageactions button {
  flex: 1 1 132px;
  min-width: 0;
  padding: 8px 10px;
}
#main .order-tools .filter {
  display: flex;
  align-items: stretch;
  min-width: 0;
}
#main .order-tools .filter input { min-width: 0; }
#main .order-tools .filter button {
  min-height: var(--seller-field);
  flex-shrink: 0;
  white-space: nowrap;
}
#main .seller-live-title input { width: 100%; }

@media (min-width: 761px) and (max-width: 1060px) {
  #main .profile-layout { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 360px) {
  #main .profile-photo-row {
    grid-template-columns: minmax(0, 1fr);
  }
  #main .profile-photo-row .imageactions {
    grid-column: 1 / -1;
  }
}

/* Seller dialogs are mounted directly under body. */
.shippingdialog {
  max-height: calc(100dvh - 24px);
  padding: clamp(16px, 4vw, 24px);
  font-size: 16px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.shippingdialog .panelhead {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.shippingdialog .panelhead h2 {
  min-width: 0;
  margin: 0;
  font-size: 20px;
  line-height: 1.25;
}
.shippingdialog .panelhead button {
  flex: 0 0 auto;
  width: auto;
  min-width: 44px;
  height: 44px;
  padding: 8px 12px;
  white-space: nowrap;
}
.shippingdialog button { min-height: 44px; font-size: 14px; }
.shippingdialog :is(input:not([type=checkbox],[type=radio]), select, textarea) {
  min-width: 0;
  max-width: 100%;
  min-height: 48px;
  font-size: 16px;
}
.shippingdialog :is(.field, .editrow > *) { min-width: 0; }
.shippingdialog :is(small, #shippingfeedback) { font-size: 14px; color: var(--bb-muted); }
.shippingdialog .notifyactions { flex-wrap: wrap; }
.shippingdialog .notifyactions button { max-width: 100%; white-space: normal; }

.seller-auth { padding: 24px 16px; }
.seller-auth .buyer {
  width: min(100%, 440px);
  margin: 0 auto;
}
.seller-auth .bio { padding: 24px 16px 8px; }
.seller-auth .buyercontent { padding: 20px clamp(16px, 5vw, 28px) 28px; }
.seller-auth #authform .buyertitle { font-size: 24px; line-height: 1.2; }
.seller-auth .auth-intro { color: var(--bb-muted); font-size: 16px; line-height: 1.45; }
.seller-auth #authform .field { font-size: 14px; }
.seller-auth #authform .field input { min-height: 48px; min-width: 0; font-size: 16px; }
.seller-auth #authform .login { min-height: 48px; font-size: 16px; }
.seller-auth #autherror { font-size: 14px !important; overflow-wrap: anywhere; }
.seller-auth #autherror:empty { display: none; }

.seller-periods { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.seller-periods button { min-height: 44px; padding-inline: 14px; border-radius: 999px; font-size: 14px; }
.seller-periods button[aria-pressed="true"] { background: var(--bb-ink); color: var(--bb-white); }
#sellerPeriodFilter { display: none; }
@media (max-width: 620px) {
  .seller-payment-panel > .seller-periods { display: none; }
  #sellerPeriodFilter { display: grid; place-items: center; flex: 0 0 44px; padding: 0; }
  #main .seller-payment-panel .order-tools { flex-wrap: nowrap; }
  #main .seller-payment-panel .order-tools .filter { flex-basis: 0; }
}

.order-edit-dialog .panelhead { align-items: center; margin-bottom: 8px; }
.order-edit-dialog .panelhead h2 { font-size: 22px; }
.order-edit-dialog .seller-detail-menu + .formerror { margin: 0 0 12px; font-size: 16px; }

.seller-order-dialog { background: var(--bb-paper); }
.seller-order-dialog .panelhead { align-items: center; margin-bottom: 8px; }
.seller-order-dialog .panelhead h2 { font-size: 22px; }
.seller-detail-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.seller-detail-meta small { display: block; margin-top: 2px; }
.order-edit-tools { display: flex; gap: 4px; flex-shrink: 0; }
.order-edit-tools [data-edit-menu] { font-size: 24px; }
.seller-order-dialog section { margin-top: 12px; padding: 16px; background: var(--bb-white); border: 1px solid var(--bb-line); border-radius: 12px; }
.seller-order-dialog section h3 { margin: 0 0 10px; font-size: 18px; }
.seller-order-dialog :is(dl, ul) { margin: 0; padding: 0; list-style: none; }
.seller-order-dialog dl > div { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; padding-block: 5px; }
.seller-order-dialog dt { color: var(--bb-muted); }
.seller-order-dialog dd { margin: 0; text-align: right; }
.seller-order-dialog dl > div:has(+ div:last-child) { font-weight: 700; }
.seller-detail-menu { text-align: right; margin-top: 8px; }
.seller-detail-menu button { color: #b42318; background: var(--bb-white); }

.seller-order-list tr[data-order-detail] { cursor: pointer; }
.seller-order-list tr[data-order-detail]:focus-visible { outline: 2px solid var(--bb-ink); outline-offset: -2px; }

.seller-stage { display: inline-block; padding: 5px 9px; border-radius: 999px; background: var(--bb-panel); font-size: 14px; font-weight: 700; white-space: nowrap; }
.seller-stage[data-stage="입금 대기"] { background: var(--bb-warn-bg); color: var(--bb-warn); }
.seller-stage:is([data-stage="입금 완료"], [data-stage="배송완료"]) {
  background: var(--bb-lime-wash);
  color: var(--bb-lime-text);
}
.seller-dashboard .dashboard-issue,
.seller-dashboard .dashboard-review-panel li,
.seller-dashboard .dashboard-actions button.dashboard-attention {
  background: #fef3f2;
  color: #9e2118;
}
.seller-detail-actions { position: sticky; bottom: 0; margin-top: 12px; padding-top: 8px; background: var(--bb-paper); }
.seller-detail-actions button { width: 100%; min-height: 48px; font-size: 16px; }

.seller-shipping-panel .seller-order-list td { vertical-align: middle; }
.seller-shipping-panel .seller-order-list td > b { font-size: 16px; }
.seller-shipping-panel .seller-tracking-details { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
.seller-shipping-panel .seller-tracking-value { flex: 1 1 96px; min-width: 0; }
.seller-shipping-panel .seller-tracking-value small { margin: 0 0 3px; color: var(--bb-muted); font-size: 14px; }
.seller-shipping-panel .seller-tracking-value b { font-size: 16px; font-variant-numeric: tabular-nums; }
.seller-shipping-panel .seller-order-list td :is([data-detail], [data-edit]) { white-space: nowrap; }
@media (max-width: 620px) {
  .seller-shipping-panel .seller-order-list.ordercards tbody tr:not(.daygroup) { grid-template-columns: 44px minmax(0,1fr) auto; gap: 10px; }
  .seller-shipping-panel .seller-order-list.ordercards td:nth-child(2) { grid-column: 2; }
  .seller-shipping-panel .seller-order-list.ordercards td:nth-child(5) { grid-area: 1 / 3; }
  .seller-shipping-panel .seller-order-list.ordercards td:is(:nth-child(3), :nth-child(4), :nth-child(6)) { grid-column: 1 / -1; }
  .seller-shipping-panel .seller-order-list.ordercards td:nth-child(7) { grid-column: 2 / -1; }
  .seller-shipping-panel .seller-order-list.ordercards td:is(:nth-child(1), :nth-child(5), :nth-child(7))::before { display: none; }
  .seller-shipping-panel .seller-order-list.ordercards .seller-tracking-details { padding: 12px; background: var(--bb-panel); border-radius: 10px; }
  #main .seller-shipping-panel .seller-tracking-details button { width: auto; }
}
@media (max-width: 620px) {
  #main .seller-shipping-panel .order-tools .filter { flex-wrap: nowrap; }
  .seller-shipping-panel .seller-order-list.ordercards td:is(:nth-child(2), :nth-child(6))::before { display: none; }
  .seller-shipping-panel .seller-order-list.ordercards td:nth-child(7) { grid-column: 1 / -1; }
}

#profileLinks .profile-link-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
#profileLinks .profile-link-actions button {
  min-height: 44px;
  white-space: normal;
  font-size: 15px;
}
#profileLinks #linkeditor:not(:empty) { display: grid; gap: 12px; margin-top: 16px; }
#profileLinks .linkrow { min-width: 0; margin: 0; }
#profileLinks .linkrow input { width: 100%; min-width: 0; min-height: 44px; font-size: 16px; }
#profileLinks .linkrow button { min-width: 44px; min-height: 44px; }
@media (max-width: 620px) {
  #profileLinks .profile-link-actions { grid-template-columns: 1fr; }
}

.link-quick-setup { margin-block: 12px 20px; }
.link-quick-setup h2 { margin: 0 0 12px; }
.link-quick-setup ol { display: grid; gap: 8px; padding: 0; list-style: none; counter-reset: setup; }
.link-quick-setup li { counter-increment: setup; display: grid; gap: 6px; padding: 12px; border-radius: 12px; background: var(--bb-panel); }
.link-quick-setup li b::before { content: counter(setup) ". "; }
.link-quick-setup li span { color: var(--bb-muted); }
.link-quick-setup button { justify-self: start; }
.link-quick-setup { border-block-start: 1px solid var(--bb-line); padding-top: 18px; }
.link-quick-setup .panelhead { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.link-quick-setup .panelhead h2 { margin: 0; }
.link-quick-setup .panelhead span { font-size: 14px; }
.link-quick-setup li { align-content: start; padding: 14px; }
.link-quick-setup li small { justify-self: start; border-radius: 20px; padding: 3px 9px; background: var(--bb-white); font-weight: 700; }
.link-quick-setup li .setup-complete { background: var(--bb-lime-wash); color: var(--bb-lime-text); }
@media (min-width: 1100px) {
  .link-quick-setup ol { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
#profile.link-settings-form {
  display: grid;
  gap: 14px;
  padding: 0;
  background: transparent;
  border: 0;
}
.link-settings-form > :is(.link-quick-setup, .link-brand-card, .profile-extra) {
  margin: 0;
  padding: 18px;
  border: 0;
  border-radius: 22px;
  background: var(--bb-white);
}
.link-quick-setup .panelhead > span {
  background: var(--bb-lime);
  color: var(--bb-ink);
  border-radius: 999px;
  padding: 4px 10px;
  font-weight: 700;
}
.link-quick-setup li:has(.setup-complete) { background: var(--bb-lime-wash); }
.link-quick-setup .field input { min-height: 44px; width: 100%; font-size: 16px; }
.link-settings-form > .link-kakao-card { padding: 18px; border-radius: 22px; background: var(--bb-white); }
.channel-save-row { display: flex; align-items: center; gap: 8px; }
.channel-save-row input { flex: 1; min-width: 0; width: 100%; }
.channel-save-row button { flex-shrink: 0; }
.channel-inline-icon { display: flex; flex-shrink: 0; }
.channel-inline-icon svg { width: 28px; height: 28px; }
.link-qr-button { justify-self: start; }
.link-settings-form > .link-qr-card { padding: 18px; border-radius: 22px; background: var(--bb-white); }
.link-qr-card [data-inline-qr] { width: 244px; max-width: 100%; padding: 12px; margin-bottom: 12px; background: white; }
.link-qr-card [data-inline-qr] :is(img, canvas) { max-width: 100%; height: auto; }
.link-settings-form #profileLinks .profile-link-actions { grid-template-columns: 1fr; }
.profile-preview .profile-phone { box-sizing: border-box; width: min(100%, 360px); margin-inline: auto; }
.profile-preview .shopper-preview { width: 100%; min-width: 0; box-sizing: border-box; overflow-x: hidden; }
@media (max-width: 620px) {
  .profile-preview { min-width: 0; width: 100%; }
  .profile-layout { min-width: 0; }
  .profile-preview .profile-phone { max-width: 100%; }
}

.sidebar nav button.active,
.sidebar [data-menu].active {
  background: var(--bb-panel) !important;
  color: var(--bb-ink) !important;
}
.sidebar nav button.active i,
.sidebar [data-menu].active i { color: var(--bb-ink); }
.sidebar .sidefoot.seller-plan {
  background: var(--bb-panel);
  color: var(--bb-ink);
  border: 1px solid var(--bb-line);
}
.sidebar .seller-plan small { color: var(--bb-muted); }
.ps-selection { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 20px; padding: 14px; border-radius: 14px; background: var(--bb-white); }
.ps-selection label { display: flex; align-items: center; gap: 8px; }
.ps-selection input, .ps-card > input[type=checkbox] { width: 22px; height: 22px; flex-shrink: 0; }
.seller-orders-panel .bulkall { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 16px; }

.link-settings-form :is(.profile-section-save, [data-download-qr]) {
  display: block;
  width: 100%;
  min-height: 48px;
  margin-top: 14px;
  font-size: 17px;
  font-weight: 700;
}
#profile.link-settings-form .profile-savebar {
  margin: 0;
  padding: 0;
}
#profile.link-settings-form > .formerror:empty { display: none; }
#profile.link-settings-form .profile-savebar > button {
  display: block;
  width: 100%;
  margin: 0;
  min-height: 48px;
  font-size: 17px;
}
#profile.link-settings-form { row-gap: 0; }
#profile.link-settings-form > :is(.link-kakao-card, .link-brand-card, .profile-extra, .link-qr-card) { margin-top: 14px; }
.workspace-live-badge { display: inline-flex; align-items: center; gap: 5px; border-radius: 999px; padding: 8px 12px; background: #d92d20; color: white; font-size: 13px; font-weight: 750; white-space: nowrap; }
.workspace-live-badge time { font-size: inherit; font-variant-numeric: tabular-nums; }
@media (max-width: 620px) {
  .topbar:has(.workspace-live-badge) { display: flex; flex-wrap: wrap; gap: 8px; }
  .topbar:has(.workspace-live-badge) .topactions { display: flex; }
  .topbar:has(.workspace-live-badge) .topactions > :not(.workspace-live-badge) { display: none; }
}

.topbar .topactions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.topbar .topactions :is(button, .workspace-live-badge) {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  height: 44px;
  padding: 10px 14px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  border-radius: 12px;
  white-space: nowrap;
}

.profile-preview .profile-phone { aspect-ratio: 390 / 844; padding: 28px 9px 19px; display: flex; flex-direction: column; }
.profile-preview .profile-phone #biopreview { flex: 1; min-height: 0; max-height: none; padding: 28px 18px 28px; overflow-y: auto; overscroll-behavior: contain; }
.profile-preview .profile-phone .shop-live { margin-top: 20px; }
.profile-preview .profile-buyer-link { display: flex; justify-content: center; align-items: center; min-height: 44px; margin-top: 12px; font-size: 16px; font-weight: 700; }
.topbar a.workspace-live-badge { text-decoration: none; color: white; }
.profile-preview-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 12px; margin-bottom: 12px; }
.profile-preview .profile-preview-header .profile-preview-title { margin: 0; }
.profile-preview .profile-preview-header .profile-buyer-link { margin: 0; padding: 8px 12px; min-height: 44px; border: 1px solid var(--bb-line); border-radius: 12px; background: var(--bb-white); font-size: 14px; }
.bee-camera-actions { display: flex; align-items: center; justify-content: center; gap: 36px; }
#productForm .product-essentials { display: grid; grid-template-columns: 1fr; gap: 12px; }
#productForm .product-essentials label:has([name=price]) { font-size: 18px; font-weight: 750; }
#productForm input[name=price] { min-height: 64px; font-size: 30px; font-weight: 750; padding: 14px 16px; }
#productForm .product-form-actions { position: sticky; bottom: 0; z-index: 3; padding: 12px 0; background: var(--bb-white); }
#productForm.captured-product-form .product-photos { justify-content: center; }
#productForm.captured-product-form .product-photo { width: min(100%, 320px); }
#productForm.captured-product-form .product-photo img { width: 100%; height: 240px; object-fit: contain; }

#productForm .bee-camera-unavailable .bee-camera-actions { display: none; }
#productForm .bee-camera-unavailable .bee-error-actions {
  position: static;
  display: flex;
  justify-content: center;
  padding: 16px;
  background: #111;
}
#productForm .bee-camera-unavailable .bee-error-actions button {
  min-height: 48px;
  min-width: 160px;
  padding: 12px 20px;
  font-size: 17px;
}
#productForm .bee-camera-unavailable .bee-view {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: auto;
  min-height: 220px;
  aspect-ratio: auto;
}
#productForm .bee-camera-unavailable .bee-view video { display: none; }
#productForm .bee-camera-unavailable .bee-camera-loading {
  position: static;
  transform: none;
  padding: 40px 20px 16px;
  text-align: center;
}
#productForm .product-form-actions { display: flex; flex-wrap: wrap; gap: 8px; }
#productForm .product-delete-button { color: var(--bb-red); border: 1px solid var(--bb-line); }

#productForm .product-form-actions > :is(button, .primary, .product-delete-button) {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 52px;
  height: 52px;
  margin: 0;
  padding: 12px 16px;
  border-radius: 14px;
  font-size: 18px;
  font-weight: 750;
  line-height: 1.4;
}
#productForm .product-form-actions > button[hidden] { display: none; }

/* One readable control scale across seller pages and dialogs. */
.shell .workspace { --seller-control: 48px; }
#main button:not(:where(.shopper *, .bee-camera *, .product-photos *, .imagepreview *, .dashboard-actions *)),
dialog:is(.shippingdialog, .live-crop-dialog) button:not([aria-label="닫기"]) {
  box-sizing: border-box;
  min-height: 48px;
  padding: 12px 16px;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}
#main :is(input:not([type=checkbox]):not([type=radio]):not([type=file]), select, textarea):not(:where(.shopper *, .bee-camera *)),
dialog:is(.shippingdialog, .live-crop-dialog) :is(input:not([type=checkbox]), select, textarea) {
  box-sizing: border-box;
  min-height: 48px;
  padding: 12px 14px;
  border-radius: 12px;
  font-size: 16px;
  line-height: 1.5;
}
#main .field:not(:where(.shopper *)), dialog.shippingdialog .field { font-size: 16px; line-height: 1.5; }
#main small:not(:where(.shopper *, .profile-phone *)) { font-size: 14px; line-height: 1.5; }
#main :is(h2, .profile-section-title):not(:where(.shopper *)) { font-size: 20px; line-height: 1.4; }
#main .heading { margin-bottom: 20px; }
#main :is(.panelhead, .headactions, .dashboard-heading-actions) { align-items: center; gap: 8px; }
#main :is(.panel, .lb-card, .lb-monitor-panel) { border-radius: 18px; }
#main .seller-order-list td :is(button, select) { font-size: 16px; min-height: 48px; }
#main .seller-order-list :is(td, th) { vertical-align: middle; }
#main .seller-order-list td small { display: block; margin-top: 4px; }
#main .ps-count button { width: auto; min-width: max-content; height: 48px; padding: 12px; }
#main :is(.filter, .orderdates, .ps-toolbar) :is(input,select,button) { min-height: 48px; }
#main .filter button { align-self: stretch; }
#main :is(.tabs, .dashboard-payment-tabs, .lb-seg, .lb-mode) > button { min-height: 48px; font-size: 16px; padding: 12px 14px; }
#main .profile-savebar > .primary,
#main .profile-section-save,
#main [data-download-qr],
#main #productForm .product-form-actions > :is(button, .primary, .product-delete-button),
dialog.shippingdialog :is(button.primary, .seller-detail-actions button) {
  min-height: 52px;
  font-size: 18px;
  line-height: 1.4;
  border-radius: 14px;
}
#main #productForm input[name=price] { min-height: 64px; font-size: 30px; }
#main .profile-preview-header .profile-buyer-link,
#main .seller-live-studio { min-height: 48px; font-size: 16px; padding: 12px 16px; border-radius: 12px; }
.topbar .topactions :is(button, .workspace-live-badge) { height: 48px; min-height: 48px; font-size: 16px; }
.sidebar nav button { font-size: 16px; min-height: 48px; }
dialog.shippingdialog { font-size: 16px; line-height: 1.5; }
dialog.shippingdialog :is(h2, h3) { font-size: 20px; line-height: 1.4; }
dialog.shippingdialog .panelhead button[aria-label="닫기"] { width: 44px; height: 44px; min-height: 44px; padding: 0; font-size: 24px; }
@media(max-width:620px) {
  #main .headactions { width: 100%; }
  #main .headactions > :is(button,a) { flex: 1; }
  #main .headactions button,
  #main .seller-orders-panel :is(.tabs button,.bulkbar button) { white-space: normal; }
}
#main #profileLinks .profile-link-actions button { min-height: 48px; height: auto; font-size: 16px; }
#main .ps-selection { font-size: 16px; gap: 10px; }
#main .ps-registration { font-size: 14px; background: transparent; padding: 0; }
#main .ps-info { gap: 6px; }
#main .ps-count { gap: 6px; }
#main .ps-card { border-radius: 18px; }
@media(max-width:620px) {
  #main .ps-card { display: grid; grid-template-columns: 22px 72px minmax(0,1fr); align-items: center; gap: 12px; padding: 16px; }
  #main .ps-card .ps-image { width: 72px; height: 88px; }
  #main .ps-info { align-self: center; }
  #main .ps-info h3 { font-size: 18px; }
  #main .ps-info > b { font-size: 18px; }
  #main .ps-count { grid-column: 2 / -1; display: flex; flex-direction: row; align-items: center; flex-wrap: wrap; gap: 6px; text-align: left; }
  #main .ps-count strong { flex: 1; font-size: 14px; }
  #main .ps-count small, #main .ps-count > b { font-size: 14px; }
  #main .ps-count [data-ps-edit] { width: auto; min-width: 80px; margin: 0 0 0 6px; }
  #main .ps-selection > label { width: 100%; }
  #main .ps-selection > button { margin-left: auto; }
}

#main #profilePayment .optionsection { padding: 0; border: 0; background: transparent; }
#main .badge:not(:where(.shopper *)) { font-size: 14px; }
dialog.shippingdialog .panelhead :is([data-close], [data-close-detail], #closeshipping, [data-edit-menu]) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  flex: 0 0 44px;
  border-radius: 50%;
  font-size: 24px;
  line-height: 1;
}

/* Product management: keep each item's facts together and actions aligned. */
#main .ps-toolbar { background: var(--bb-white); border: 1px solid var(--bb-line); border-radius: 18px; padding: 16px; gap: 16px; margin-bottom: 12px; align-items: end; }
#main .ps-toolbar label { display: grid; gap: 8px; font-size: 16px; font-weight: 700; }
#main .ps-toolbar :is(input,select) { background: var(--bb-panel); width: 100%; padding-inline: 14px; }
#main .ps-selection { min-height: 64px; padding: 12px 16px; gap: 16px; border: 1px solid var(--bb-line); }
#main .ps-card { display: grid; grid-template-columns: 24px 100px minmax(0,1fr) 96px; gap: 16px; padding: 20px; align-items: center; }
#main .ps-image { width: 100px; height: 124px; }
#main .ps-info { display: flex; flex-direction: column; align-items: start; gap: 8px; min-width: 0; }
#main .ps-info h3 { margin: 0; font-size: 20px; line-height: 1.4; }
#main .ps-info > b { font-size: 20px; line-height: 1.4; }
#main .ps-meta { display: flex; gap: 12px; flex-wrap: wrap; font-size: 14px; line-height: 1.5; color: var(--bb-muted); }
#main .ps-meta strong { color: var(--bb-ink); font-weight: 700; }
#main .ps-registration { margin: 0; padding: 0; font-size: 14px; line-height: 1.5; }
#main .ps-count { display: flex; align-items: center; justify-content: end; height: auto; }
@media(max-width:760px) {
  #main .ps-toolbar { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #main .ps-toolbar label:first-child { grid-column: 1 / -1; }
  #main .ps-card { grid-template-columns: 22px 80px minmax(0,1fr); gap: 12px; padding: 16px; }
  #main .ps-image { width: 80px; height: 104px; }
  #main .ps-info h3, #main .ps-info > b { font-size: 18px; }
  #main .ps-count { grid-column: 2 / -1; margin: 0; padding: 0; border: 0; }
}

#main .dashboard-table tr[data-dashboard-order] { cursor: pointer; }
#main .dashboard-table tr[data-dashboard-order]:hover { background: var(--bb-panel); }
#main .dashboard-table tr[data-dashboard-order]:focus-visible { outline: 2px solid var(--bb-ink); outline-offset: -2px; }
#main .dashboard-item { display: flex; align-items: center; gap: 12px; }
#main .dashboard-item img { width: 88px; height: 112px; flex: 0 0 88px; object-fit: contain; border-radius: 10px; background: var(--bb-panel); }
#main .dashboard-product { display: flex; align-items: center; justify-content: start; gap: 12px; padding-block: 12px; }
#main .dashboard-product img { width: 72px; height: 90px; object-fit: contain; border-radius: 10px; background: var(--bb-panel); }
#main .dashboard-product > div { display: grid; gap: 8px; }
.seller-order-detail .seller-detail-product, .seller-detail-product { display: grid; grid-template-columns: minmax(0,180px) minmax(0,1fr); gap: 16px; align-items: center; padding-block: 16px; }
.seller-detail-product img { width: 100%; height: auto; max-height: 320px; object-fit: contain; border-radius: 12px; background: var(--bb-panel); }
.seller-detail-product:not(:has(img)) { grid-template-columns: 1fr; }
@media(max-width:760px) { .seller-detail-product { grid-template-columns: 1fr; } .seller-detail-product img { max-height: 360px; } }
#main .dashboard-product[data-dashboard-product] { cursor: pointer; border-radius: 10px; }
#main .dashboard-product[data-dashboard-product]:hover { background: var(--bb-panel); }
#main .dashboard-product[data-dashboard-product]:focus-visible { outline: 2px solid var(--bb-ink); outline-offset: 2px; }
.seller-product-dialog .seller-product-photo { display: block; width: 100%; max-height: 440px; object-fit: contain; border-radius: 14px; background: var(--bb-panel); }
.seller-product-dialog h3 { font-size: 20px; margin: 20px 0 12px; }
.seller-product-price { display: block; font-size: 26px; }
.seller-product-dialog dl > div { display: flex; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--bb-line); }
.seller-product-dialog dd { margin: 0; font-weight: 700; }
.seller-product-actions { margin-top: 24px; }
.seller-product-actions button { width: 100%; min-height: 52px; font-size: 18px; border-radius: 14px; font-weight: 750; }
.payment-confirm-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 20px; }
.payment-confirm-actions button { min-height: 52px; font-size: 18px; font-weight: 750; border-radius: 14px; }
.order-edit-actions { display: grid; gap: 10px; margin-top: 20px; }
.order-edit-actions button { width: 100%; min-height: 52px; font-size: 18px; font-weight: 750; border-radius: 14px; }
.order-edit-actions .order-delete { color: #df2929; background: white; border: 1px solid var(--bb-line); }
dialog.order-edit-dialog .order-edit-actions button { height: 52px; min-height: 52px; font-size: 18px; font-weight: 750; padding: 12px 18px; border-radius: 14px; }
#main .ps-card[data-seller-product] { cursor: pointer; }
#main .ps-card[data-seller-product]:focus-visible { outline: 2px solid var(--bb-ink); outline-offset: 2px; }
.seller-stage[data-stage="출고 완료"] { background: #eaf6d0; color: #355b0b; }
dialog.seller-order-dialog .seller-detail-management button { width: 100%; height: 52px; min-height: 52px; font-size: 18px; font-weight: 750; border-radius: 14px; padding: 12px 18px; }
#main .seller-order-items { display: grid; gap: 12px; min-width: 0; }
#main .seller-order-item { display: flex; align-items: center; gap: 12px; min-width: 0; }
#main .seller-order-item > img, #main .seller-order-no-photo { width: 88px; height: 112px; flex: 0 0 88px; border-radius: 10px; object-fit: contain; background: var(--bb-panel); }
#main .seller-order-no-photo { display: grid; place-items: center; font-size: 13px; color: var(--bb-muted); }
#main .seller-order-item > div:not(.seller-order-no-photo) { display: grid; gap: 6px; min-width: 0; }
#main .seller-order-item :is(b,strong) { font-size: 16px; line-height: 1.5; overflow-wrap: anywhere; }
#main .seller-order-item small { font-size: 14px; margin: 0; line-height: 1.5; }
@media(max-width:760px){ #main .seller-order-item > img, #main .seller-order-no-photo { width: 96px; height: 124px; flex-basis: 96px; } }
.seller-order-dialog dd > span { overflow-wrap: anywhere; min-width: 0; }
.seller-order-dialog dd.seller-carrier { font-weight: 400; }
.seller-tracking-details .seller-tracking-value small { font-weight: 400; }
#main .ps-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
#main .ps-card[data-seller-product] { position: relative; grid-template-columns: minmax(0,1fr); gap: 14px; padding: 14px; align-items: start; }
#main .ps-card > input[type=checkbox] { position: absolute; top: 24px; left: 24px; z-index: 1; background: white; }
#main .ps-card .ps-image { width: 100%; height: 340px; background: #e9e9e9; }
#main .ps-card .ps-image img { width: 100%; height: 100%; object-fit: contain; }
#main .ps-card .ps-count { grid-column: 1; width: 100%; }
#main .ps-card .ps-count button { width: 100%; }
@media(max-width:1100px){ #main .ps-list { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:600px){ #main .ps-list { grid-template-columns: 1fr; } #main .ps-card .ps-image { height: 380px; } }
#main .ps-toolbar { display: grid; grid-template-columns: minmax(0,1fr) 160px 160px; }
#main .ps-toolbar label, #main .ps-toolbar label:first-child { min-width: 0; }
@media(max-width:760px) { #main .ps-toolbar { grid-template-columns: repeat(2,minmax(0,1fr)); } #main .ps-toolbar label:first-child { grid-column: 1 / -1; } }
/* Preserve the whole captured frame; never clip a garment to a fixed photo slot. */
#main .ps-card .ps-image { display: block; width: 100%; height: auto; min-height: 0; overflow: hidden; }
#main .ps-card .ps-image img { display: block; width: 100%; height: auto; max-height: none; aspect-ratio: auto; object-fit: contain; }
#main .ps-card .ps-image:has(> span) { display: grid; place-items: center; min-height: 220px; }
#main #ps-more { width: 100%; min-height: 52px; font-size: 18px; margin-top: 8px; }
@media(max-width:600px){ #main .ps-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; } #main .ps-card[data-seller-product] { padding: 10px; } #main .ps-card .ps-info h3, #main .ps-card .ps-info > b { font-size: 17px; } #main .ps-card > input[type=checkbox] { top: 16px; left: 16px; } }
#productForm .price-shortcuts { display: grid; gap: 10px; margin: -4px 0 20px; }
#productForm .price-shortcuts > div { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
#productForm .price-shortcuts > div + div { grid-template-columns: repeat(2,minmax(0,1fr)); }
#main #productForm .price-shortcuts button { min-width: 0; min-height: 48px; padding: 10px 6px; font-size: 16px; white-space: nowrap; }
#productForm .price-input-error { color: #df2929; font-size: 14px; }
#productForm .price-input-error:empty { display: none; }
body :is(dialog,#lbFocus) button.bb-close-button { display: inline-grid; place-items: center; width: 44px; min-width: 44px; height: 44px; min-height: 44px; padding: 0; border: 0; border-radius: 50%; font: 400 26px/1 Arial,sans-serif; background: #f4f4f4 !important; color: #111 !important; flex-shrink: 0; }
.seller-review-check { display: flex; align-items: center; gap: 10px; min-height: 48px; font-size: 18px; font-weight: 700; }
.seller-review-check input { width: 22px; height: 22px; }
.seller-review-form { margin-block: 24px; }
.seller-internal-note { background: #fff0ec; border-radius: 14px; padding: 16px; color: #a4271b; }
.seller-internal-note p { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 16px; }
.seller-stage[data-stage="확인 필요"] { color: #ae251b; background: #ffe7e1; }

.customer-credit { margin-block: 16px; }
.credit-history { list-style: none; padding: 0; margin: 12px 0 24px; }
.credit-history li { display: flex; justify-content: space-between; gap: 16px; padding-block: 12px; border-bottom: 1px solid var(--bb-border, #d9ded6); }
.credit-history small { display: block; margin-top: 4px; }
.credit-history b { white-space: nowrap; }
.credit-adjust-form { max-width: 480px; }
.credit-adjust-form p { line-height: 1.6; }
[data-checkout-credit] { margin-block: 16px; }

/* Card selection belongs to the rounded row, rather than its separated cells. */
.seller-order-list.ordercards tr.picked { background: var(--bb-lime-wash); }
.seller-order-list.ordercards tr.picked > td { background: transparent; }

.bb-support-link{display:block;text-align:center;padding:12px 16px 100px;color:var(--bb-muted);font-size:13px;text-underline-offset:4px}

/* Keep QR sharing actions separated when short screens wrap the buttons. */
.qrbox .qr-share-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}

/* Shared control sizes for seller workspaces and their dialogs. */
:root{--bb-control-height:48px;--bb-header-control-height:44px;--bb-close-size:32px;--bb-control-radius:12px;--bb-page-gutter:16px;--bb-control-gap:8px}
.workspace #main :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]),select){box-sizing:border-box;min-width:0;height:var(--bb-control-height);min-height:var(--bb-control-height);padding:10px 14px;font-size:16px;line-height:1.5;border-radius:var(--bb-control-radius)}
.workspace #main input:is([type=checkbox],[type=radio]){box-sizing:border-box;width:20px;height:20px;min-height:20px;margin:0;flex-shrink:0}
#main #profile.link-settings-form{padding:0;margin:0;border:0;background:transparent;box-shadow:none}
#main .channel-save-row{align-items:center;gap:var(--bb-control-gap);margin-top:8px}
#main .channel-save-row input{margin:0;height:var(--bb-control-height);min-height:var(--bb-control-height)}
#main .channel-save-row button{box-sizing:border-box;height:var(--bb-control-height);min-height:var(--bb-control-height);padding:10px 14px}
#main .link-settings-form [data-save-profile-section]{height:var(--bb-control-height);min-height:var(--bb-control-height);padding:10px 16px;border-radius:var(--bb-control-radius)}
#main .ps-selection{gap:var(--bb-control-gap);align-items:center}
#main .ps-selection>label{width:auto;flex:1;min-height:48px;white-space:nowrap}
#main .ps-selection>b{white-space:nowrap;font-size:14px}
#main .ps-selection>button{margin:0;white-space:nowrap}
#main .ps-card .ps-count [data-ps-edit]{margin:0}
body dialog.shippingdialog button:not(.bb-close-button):not([aria-label="닫기"]){box-sizing:border-box;height:var(--bb-control-height);min-height:var(--bb-control-height);padding:10px 16px;font-size:16px;line-height:1.5;border-radius:var(--bb-control-radius)}
body :is(dialog,#lbFocus) button.bb-close-button{box-sizing:border-box;width:var(--bb-close-size);min-width:var(--bb-close-size);height:var(--bb-close-size);min-height:var(--bb-close-size);padding:0;border:1px solid var(--bb-line);border-radius:8px;font-size:22px;line-height:1;background:var(--bb-white)!important;color:var(--bb-ink)!important;flex:0 0 var(--bb-close-size)}
body dialog.shippingdialog .panelhead{display:flex;align-items:center;flex-wrap:nowrap;gap:12px}
body dialog.shippingdialog .panelhead h2{min-width:0;overflow-wrap:anywhere}
body dialog.shippingdialog .panelhead .bb-close-button{margin-left:auto}
@media(max-width:359px){#main .ps-selection{padding:12px;gap:6px;font-size:14px}#main .ps-selection>button{padding-inline:10px;font-size:14px}}
/* Match legacy dialog selectors that include an ID inside :is(). */
body :is(dialog,#lbFocus) .panelhead button.bb-close-button{width:var(--bb-close-size);min-width:var(--bb-close-size);height:var(--bb-close-size);min-height:var(--bb-close-size);border-radius:8px;flex:0 0 var(--bb-close-size)}
#main .link-settings-form [data-download-qr]{height:var(--bb-control-height);min-height:var(--bb-control-height);padding:10px 16px;font-size:16px;border-radius:var(--bb-control-radius)}
.workspace #main #productForm .product-form-actions>button{height:var(--bb-control-height);min-height:var(--bb-control-height);padding:10px 16px;font-size:16px;border-radius:var(--bb-control-radius)}
body dialog.shippingdialog :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select){box-sizing:border-box;height:var(--bb-control-height);min-height:var(--bb-control-height);padding:10px 14px;font-size:16px;border-radius:var(--bb-control-radius)}

/* A single type, shape and spacing scale for seller navigation and page actions. */
:root { --bb-ui-font:16px; --bb-ui-detail:14px; --bb-ui-title:24px; --bb-ui-radius:12px; --bb-ui-height:48px; --bb-ui-gap:8px; }
.shell .sidebar nav > :is(button,a.mobile-utility) { box-sizing:border-box;font-family:inherit;font-size:var(--bb-ui-font);font-weight:700;line-height:1.25;border-radius:var(--bb-ui-radius)!important; }
.shell .workspace .topbar .workspace-live-badge { display:inline-flex;align-items:center;justify-content:center;min-height:40px;height:40px;padding:8px 12px;font-size:var(--bb-ui-detail);line-height:1.25;border-radius:var(--bb-ui-radius); }
#main .dashboard-heading-actions > :is(a,button) { display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:0;height:var(--bb-ui-height);min-height:var(--bb-ui-height);margin:0;padding:10px 14px;border-radius:var(--bb-ui-radius);font-size:var(--bb-ui-font);font-weight:700;line-height:1.25; }
#main .lb-pagehead { display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:0 0 12px; }
#main .lb-pagehead h1 { margin:0; }
#main .lb-pagehead .lb-settings-link { display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:max-content;min-width:calc(2em + 34px);max-width:none;white-space:nowrap;box-sizing:border-box;min-height:var(--bb-ui-height);height:var(--bb-ui-height);padding:10px 16px;border-radius:var(--bb-ui-radius);font-size:var(--bb-ui-font);font-weight:700;line-height:1.25; }
#main .link-qr-card [data-inline-qr] { display:flex;align-items:center;justify-content:center;width:min(100%,252px);margin:12px auto 16px;padding:16px; }
#main .link-qr-card [data-inline-qr] :is(canvas,img) { display:block;max-width:100%;height:auto; }
#main .link-qr-card [data-download-qr] { display:block;width:100%;height:var(--bb-ui-height);min-height:var(--bb-ui-height);padding:10px 16px;border-radius:var(--bb-ui-radius);font-size:var(--bb-ui-font);font-weight:700; }
@media(max-width:620px) {
 .shell .sidebar nav { gap:4px; }
 .shell .sidebar nav > :is(button,a.mobile-utility) { min-width:0;height:var(--bb-ui-height);min-height:var(--bb-ui-height);padding:8px 4px;font-size:var(--bb-ui-font);font-weight:700;line-height:1.25;white-space:nowrap; }
 .shell .sidebar nav.menu-expanded > .mobile-more { grid-column:auto; }
 .shell .sidebar nav.menu-expanded > a.mobile-utility { display:flex;grid-column:span 2;background:var(--bb-panel); }
 .shell .sidebar nav.menu-expanded > #mobileLogout { display:flex;align-items:center;justify-content:center;grid-column:auto;background:transparent; }
 .shell .workspace { --seller-title:var(--bb-ui-title); }
 .shell .workspace #main { padding-top:16px; }
 #main .dashboard-heading { display:block;margin:0 0 16px; }
 #main .dashboard-heading>div:first-child { margin-bottom:12px; }
 #main .dashboard-heading h1 { margin:0 0 6px;font-size:var(--bb-ui-title); }
 #main .dashboard-heading p { margin:0;font-size:var(--bb-ui-font);line-height:1.5; }
 #main .dashboard-heading-actions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:var(--bb-ui-gap); }
 #main .dashboard-heading-actions>a { grid-column:1/-1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
}
@media(max-width:359px) { .shell .sidebar nav > :is(button,a.mobile-utility) { font-size:14px; } }
.shell .workspace .topbar .crumb { font-size:var(--bb-ui-detail);line-height:1.4; }
#main .dashboard-live-summary .seller-live-metrics>div { padding:12px;background:var(--bb-white);color:var(--bb-ink);border:1px solid var(--bb-line);border-radius:var(--bb-ui-radius); }
#main .dashboard-live-summary .seller-live-metrics dt { color:var(--bb-muted);font-size:var(--bb-ui-detail);font-weight:600; }
#main .dashboard-live-summary .seller-live-metrics dd { color:var(--bb-ink);font-size:20px;font-weight:750;margin:6px 0 0; }
/* Customer identity is two text lines, aligned to the column's left edge. */
#main .dashboard-table th:nth-child(4),#main .dashboard-table td[data-label="닉네임 / 이름"]{text-align:left}
#main .dashboard-table td[data-label="닉네임 / 이름"]>button[data-dashboard-order]{display:block;width:100%;height:auto;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;text-align:left;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
#main .dashboard-table td[data-label="닉네임 / 이름"]>small:not(.dashboard-issue){display:block;margin:4px 0 0;padding:0;text-align:left;line-height:1.4;white-space:normal;overflow:visible;overflow-wrap:anywhere}

#main .seller-live-record-guide{max-width:65ch;margin:8px 0 16px;color:inherit;font-size:14px;line-height:1.6;overflow-wrap:anywhere}

/* QRCode renders both a canvas and an image; stack them in one centered cell. */
#main .link-qr-card [data-inline-qr],#main #qrcode{display:grid;place-items:center;box-sizing:border-box;width:fit-content;max-width:100%;margin-inline:auto}
#main .link-qr-card [data-inline-qr] :is(canvas,img),#main #qrcode :is(canvas,img){grid-area:1/1;max-width:100%;height:auto}
