/* =========================
   Base
   ========================= */
.um-wrap {
  max-width: 980px;
  margin: 24px auto;
  padding: 0 14px;
  font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* はみ出し防止の最重要設定 */
.um-wrap,
.um-wrap *,
.um-wrap *::before,
.um-wrap *::after {
  box-sizing: border-box;
}

/* =========================
   Header / Buttons
   ========================= */
.um-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.um-header h2 {
  margin: 0;
  font-size: 20px;
}

.um-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 14px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 12px;
  background: #111;
  color: #fff;
  text-decoration: none;
  line-height: 1.4;
  cursor: pointer;
}

.um-btn:hover {
  opacity: 0.92;
}

.um-btn-ghost {
  background: #fff;
  color: #111;
}

/* =========================
   Action bar
   ========================= */
.um-actionbar {
  position: sticky;
  top: 12px;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 12px 0 16px;
  padding: 12px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(10px);
}

.um-fee {
  min-width: 260px;
  max-width: 100%;
}

.um-fee-line {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 13px;
}

.um-fee-line strong {
  font-size: 14px;
}

.um-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

/* =========================
   Cards
   ========================= */
   
:root{
  --um-card-bg: #fff;
}

/* カード本体 */
.um-card{
  background: var(--um-card-bg);
}

.um-card {
  width: 100%;
  max-width: 100%;
  margin-bottom: 12px;
  padding: 14px;
  overflow-x: hidden;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 16px;
  background: #fff;
}

.um-card h3 {
  margin: 0 0 10px;
  font-size: 16px;
}

/* =========================
   Form
   ========================= */
.um-label {
  display: block;
  margin: 10px 0 6px;
  font-size: 12px;
  opacity: 0.85;
}

/* フォーム部品を完全安定化 */
.um-input,
.um-textarea,
.um-select,
.um-wrap input[type="text"],
.um-wrap input[type="email"],
.um-wrap input[type="url"],
.um-wrap input[type="number"],
.um-wrap input[type="password"],
.um-wrap input[type="file"],
.um-wrap input[type="date"],
.um-wrap input[type="datetime-local"],
.um-wrap textarea,
.um-wrap select {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(0, 0, 0, 0.14);
  border-radius: 12px;
  background: #fff;
  line-height: 1.4;
  box-sizing: border-box;
}

/* file input は特に崩れやすい */
.um-wrap input[type="file"] {
  overflow: hidden;
  padding: 8px;
}

/* checkbox / radio は100%にしない */
.um-wrap input[type="checkbox"],
.um-wrap input[type="radio"] {
  width: auto;
  max-width: none;
  min-width: auto;
  margin: 0;
  padding: 0;
}

.um-textarea {
  resize: vertical;
}

.um-hint {
  margin: 8px 0 0;
  font-size: 12px;
  opacity: 0.7;
}

.um-row {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.um-radio {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid rgba(0, 0, 0, 0.10);
  border-radius: 14px;
}

.um-check {
  display: flex;
  align-items: center;
  gap: 8px;
}

/* =========================
   Grid
   ========================= */
.um-grid2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.um-grid2 > * {
  min-width: 0;
  max-width: 100%;
}

/* =========================
   Table
   ========================= */
.um-table {
  width: 100%;
  border-collapse: collapse;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 16px;
  background: #fff;
}

.um-table th,
.um-table td {
  padding: 10px 12px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  font-size: 13px;
  vertical-align: middle;
}

.um-table th {
  background: rgba(0, 0, 0, 0.03);
  text-align: left;
  font-size: 12px;
  opacity: 0.8;
}

.um-link {
  color: #111;
  text-decoration: underline;
}

.um-muted {
  opacity: 0.5;
}

/* =========================
   Order Badge
   ========================= */
.um-order-badge{
  display:inline-flex;
  align-items:center;
  padding:4px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  line-height:1.2;
  border:1px solid rgba(0,0,0,.08);
  background:#f6f7f8;
  color:#222;
}

.um-order-badge-pending{
  background:#fff7e6;
  color:#8a5a00;
  border-color:#f0d39a;
}

.um-order-badge-approved{
  background:#ecfdf3;
  color:#067647;
  border-color:#a6f4c5;
}

.um-order-badge-completed{
  background:#eef4ff;
  color:#1d4ed8;
  border-color:#bfd3ff;
}

.um-order-badge-cancelled{
  background:#f4f4f5;
  color:#52525b;
  border-color:#d4d4d8;
}

.um-order-badge-rejected{
  background:#fef3f2;
  color:#b42318;
  border-color:#f7b4ae;
}

/* =========================
   Notice
   ========================= */
.um-notice {
  margin: 0 0 14px;
  padding: 12px 14px;
  border: 1px solid transparent;
  border-radius: 12px;
  font-size: 13px;
  line-height: 1.6;
}

.um-notice-success {
  background: #ecfdf3;
  border-color: #abefc6;
  color: #067647;
}

.um-notice-error {
  background: #fef3f2;
  border-color: #fecdca;
  color: #b42318;
}

/* =========================
   Utility
   ========================= */
.um-wrap img {
  max-width: 100%;
  height: auto;
}

/* =========================
   Responsive
   ========================= */
@media (max-width: 700px) {
  .um-grid2 {
    grid-template-columns: 1fr;
  }

  .um-actionbar {
    flex-direction: column;
    align-items: stretch;
  }

  .um-fee {
    min-width: auto;
  }

  .um-header {
    flex-direction: column;
    align-items: stretch;
  }
}

/* =========================
   Order / Form UI tweak
   ========================= */
.um-check input{
  margin-right:8px;
}

/* =========================
   Artist Dashboard
   ========================= */

/* PC/共通 */
.um-table-wrap{
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.um-artist-table{
  width:100%;
}

.um-artist-inline-meta{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.um-artist-bulkbar{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}

.um-artist-mobile-detail-row{
  display:none;
}

.um-artist-mobile-detail-row.is-open{
  display:table-row;
}

/* 状態 / 更新 / 操作 を横並び */
.um-artist-mobile-detail-inline{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  padding:8px 0 10px;
  border-bottom:1px solid rgba(0,0,0,.06);
}

.um-artist-mobile-detail-inline-item{
  min-width:0;
}

/* =========================
   Artist Dashboard PC jump
   ========================= */

@media (min-width: 768px) {
  .um-artist-summary-row.is-card-jumpable .um-artist-summary-cell {
    cursor: pointer;
  }

  .um-artist-summary-row.is-card-tone-pending .um-artist-summary-cell {
    background: #fffaf0;
  }

  .um-artist-summary-row.is-card-tone-approved .um-artist-summary-cell {
    background: #f4fff8;
  }

  .um-artist-summary-row.is-card-tone-completed .um-artist-summary-cell {
    background: #f5f9ff;
  }

  .um-artist-summary-row.is-card-tone-cancelled .um-artist-summary-cell {
    background: #fff8f7;
  }

  .um-artist-summary-row.is-card-tone-pending .um-artist-summary-cell:hover {
    background: #fff4de;
  }

  .um-artist-summary-row.is-card-tone-approved .um-artist-summary-cell:hover {
    background: #eafff1;
  }

  .um-artist-summary-row.is-card-tone-completed .um-artist-summary-cell:hover {
    background: #edf4ff;
  }

  .um-artist-summary-row.is-card-tone-cancelled .um-artist-summary-cell:hover {
    background: #fff1ef;
  }
}

.um-artist-order-card.is-jumped {
  box-shadow: 0 0 0 3px rgba(99, 126, 255, .18);
  transition: box-shadow .25s ease;
}

/* =========================
   Artist Dashboard Mobile
   ========================= */
@media (max-width: 767px){

  .um-wrap{
    padding-left:12px;
    padding-right:12px;
  }

  .um-header{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:10px;
  }

  .um-header .um-btn{
    width:100%;
    justify-content:center;
  }

  .um-artist-bulkbar{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
  }

  .um-artist-bulkbar .um-input,
  .um-artist-bulkbar .um-btn{
    width:100%;
    max-width:none !important;
  }

  /* スマホでは summary 行で残す列:
     1:選択 2:作品 3:方式 4:価格 5:状態
     隠す列:
     6:更新 7:操作 8:オークション状況
  */
  .um-artist-table{
    width:100%;
    min-width:620px;
  }

  .um-artist-table thead th:nth-child(6),
  .um-artist-table thead th:nth-child(7),
  .um-artist-table thead th:nth-child(8){
    display:none;
  }

  .um-artist-summary-row td:nth-child(6),
  .um-artist-summary-row td:nth-child(7),
  .um-artist-summary-row td:nth-child(8){
    display:none;
  }

  .um-artist-summary-cell{
    cursor:pointer;
  }

  .um-artist-summary-cell:active{
    background:rgba(0,0,0,.04);
  }

  .um-artist-mobile-detail-row{
    display:none;
  }

  .um-artist-mobile-detail-row.is-open{
    display:table-row;
  }

  .um-artist-mobile-detail-row td{
    background: var(--um-card-bg);
    border-top:0;
  }

  .um-artist-mobile-detail-box{
    display:grid;
    gap:10px;
    padding:6px 0;
  }

  .um-artist-mobile-detail-label{
    font-size:12px;
    font-weight:700;
    color:#666;
    margin-bottom:4px;
  }

  .um-artist-mobile-detail-value{
    font-size:14px;
    color:#111;
    line-height:1.5;
  }

  .um-artist-mobile-detail-item{
    padding:8px 0 0;
  }

  .um-artist-mobile-detail-item .um-hint,
  .um-artist-mobile-detail-inline-item .um-hint{
    margin-top:3px;
    line-height:1.45;
  }
}

/* =========================================================
   Artist Orders Compact / Mobile
   ========================================================= */

.um-artist-orders-list{
  display:grid;
  gap:14px;
}

.um-artist-order-card{
  overflow:hidden;
}

.um-artist-order-summary{
  display:flex;
  gap:14px;
  align-items:flex-start;
}

.um-artist-order-thumb{
  flex:0 0 auto;
}

.um-artist-order-thumb img{
  width:72px;
  height:72px;
  object-fit:cover;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.08);
}

.um-artist-order-main{
  flex:1;
  min-width:0;
}

.um-artist-order-top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  flex-wrap:wrap;
}

.um-artist-order-title{
  font-size:16px;
  font-weight:700;
  line-height:1.4;
  word-break:break-word;
}

.um-artist-order-id{
  margin-top:6px;
}

.um-artist-order-badge-wrap{
  flex:0 0 auto;
}

.um-artist-order-meta-row{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:8px 14px;
  margin-top:12px;
}

.um-artist-order-meta-item{
  min-width:0;
}

.um-artist-order-mobile-toggle-wrap{
  display:none;
  margin-top:12px;
}

.um-artist-order-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 12px;
  border:1px solid rgba(0,0,0,.1);
  border-radius:999px;
  background:#fff;
  font-size:12px;
  line-height:1.2;
  color:#111;
  cursor:pointer;
}

.um-artist-order-detail{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(0,0,0,.08);
}

.um-artist-order-detail-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:8px 14px;
}

.um-artist-order-action-form{
  display:inline-block;
  margin:0;
}

/* =========================
   Artist Orders toggle state
   ========================= */

.um-artist-order-summary {
  cursor: pointer;
}

.um-artist-order-detail[aria-hidden="true"] {
  display: none;
}

.um-artist-order-detail[aria-hidden="false"] {
  display: block;
}

.um-artist-order-card.is-jumped {
  box-shadow: 0 0 0 3px rgba(99, 126, 255, .18);
  transition: box-shadow .25s ease;
}

@media (min-width: 768px){
  .um-artist-order-toggle,
  .um-artist-order-mobile-toggle-wrap{
    display:none !important;
  }
}

/* =========================
   Mobile
   ========================= */

@media (max-width: 767px){

  .um-artist-order-summary{
    gap:10px;
  }

  .um-artist-order-thumb img{
    width:56px;
    height:56px;
    border-radius:10px;
  }

  .um-artist-order-title{
    font-size:14px;
    line-height:1.45;
  }

  .um-artist-order-top{
    gap:8px;
  }

  .um-artist-order-badge-wrap{
    width:100%;
  }

  .um-artist-order-meta-row{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px 10px;
    margin-top:10px;
  }

  .um-artist-order-meta-row .um-artist-order-meta-item:nth-child(3){
    grid-column:1 / -1;
  }

  .um-artist-order-mobile-toggle-wrap{
    display:block;
  }

  .um-artist-order-detail{
    display:none;
    margin-top:10px;
    padding-top:10px;
  }

  .um-artist-order-card.is-open .um-artist-order-detail{
    display:block;
  }

  .um-artist-order-detail-grid{
    grid-template-columns:1fr;
    gap:10px;
  }

  .um-artist-order-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .um-artist-order-action-form{
    display:block;
    width:100%;
  }

  .um-artist-order-action-form .um-btn{
    width:100%;
  }

  .um-artist-summary-row.is-card-linked td {
    position: relative;
  }

  .um-artist-summary-row.is-card-tone-pending td:first-child::before,
  .um-artist-summary-row.is-card-tone-approved td:first-child::before,
  .um-artist-summary-row.is-card-tone-completed td:first-child::before,
  .um-artist-summary-row.is-card-tone-cancelled td:first-child::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    bottom: 6px;
    width: 3px;
    border-radius: 999px;
  }

  .um-artist-summary-row.is-card-tone-pending td:first-child::before {
    background: #f0d39a;
  }

  .um-artist-summary-row.is-card-tone-approved td:first-child::before {
    background: #a6f4c5;
  }

  .um-artist-summary-row.is-card-tone-completed td:first-child::before {
    background: #bfd3ff;
  }

  .um-artist-summary-row.is-card-tone-cancelled td:first-child::before {
    background: #f7b4ae;
  }
}

.um-artist-auction-summary{
  display:grid;
  gap:4px;
}

.um-artist-auction-head{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  align-items:center;
}

.um-artist-auction-phase{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:2px 8px;
  border-radius:999px;
  background:#f4f4f4;
  border:1px solid rgba(0,0,0,.08);
  font-size:12px;
  line-height:1.2;
  font-weight:700;
  color:#111;
}

.um-artist-auction-result{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:2px 8px;
  border-radius:999px;
  background:#fff7e8;
  border:1px solid #f0d39a;
  font-size:12px;
  line-height:1.2;
  font-weight:700;
  color:#7a4b00;
}

.um-artist-auction-line{
  font-size:12px;
  line-height:1.5;
  color:#555;
}

.um-artist-auction-candidate{
  font-size:12px;
  line-height:1.5;
  font-weight:700;
  color:#111;
}

@media (max-width: 767px){
  .um-artist-auction-line,
  .um-artist-auction-candidate{
    font-size:11px;
  }
}

.um-artist-auction-action{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:2px 8px;
  border-radius:999px;
  font-size:12px;
  line-height:1.2;
  font-weight:700;
  margin-top:4px;
}

.um-artist-auction-action-alert{
  background:#fff1f0;
  border:1px solid #f3b2ab;
  color:#b42318;
}

.um-artist-auction-action-progress{
  background:#ecfdf3;
  border:1px solid #a6f4c5;
  color:#027a48;
}

.um-artwork-badge-sold{
  background:#f3f4f6;
  color:#666;
  border-color:#ddd;
}

.um-artwork-badge-progress{
  background:#ecfdf3;
  color:#027a48;
  border-color:#a6f4c5;
}

.um-artwork-badge-ended{
  background:#fff4e5;
  color:#b54708;
  border-color:#facc15;
}

/* =========================================
   Auction box
   ========================================= */

.um-auction-box {
  margin-top: 14px;
}

.um-auction-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  flex-wrap: wrap;
}

.um-auction-head h3 {
  margin: 0;
}

.um-auction-grid {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 10px 14px;
}

.um-auction-stat {
  padding: 12px 14px;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  background: #fff;
}

.um-auction-stat-label {
  display: block;
  margin-bottom: 6px;
  font-size: 12px;
  color: rgba(0,0,0,.55);
}

.um-auction-stat-value {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  word-break: break-word;
}

.um-auction-panel {
  margin-top: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  background: #fafafa;
}

.um-auction-panel-title {
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 700;
}

.um-auction-countdown {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .02em;
}

.um-auction-note {
  margin-top: 8px;
  font-size: 13px;
  line-height: 1.7;
  color: rgba(0,0,0,.65);
}

.um-auction-actions {
  margin-top: 14px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}

.um-auction-status-list {
  margin: 0;
  padding-left: 18px;
}

.um-auction-status-list li {
  margin: 0 0 6px;
}

.um-auction-result {
  display: grid;
  gap: 8px;
}

.um-auction-result-row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: baseline;
}

.um-auction-result-label {
  min-width: 88px;
  font-size: 13px;
  color: rgba(0,0,0,.55);
}

.um-auction-result-value {
  font-size: 15px;
  font-weight: 700;
}

.um-auction-login-note {
  font-size: 13px;
  color: rgba(0,0,0,.65);
}

.um-auction-bid-form {
  margin-top: 14px;
  padding: 14px;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  background: #fff;
}

.um-auction-bid-row {
  display: grid;
  grid-template-columns: minmax(160px, 220px) 1fr;
  gap: 12px 14px;
  align-items: end;
}

.um-auction-bid-min {
  margin-top: 8px;
  font-size: 12px;
  color: rgba(0,0,0,.55);
}

.um-auction-agree {
  margin-top: 12px;
  display: flex;
  gap: 8px;
  align-items: flex-start;
  font-size: 13px;
  line-height: 1.6;
}

.um-auction-agree input {
  margin-top: 3px;
}

.um-auction-closed {
  opacity: .92;
}

.um-auction-muted {
  color: rgba(0,0,0,.55);
}

@media (max-width: 767px) {
  .um-auction-grid {
    grid-template-columns: 1fr 1fr;
  }

  .um-auction-bid-row {
    grid-template-columns: 1fr;
  }

  .um-auction-result-label {
    min-width: 72px;
  }
}

@media (max-width: 520px) {
  .um-auction-grid {
    grid-template-columns: 1fr;
  }

  .um-auction-stat-value,
  .um-auction-countdown {
    font-size: 15px;
  }
}

.um-label {
  display: block;
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 700;
}

.um-auction-bid-form .um-btn-ghost {
  background: #fff;
}

.um-auction-bid-form .um-auction-actions {
  margin-top: 22px;
}

.um-auction-bid-form .um-input {
  width: 100%;
}

.um-auction-bid-form button.um-btn {
  border: 0;
  cursor: pointer;
}

.um-auction-bid-form button.um-btn:hover {
  opacity: .92;
}

.um-auction-inline-notice {
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 14px;
  font-size: 13px;
  line-height: 1.7;
  border: 1px solid rgba(0,0,0,.08);
}

.um-auction-inline-notice-success {
  background: #f3fbf5;
  border-color: rgba(54, 140, 87, .22);
}

.um-auction-inline-notice-info {
  background: #f7f8fb;
  border-color: rgba(0, 0, 0, .08);
}

.um-artist-auction-settlement {
  margin-top: 12px;
  padding: 14px;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  background: #fafafa;
}

.um-artist-auction-settlement-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.um-artist-auction-settlement-title {
  font-size: 14px;
  font-weight: 700;
}

.um-artist-auction-settlement-body {
  display: grid;
  gap: 6px;
}

.um-artist-auction-actions {
  margin-top: 10px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.um-artist-auction-order-form {
  margin-top: 10px;
}

.um-artist-auction-order-form .um-btn {
  border: 0;
  cursor: pointer;
}

.um-artist-auction-action {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  width: fit-content;
}

.um-artist-auction-action-alert {
  background: #fff4ea;
  color: #9a4b00;
  border: 1px solid rgba(154, 75, 0, .18);
}

.um-artist-auction-action-progress {
  background: #eef7ff;
  color: #215d94;
  border: 1px solid rgba(33, 93, 148, .16);
}

.um-artist-auction-settlement .um-notice {
  margin: 8px 0 10px;
}

[id^="um-artist-order-card-"] {
  scroll-margin-top: 90px;
}

.um-artist-auction-settlement .um-notice {
  margin: 8px 0 10px;
}

.um-artist-auction-settlement .um-btn {
  border: 0;
  cursor: pointer;
}

.um-artist-order-card.is-jumped {
  box-shadow: 0 0 0 3px rgba(99, 126, 255, .18);
  transition: box-shadow .25s ease;
}

[id^="um-artist-work-row-"] {
  scroll-margin-top: 140px;
}

.um-artist-summary-row.is-jumped > td {
  background: rgba(99, 126, 255, .08);
  transition: background .25s ease;
}

[id^="um-artist-work-row-"] {
  scroll-margin-top: 90px;
}


/* =========================================
   Auction box readability tuning
   ========================================= */

/* 作品ページ上部のボタン群とオークションカードの間隔 */
.um-artwork-actions + .um-auction-box,
.um-artwork-links + .um-auction-box,
.um-card + .um-auction-box {
  margin-top: 22px;
}

/* オークションカード全体 */
.um-auction-box {
  padding: 18px;
}

/* 見出しとバッジの余白 */
.um-auction-head {
  margin-bottom: 14px;
}

.um-auction-head h3 {
  font-size: 18px;
  line-height: 1.4;
}

/* 情報グリッドを少し広く */
.um-auction-grid {
  gap: 12px 16px;
  margin-top: 14px;
}

.um-auction-stat {
  padding: 14px 16px;
  border-radius: 16px;
}

.um-auction-stat-label {
  margin-bottom: 8px;
  font-size: 12px;
  line-height: 1.5;
}

.um-auction-stat-value {
  font-size: 15px;
  line-height: 1.6;
}

/* パネル同士の見やすさ改善 */
.um-auction-panel {
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: 16px;
}

.um-auction-panel-title {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.5;
}

.um-auction-note,
.um-auction-muted,
.um-auction-status-list,
.um-auction-result {
  line-height: 1.8;
}

/* 参加案内の行間 */
.um-auction-status-list {
  margin: 0;
  padding-left: 18px;
}

.um-auction-status-list li {
  margin-bottom: 6px;
}

/* 結果表示の余白 */
.um-auction-result-row {
  padding: 2px 0;
}

/* ボタン群の詰まりを緩和 */
.um-auction-actions {
  margin-top: 16px;
  gap: 12px;
}

/* 入札フォームを少し区切って見やすく */
.um-auction-bid-form {
  margin-top: 16px;
  padding: 16px;
  border-radius: 18px;
}

.um-auction-bid-row {
  gap: 14px 16px;
}

.um-auction-bid-min {
  margin-top: 10px;
  line-height: 1.6;
}

.um-auction-agree {
  margin-top: 14px;
  line-height: 1.7;
}

/* 作品ページ上で notices が窮屈に見えないように */
.um-auction-box .um-notice,
.um-auction-box .um-auction-inline-notice {
  margin-top: 12px;
}

/* スマホ時の詰まりを軽減 */
@media (max-width: 767px) {
  .um-auction-box {
    padding: 16px;
  }

  .um-auction-grid {
    gap: 10px 12px;
  }

  .um-auction-stat,
  .um-auction-panel,
  .um-auction-bid-form {
    padding: 13px 14px;
  }

  .um-auction-head {
    margin-bottom: 12px;
  }
}

.um-artist-order-card.is-embedded,
.um-artist-bid-card.is-embedded {
  margin-top: 10px;
  margin-bottom: 0;
}

.um-artist-mobile-detail-value .um-card {
  width: 100%;
}

.um-artist-order-card.is-embedded .um-artist-order-summary,
.um-artist-bid-card.is-embedded .um-artist-order-summary {
  cursor: default;
}

.um-artist-order-card.is-embedded .um-artist-order-summary.is-clickable,
.um-artist-bid-card.is-embedded .um-artist-order-summary.is-clickable {
  cursor: default;
}

.um-wrap.um-wrap-artist-dashboard .um-card,
.um-wrap.um-wrap-artist-dashboard .um-table-wrap,
.um-wrap.um-wrap-artist-dashboard .um-table{
  width: 100%;
  max-width: 100%;
}

/* =========================================
   Artist dashboard polish
   ========================================= */

/* ① カードあり行の視覚化を強化 */
@media (min-width: 768px) {
  .um-artist-summary-row.is-card-jumpable {
    transition: transform .16s ease, box-shadow .16s ease;
  }

  .um-artist-summary-row.is-card-jumpable .um-artist-summary-cell {
    cursor: pointer;
    transition: background-color .16s ease;
  }

  .um-artist-summary-row.is-card-jumpable:hover {
    transform: translateY(-1px);
  }

  .um-artist-summary-row.is-card-jumpable:hover .um-artist-summary-cell {
    box-shadow: inset 0 1px 0 rgba(255,255,255,.35), inset 0 -1px 0 rgba(0,0,0,.03);
  }
}

/* ③ detail row と埋め込みカードの余白を調整 */
.um-artist-mobile-detail-row td {
  padding-top: 0;
}

.um-artist-mobile-detail-box {
  display: grid;
  gap: 12px;
  padding: 14px 0 8px;
}

.um-artist-mobile-detail-item {
  padding-top: 0;
}

.um-artist-mobile-detail-value .um-card {
  margin-top: 2px;
}

/* detail内カードの圧迫感を軽減 */
.um-artist-order-card.is-embedded,
.um-artist-bid-card.is-embedded {
  padding: 16px;
  border-radius: 18px;
}

/* ④ オークション状況を少し読みやすく compact に */
.um-artist-auction-summary {
  gap: 6px;
}

.um-artist-auction-head {
  gap: 8px;
}

.um-artist-auction-line,
.um-artist-auction-candidate {
  line-height: 1.6;
}

.um-artist-auction-line .um-hint {
  margin-left: 4px;
}

.um-artist-mobile-detail-inline-item .um-artist-auction-summary {
  font-size: 13px;
}

/* ⑤ ダッシュボード全体幅とカードの伸びを気持ちよく */
.um-wrap.um-wrap-artist-dashboard {
  max-width: 1560px;
}

.um-wrap.um-wrap-artist-dashboard .um-table-wrap,
.um-wrap.um-wrap-artist-dashboard .um-table,
.um-wrap.um-wrap-artist-dashboard .um-card {
  width: 100%;
  max-width: 100%;
}

@media (min-width: 1200px) {
  .um-wrap.um-wrap-artist-dashboard {
    padding-left: 20px;
    padding-right: 20px;
  }

  .um-artist-order-detail-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px 16px;
  }
}

@media (max-width: 767px) {
  .um-artist-summary-row.is-card-linked td {
    transition: background-color .16s ease;
  }

  .um-artist-mobile-detail-box {
    padding: 10px 0 4px;
    gap: 10px;
  }

  .um-artist-mobile-detail-inline {
    gap: 10px;
  }

  .um-artist-mobile-detail-inline-item .um-artist-mobile-detail-value {
    font-size: 13px;
  }

  .um-artist-order-card.is-embedded,
  .um-artist-bid-card.is-embedded {
    padding: 14px;
    border-radius: 16px;
  }
}

/* =========================================
   Card action layout unify
   ========================================= */

.um-artist-order-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:stretch;
}

.um-artist-order-actions > .um-btn,
.um-artist-order-actions > a.um-btn,
.um-artist-order-actions > button.um-btn,
.um-artist-order-actions > .um-artist-order-action-form{
  margin:0;
}

.um-artist-order-actions > .um-btn,
.um-artist-order-actions > a.um-btn,
.um-artist-order-actions > button.um-btn{
  min-height:42px;
}

.um-artist-order-actions > a.um-btn,
.um-artist-order-actions > button.um-btn{
  justify-content:center;
  text-align:center;
}

.um-card-close{
  min-width:96px;
  opacity:.82;
}

.um-card-close:hover{
  opacity:1;
}

/* 埋め込みカードでも詰まりすぎない */
.um-artist-order-card.is-embedded .um-artist-order-actions,
.um-artist-bid-card.is-embedded .um-artist-order-actions{
  margin-top:16px;
}

@media (min-width: 768px){
  .um-artist-order-actions > a.um-btn,
  .um-artist-order-actions > button.um-btn{
    min-width:120px;
  }

  .um-artist-order-actions > .um-artist-order-action-form .um-btn{
    min-width:120px;
  }
}

@media (max-width: 767px){
  .um-artist-order-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .um-artist-order-actions > a.um-btn,
  .um-artist-order-actions > button.um-btn,
  .um-artist-order-actions > .um-artist-order-action-form,
  .um-artist-order-actions > .um-artist-order-action-form .um-btn{
    width:100%;
  }

  .um-card-close{
    min-width:0;
  }
}

/* =========================================
   Active row should match card tone
   ========================================= */

/* PC / モバイル共通：開いている作品行全体 */
.um-artist-summary-row.is-active.is-card-tone-pending > td{
  background:#fffaf0 !important;
  border-bottom-color: transparent;
}

.um-artist-summary-row.is-active.is-card-tone-approved > td{
  background:#f4fff8 !important;
  border-bottom-color: transparent;
}

.um-artist-summary-row.is-active.is-card-tone-completed > td{
  background:#f5f9ff !important;
  border-bottom-color: transparent;
}

.um-artist-summary-row.is-active.is-card-tone-cancelled > td{
  background:#fff8f7 !important;
  border-bottom-color: transparent;
}

/* detail row も同じトーンに合わせる */
.um-artist-summary-row.is-active.is-card-tone-pending + .um-artist-mobile-detail-row.is-open > td{
  background:#fffaf0;
  border-top:none;
}

.um-artist-summary-row.is-active.is-card-tone-approved + .um-artist-mobile-detail-row.is-open > td{
  background:#f4fff8;
  border-top:none;
}

.um-artist-summary-row.is-active.is-card-tone-completed + .um-artist-mobile-detail-row.is-open > td{
  background:#f5f9ff;
  border-top:none;
}

.um-artist-summary-row.is-active.is-card-tone-cancelled + .um-artist-mobile-detail-row.is-open > td{
  background:#fff8f7;
  border-top:none;
}