/* MDAUC フロント スタイル — 医療B2B向け 清潔感のある実用UI */
:root {
	--mdauc-primary: #0f766e;      /* teal 700 */
	--mdauc-primary-d: #0b5a54;
	--mdauc-accent: #1d4ed8;       /* blue 700 */
	--mdauc-ink: #1f2937;
	--mdauc-muted: #6b7280;
	--mdauc-line: #e5e7eb;
	--mdauc-bg: #f8fafc;
	--mdauc-ok: #15803d;
	--mdauc-err: #b91c1c;
	--mdauc-warn: #b45309;
	--mdauc-radius: 10px;
	--mdauc-shadow: 0 1px 3px rgba(16,24,40,.06), 0 1px 2px rgba(16,24,40,.04);
	--mdauc-shadow-h: 0 8px 24px rgba(16,24,40,.10);
}
.mdauc-archive, .mdauc-detail, .mdauc-mypage, .mdauc-form, .mdauc-transaction { color: var(--mdauc-ink); }

/* ---- 一覧 ---- */
.mdauc-filter { display: flex; gap: 8px; margin-bottom: 20px; flex-wrap: wrap; }
.mdauc-filter a { font-size: 13px; padding: 7px 16px; border: 1px solid var(--mdauc-line); border-radius: 999px; text-decoration: none; color: var(--mdauc-ink); background: #fff; transition: .15s; }
.mdauc-filter a:hover { border-color: var(--mdauc-primary); color: var(--mdauc-primary); }

.mdauc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 18px; }
.mdauc-card { display: flex; flex-direction: column; border: 1px solid var(--mdauc-line); border-radius: var(--mdauc-radius); overflow: hidden; text-decoration: none; color: inherit; background: #fff; box-shadow: var(--mdauc-shadow); transition: transform .15s, box-shadow .15s; }
.mdauc-card:hover { transform: translateY(-3px); box-shadow: var(--mdauc-shadow-h); }
.mdauc-card-thumb { position: relative; aspect-ratio: 4/3; background: linear-gradient(135deg,#eef2f5,#e2e8f0); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.mdauc-card-thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mdauc-noimg { color: #94a3b8; font-size: 13px; }
.mdauc-badge { position: absolute; top: 10px; left: 10px; font-size: 11px; font-weight: 600; padding: 3px 10px; border-radius: 999px; color: #fff; letter-spacing: .02em; }
.mdauc-badge-auction { background: var(--mdauc-accent); }
.mdauc-badge-fixed { background: var(--mdauc-primary); }
.mdauc-badge-export { background: #b45309; top: 38px; }
.mdauc-badge-supply { background: #7c3aed; top: 38px; }
.mdauc-export-banner { grid-column: 1 / -1; background: #fffbeb; border: 1px solid #fde68a; color: #92400e; padding: 11px 16px; border-radius: 8px; font-size: 13px; font-weight: 700; margin-bottom: 6px; }
.mdauc-card-body { padding: 12px 14px 14px; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.mdauc-card-title { font-size: 14px; line-height: 1.45; margin: 0; font-weight: 600; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.9em; }
.mdauc-card-maker { font-size: 12px; color: var(--mdauc-muted); margin: 0; }
.mdauc-card-loc { font-size: 12px; color: var(--mdauc-muted); margin: 2px 0 0; }
.mdauc-card-ended { font-size: 13px; font-weight: 700; color: var(--mdauc-muted); margin: 4px 0 0; }
.mdauc-block-bidder { font-size: 11px; padding: 1px 7px; margin-left: 6px; border: 1px solid #fca5a5; background: #fef2f2; color: #b91c1c; border-radius: 6px; cursor: pointer; }
.mdauc-block-bidder:hover { background: #fee2e2; }
.mdauc-owner-actions { text-align: left; background: #f8fafc; border: 1px solid var(--mdauc-line); border-radius: 12px; padding: 14px; }
.mdauc-owner-label { font-weight: 700; font-size: 13px; color: var(--mdauc-muted); margin: 0 0 10px; }
.mdauc-owner-note { font-size: 13px; color: var(--mdauc-muted); margin: 0; }
.mdauc-owner-btns { display: flex; gap: 8px; align-items: stretch; }
.mdauc-owner-btns form { display: contents; margin: 0; }
.mdauc-obtn { flex: 1 1 0%; min-width: 0; display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 42px; padding: 0 12px; border-radius: 9px; font-family: inherit; font-size: 13px; font-weight: 700; line-height: 1; cursor: pointer; text-decoration: none; border: 1px solid transparent; box-sizing: border-box; transition: .15s; appearance: none; -webkit-appearance: none; }
.mdauc-obtn-ico { font-size: 12px; line-height: 1; }
.mdauc-obtn-edit { background: var(--mdauc-primary); color: #fff; }
.mdauc-obtn-edit:hover { filter: brightness(1.08); }
.mdauc-obtn-cancel { background: #fff; color: #64748b; border-color: var(--mdauc-line); }
.mdauc-obtn-cancel:hover { color: #b91c1c; border-color: #fca5a5; background: #fef2f2; }
.mdauc-editlog { list-style: none; padding: 0; margin: 0; font-size: 13px; }
.mdauc-editlog li { padding: 6px 0; border-bottom: 1px solid var(--mdauc-line); color: var(--mdauc-ink); }
.mdauc-editlog-time { color: var(--mdauc-muted); margin-right: 10px; font-variant-numeric: tabular-nums; }
.mdauc-appends { margin: 0; }
.mdauc-append-item { padding: 9px 0; border-bottom: 1px dashed var(--mdauc-line); font-size: 14px; line-height: 1.7; }
.mdauc-append-item:last-child { border-bottom: 0; }
.mdauc-append-time { color: var(--mdauc-primary); font-weight: 700; margin-right: 6px; }
.mdauc-append-current { background: #f8fafc; border: 1px solid var(--mdauc-line); border-radius: 10px; padding: 16px; margin-bottom: 18px; }
.mdauc-append-h { font-weight: 700; margin: 0 0 12px; }
.mdauc-append-block { margin-bottom: 12px; font-size: 14px; line-height: 1.7; }
.mdauc-append-label { display: inline-block; font-size: 11px; font-weight: 700; color: var(--mdauc-muted); background: #e2e8f0; border-radius: 4px; padding: 1px 8px; margin-bottom: 4px; }
.mdauc-cat-major { font-weight: 700; margin: 14px 0 4px; color: var(--mdauc-primary); border-bottom: 1px solid var(--mdauc-line); padding-bottom: 3px; }
.mdauc-cat-children { display: flex; flex-wrap: wrap; gap: 4px 16px; margin-bottom: 4px; }
.mdauc-blocklist { list-style: none; padding: 0; margin: 8px 0 0; }
.mdauc-blocklist li { padding: 6px 0; border-bottom: 1px solid var(--mdauc-line); font-size: 14px; }
.mdauc-viewtabs { display: flex; gap: 4px; border-bottom: 2px solid var(--mdauc-line); margin-bottom: 18px; }
.mdauc-vtab { padding: 10px 18px; text-decoration: none; color: var(--mdauc-muted); font-weight: 700; font-size: 15px; border-bottom: 3px solid transparent; margin-bottom: -2px; }
.mdauc-vtab.is-active { color: var(--mdauc-primary); border-bottom-color: var(--mdauc-primary); }
.mdauc-pstate { display: inline-block; font-size: 11px; font-weight: 700; padding: 2px 9px; border-radius: 6px; margin-bottom: 4px; }
.mdauc-pstate-new { background: #dbeafe; color: #1e40af; }
.mdauc-pstate-likenew { background: #cffafe; color: #0e7490; }
.mdauc-pstate-used { background: #f1f5f9; color: #475569; }
.mdauc-pstate-junk { background: #fef3c7; color: #92400e; }
.mdauc-tr-tag { font-size: 10px; background: #eef2ff; color: #4338ca; padding: 1px 6px; border-radius: 4px; margin-left: 6px; }
.mdauc-locked { color: var(--mdauc-muted); font-weight: 600; font-size: .82em; background: #f1f5f9; padding: 2px 10px; border-radius: 6px; white-space: nowrap; }
.mdauc-refimg { position: absolute; bottom: 6px; right: 6px; font-size: 10px; background: rgba(15,23,42,.66); color: #fff; padding: 2px 8px; border-radius: 4px; }
.mdauc-gallery-main { position: relative; }
.mdauc-gallery-nav { position: absolute; top: 50%; transform: translateY(-50%); display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; padding: 0; margin: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.94); color: #0f172a; font-size: 34px; font-weight: 700; line-height: 1; cursor: pointer; box-shadow: 0 2px 12px rgba(0,0,0,.3); transition: background .15s; z-index: 5; -webkit-tap-highlight-color: transparent; }
.mdauc-gallery-nav:hover { background: #fff; }
.mdauc-gallery-nav:active { background: #e2e8f0; }
.mdauc-gallery-prev { left: 14px; right: auto; }
.mdauc-gallery-next { right: 14px; left: auto; }
.mdauc-gallery-count { position: absolute; bottom: 12px; left: 50%; transform: translateX(-50%); background: rgba(15,23,42,.7); color: #fff; font-size: 13px; padding: 4px 13px; border-radius: 14px; z-index: 5; pointer-events: none; }
@media (max-width: 600px) { .mdauc-gallery-nav { width: 50px; height: 50px; font-size: 30px; } }
/* 出品フォーム画像プレビュー */
.mdauc-img-preview { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px; }
.mdauc-img-item { position: relative; width: 96px; height: 96px; border-radius: 8px; overflow: hidden; border: 1px solid var(--mdauc-line); background: #fff; }
.mdauc-img-item.is-main { border: 2px solid var(--mdauc-primary); }
.mdauc-img-item img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mdauc-img-main { position: absolute; top: 0; left: 0; background: var(--mdauc-primary); color: #fff; font-size: 10px; font-weight: 700; padding: 1px 7px; border-bottom-right-radius: 6px; }
.mdauc-img-ctrls { position: absolute; bottom: 0; left: 0; right: 0; display: flex; justify-content: center; gap: 3px; background: rgba(15,23,42,.55); padding: 3px; }
.mdauc-img-ctrls button { border: 0; background: rgba(255,255,255,.9); color: #0f172a; width: 24px; height: 24px; border-radius: 4px; cursor: pointer; font-size: 11px; line-height: 1; padding: 0; }
.mdauc-img-ctrls button:hover { background: #fff; }
/* 一覧カード複数枚バッジ */
.mdauc-photocount { position: absolute; top: 8px; left: 8px; background: rgba(15,23,42,.66); color: #fff; font-size: 11px; font-weight: 600; padding: 2px 8px; border-radius: 10px; }
/* 入札履歴スクロール（最新5件表示） */
.mdauc-history-scroll { max-height: 210px; overflow-y: auto; border: 1px solid var(--mdauc-line); border-radius: 8px; }
.mdauc-history-scroll .mdauc-history { margin: 0; }
.mdauc-history-note { font-size: 12px; color: var(--mdauc-muted); margin: 6px 0 0; }
.mdauc-endtime { font-size: 13px; color: var(--mdauc-muted); margin: 6px 0 0; text-align: center; }
.mdauc-remarks { background: #f8fafc; border: 1px solid var(--mdauc-line); border-radius: 8px; padding: 12px 14px; font-size: 14px; line-height: 1.7; color: var(--mdauc-ink, #0f172a); }
.mdauc-desc { font-size: 15px; line-height: 1.85; color: var(--mdauc-ink, #0f172a); margin-bottom: 4px; }
.mdauc-desc p { margin: 0 0 10px; }
.mdauc-desc p:last-child { margin-bottom: 0; }

/* ===== 逆オークション ===== */
.mdauc-btn-lg { font-size: 16px; padding: 13px 22px; }
.mdauc-rev-hero { background: linear-gradient(135deg, #ecfeff, #f0f9ff); border: 1px solid var(--mdauc-line); border-radius: 14px; padding: 22px 24px; margin-bottom: 20px; }
.mdauc-rev-hero h2 { margin: 0 0 6px; font-size: 22px; }
.mdauc-rev-hero p { margin: 0 0 16px; color: var(--mdauc-muted); font-size: 14px; }
.mdauc-rev-steps { list-style: none; margin: 0; padding: 0; display: flex; gap: 12px; flex-wrap: wrap; }
.mdauc-rev-steps li { flex: 1; min-width: 150px; display: flex; align-items: center; gap: 10px; background: #fff; border: 1px solid var(--mdauc-line); border-radius: 10px; padding: 12px 14px; }
.mdauc-rev-steps .n { flex: none; width: 30px; height: 30px; border-radius: 50%; background: var(--mdauc-primary); color: #fff; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.mdauc-rev-steps .t { font-size: 13px; line-height: 1.4; }
.mdauc-req-postbox { margin-bottom: 22px; }
.mdauc-req-postbox > summary { display: inline-block; cursor: pointer; list-style: none; }
.mdauc-req-postbox > summary::-webkit-details-marker { display: none; }
.mdauc-req-postbox[open] > summary { margin-bottom: 14px; }

.mdauc-rev-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; }
.mdauc-rev-card { display: block; background: #fff; border: 1px solid var(--mdauc-line); border-radius: 12px; padding: 16px 18px; text-decoration: none; color: inherit; transition: box-shadow .15s, transform .15s; }
.mdauc-rev-card:hover { box-shadow: var(--mdauc-shadow); transform: translateY(-2px); }
.mdauc-rev-card-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.mdauc-badge-cat { background: #e0f2fe; color: #0369a1; font-size: 12px; font-weight: 700; padding: 3px 10px; border-radius: 8px; }
.mdauc-rev-deadline { font-size: 12px; color: var(--mdauc-muted); font-weight: 600; }
.mdauc-rev-deadline.urgent { color: #dc2626; }
.mdauc-status { font-size: 12px; font-weight: 700; padding: 3px 10px; border-radius: 8px; }
.mdauc-status.open { background: #dcfce7; color: #15803d; }
.mdauc-status.closed { background: #f1f5f9; color: var(--mdauc-muted); }
.mdauc-rev-model { font-size: 18px; margin: 0 0 8px; line-height: 1.3; }
.mdauc-rev-budget { font-size: 14px; color: var(--mdauc-muted); }
.mdauc-rev-budget strong { color: var(--mdauc-ink, #0f172a); font-size: 17px; }
.mdauc-rev-cond { font-size: 13px; color: var(--mdauc-muted); margin: 8px 0 0; }
.mdauc-rev-loc { font-size: 13px; color: var(--mdauc-ink, #0f172a); font-weight: 600; margin: 6px 0 0; }
.mdauc-rev-card-foot { display: flex; justify-content: space-between; align-items: center; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--mdauc-line); }
.mdauc-rev-propcount { font-size: 13px; color: var(--mdauc-muted); }
.mdauc-rev-propcount strong { color: var(--mdauc-primary); font-size: 16px; }
.mdauc-rev-cta { font-size: 13px; font-weight: 700; color: var(--mdauc-primary); }
.mdauc-rev-past { margin-top: 44px; padding-top: 18px; border-top: 1px solid var(--mdauc-line); }
.mdauc-rev-past-h { font-size: 13px; color: var(--mdauc-muted); font-weight: 700; margin: 0 0 8px; }
.mdauc-rev-past-list { list-style: none; padding: 0 4px 0 0; margin: 0; max-height: 116px; overflow-y: auto; }
.mdauc-rev-past-list li { border-bottom: 1px solid #f1f5f9; }
.mdauc-rev-past-list a { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 7px 2px; text-decoration: none; color: var(--mdauc-muted); font-size: 12.5px; }
.mdauc-rev-past-list a:hover { color: var(--mdauc-primary); }
.mdauc-rev-past-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mdauc-rev-past-status { flex: none; font-size: 11px; color: #94a3b8; border: 1px solid #e2e8f0; border-radius: 5px; padding: 1px 7px; }
.mdauc-rev-past-note { font-size: 11px; color: #94a3b8; margin: 8px 0 0; }

.mdauc-rev-summary { background: #fff; border: 1px solid var(--mdauc-line); border-radius: 14px; padding: 20px 22px; margin-bottom: 16px; }
.mdauc-rev-summary-head { display: flex; gap: 10px; align-items: center; margin-bottom: 8px; }
.mdauc-rev-summary .mdauc-rev-model { font-size: 24px; margin: 0 0 14px; }
.mdauc-rev-summary-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; }
.mdauc-rev-summary-grid .lbl { display: block; font-size: 12px; color: var(--mdauc-muted); margin-bottom: 2px; }
.mdauc-rev-summary-grid .val { font-size: 16px; font-weight: 600; }
.mdauc-rev-rolebanner { border-radius: 10px; padding: 12px 16px; font-size: 14px; margin-bottom: 18px; }
.mdauc-rev-rolebanner.buyer { background: #eff6ff; border: 1px solid #bfdbfe; color: #1e40af; }
.mdauc-rev-rolebanner.seller { background: #f0fdf4; border: 1px solid #bbf7d0; color: #15803d; }
.mdauc-rev-formhint { font-size: 13px; color: var(--mdauc-muted); margin: 0 0 12px; }

.mdauc-proposal.is-cheapest { border-color: var(--mdauc-primary); box-shadow: 0 0 0 1px var(--mdauc-primary); }
.mdauc-proposal-tags { display: flex; gap: 6px; align-items: center; margin-bottom: 6px; }
.mdauc-tag-cheap { background: var(--mdauc-primary); color: #fff; font-size: 11px; font-weight: 700; padding: 2px 9px; border-radius: 8px; }
.mdauc-proposal-seller { font-size: 12px; color: var(--mdauc-muted); margin-left: auto; }
.mdauc-proposal-save { display: inline-block; background: #dcfce7; color: #15803d; font-size: 12px; font-weight: 700; padding: 2px 9px; border-radius: 8px; margin-left: 8px; }
.mdauc-card-price { font-size: 18px; font-weight: 800; margin: 4px 0 0; color: var(--mdauc-ink); }
.mdauc-card-time { display: inline-block; font-size: 11px; color: var(--mdauc-err); font-weight: 600; margin-left: 6px; }
.mdauc-empty { padding: 48px; text-align: center; color: var(--mdauc-muted); background: var(--mdauc-bg); border-radius: var(--mdauc-radius); }
.mdauc-pagination { margin-top: 24px; display: flex; gap: 6px; justify-content: center; }
.mdauc-pagination .page-numbers { padding: 6px 12px; border: 1px solid var(--mdauc-line); border-radius: 8px; text-decoration: none; color: var(--mdauc-ink); }
.mdauc-pagination .current { background: var(--mdauc-primary); color: #fff; border-color: var(--mdauc-primary); }

/* ---- 詳細 ---- */
.mdauc-detail { margin-top: 28px; display: grid; grid-template-columns: 1fr 340px; gap: 28px; align-items: start; }
@media (max-width: 760px) { .mdauc-detail { grid-template-columns: 1fr; } }
.mdauc-spec { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid var(--mdauc-line); border-radius: var(--mdauc-radius); overflow: hidden; }
.mdauc-spec th, .mdauc-spec td { border-bottom: 1px solid var(--mdauc-line); padding: 11px 14px; text-align: left; font-size: 14px; }
.mdauc-spec tr:last-child th, .mdauc-spec tr:last-child td { border-bottom: 0; }
.mdauc-spec th { background: var(--mdauc-bg); width: 38%; font-weight: 600; color: #374151; }
.mdauc-action { border: 1px solid var(--mdauc-line); border-radius: var(--mdauc-radius); padding: 20px; background: #fff; box-shadow: var(--mdauc-shadow); position: sticky; top: 20px; }
.mdauc-price-big { font-size: 26px; font-weight: 800; margin: 0 0 6px; color: var(--mdauc-primary); }
.mdauc-time { color: var(--mdauc-err); font-weight: 600; margin: 0 0 14px; font-size: 14px; }
.mdauc-reserve { font-size: 13px; font-weight: 600; margin: 0 0 12px; padding: 6px 10px; border-radius: 6px; display: inline-block; }
.mdauc-reserve.met { color: var(--mdauc-ok); background: #f0fdf4; }
.mdauc-reserve.notmet { color: var(--mdauc-warn); background: #fffbeb; }
.mdauc-closed { padding: 12px; background: var(--mdauc-bg); border-radius: 8px; color: var(--mdauc-muted); text-align: center; font-weight: 600; }

/* ---- ボタン・入力 ---- */
.mdauc-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; width: 100%; background: var(--mdauc-primary); color: #fff; border: 0; border-radius: 8px; padding: 12px 18px; font-size: 15px; font-weight: 600; cursor: pointer; transition: .15s; }
.mdauc-btn:hover { background: var(--mdauc-primary-d); }
.mdauc-btn.mdauc-secondary { background: #fff; color: var(--mdauc-primary); border: 1.5px solid var(--mdauc-primary); }
.mdauc-btn.mdauc-secondary:hover { background: #f0fdfa; }
.mdauc-link-btn { background: none; border: 0; color: var(--mdauc-accent); cursor: pointer; padding: 4px 8px; font-size: 13px; font-weight: 600; }
.mdauc-link-btn:hover { text-decoration: underline; }
.mdauc-muted { color: var(--mdauc-muted); font-size: 13px; }
.mdauc-bid-box input, .mdauc-offer-box input, .mdauc-offer-box textarea { width: 100%; padding: 11px 12px; margin-bottom: 10px; box-sizing: border-box; border: 1px solid var(--mdauc-line); border-radius: 8px; font-size: 15px; }
.mdauc-bid-box input:focus, .mdauc-offer-box input:focus, .mdauc-offer-box textarea:focus, .mdauc-form input:focus, .mdauc-form select:focus, .mdauc-form textarea:focus { outline: none; border-color: var(--mdauc-primary); box-shadow: 0 0 0 3px rgba(15,118,110,.12); }
.mdauc-hint { font-size: 12px; color: var(--mdauc-muted); margin: 4px 0 0; }
.mdauc-offer-box { margin-top: 16px; border-top: 1px dashed var(--mdauc-line); padding-top: 16px; }
.mdauc-msg { margin-top: 12px; font-size: 13px; min-height: 1em; }
.mdauc-msg.is-ok { color: var(--mdauc-ok); }
.mdauc-msg.is-err { color: var(--mdauc-err); }

/* ---- フォーム ---- */
.mdauc-form { max-width: 760px; }
.mdauc-form label { display: block; margin-bottom: 14px; font-size: 14px; font-weight: 500; }
.mdauc-form input[type=text], .mdauc-form input[type=email], .mdauc-form input[type=number], .mdauc-form input[type=date], .mdauc-form input[type=datetime-local], .mdauc-form input[type=file], .mdauc-form select, .mdauc-form textarea { width: 100%; padding: 10px 12px; box-sizing: border-box; border: 1px solid var(--mdauc-line); border-radius: 8px; font-size: 15px; margin-top: 5px; }
.mdauc-lead { color: var(--mdauc-muted); background: var(--mdauc-bg); padding: 12px 16px; border-radius: 8px; font-size: 14px; }
.mdauc-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 0 18px; }
@media (max-width: 560px) { .mdauc-grid2 { grid-template-columns: 1fr; } }
.mdauc-fieldset { border: 1px solid var(--mdauc-line); border-radius: var(--mdauc-radius); padding: 16px 18px; margin-bottom: 18px; }
.mdauc-fieldset legend { font-weight: 700; padding: 0 8px; color: var(--mdauc-primary); }
.mdauc-consent { background: #fffbeb; border-color: #fde68a; }
.mdauc-check { display: flex; gap: 10px; align-items: flex-start; font-weight: 400; margin-bottom: 10px; }
.mdauc-check input { margin-top: 3px; }
.req { color: var(--mdauc-err); }

/* ---- フラッシュ ---- */
.mdauc-flash { padding: 12px 16px; border-radius: 8px; margin-bottom: 18px; font-size: 14px; font-weight: 500; }
.mdauc-flash-ok { background: #f0fdf4; color: var(--mdauc-ok); border: 1px solid #bbf7d0; }
.mdauc-flash-err { background: #fef2f2; color: var(--mdauc-err); border: 1px solid #fecaca; }

/* ---- マイページ ---- */
.mdauc-tabs { display: flex; gap: 2px; border-bottom: 2px solid var(--mdauc-line); margin-bottom: 20px; flex-wrap: wrap; }
.mdauc-tabs a { padding: 11px 20px; text-decoration: none; color: var(--mdauc-muted); font-weight: 600; font-size: 14px; }
.mdauc-tabs a.is-active { border-bottom: 2px solid var(--mdauc-primary); color: var(--mdauc-primary); margin-bottom: -2px; }
.mdauc-table { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid var(--mdauc-line); border-radius: var(--mdauc-radius); overflow: hidden; }
.mdauc-table th, .mdauc-table td { border-bottom: 1px solid var(--mdauc-line); padding: 11px 14px; font-size: 14px; text-align: left; }
.mdauc-table thead th { background: var(--mdauc-bg); font-weight: 600; color: #374151; }
.mdauc-table tbody tr:last-child td { border-bottom: 0; }
.mdauc-table a { color: var(--mdauc-accent); text-decoration: none; font-weight: 600; }

/* ---- 取引詳細 ---- */
.mdauc-tx-meta { color: var(--mdauc-muted); font-size: 14px; }
.mdauc-note { background: #fffbeb; border: 1px solid #fde68a; padding: 12px 14px; border-radius: 8px; font-size: 13px; margin: 14px 0; color: #92400e; }
.mdauc-tx-actions { margin: 16px 0; }
.mdauc-tx-actions .mdauc-btn { width: auto; }
.mdauc-address { margin: 14px 0; border: 1px solid var(--mdauc-line); border-radius: 8px; padding: 8px 14px; }
.mdauc-address summary { cursor: pointer; font-weight: 600; }
.mdauc-thread { margin-top: 24px; }
.mdauc-messages { max-height: 380px; overflow-y: auto; border: 1px solid var(--mdauc-line); padding: 16px; border-radius: var(--mdauc-radius); background: var(--mdauc-bg); }
.mdauc-message { margin-bottom: 12px; }
.mdauc-message.mine { text-align: right; }
.mdauc-message-body { display: inline-block; background: #fff; border: 1px solid var(--mdauc-line); padding: 9px 13px; border-radius: 12px; font-size: 14px; max-width: 80%; text-align: left; }
.mdauc-message.mine .mdauc-message-body { background: #ecfdf5; border-color: #a7f3d0; }
.mdauc-message-time { font-size: 11px; color: #9ca3af; margin-top: 3px; }
.mdauc-message-form { margin-top: 12px; display: flex; gap: 10px; }
.mdauc-message-form textarea { flex: 1; padding: 10px 12px; border: 1px solid var(--mdauc-line); border-radius: 8px; }
.mdauc-message-form .mdauc-btn { width: auto; }
.mdauc-offer-actions { display: flex; gap: 4px; flex-wrap: wrap; }

/* ---- 検索バー・ツールバー ---- */
.mdauc-searchbar { display: flex; gap: 8px; margin-bottom: 16px; }
.mdauc-search-input { flex: 1; padding: 12px 16px; border: 1px solid var(--mdauc-line); border-radius: 999px; font-size: 15px; }
.mdauc-search-input:focus { outline: none; border-color: var(--mdauc-primary); box-shadow: 0 0 0 3px rgba(15,118,110,.12); }
.mdauc-search-btn { width: auto; padding: 12px 28px; border-radius: 999px; }
.mdauc-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 20px; flex-wrap: wrap; }
.mdauc-chips { display: flex; gap: 8px; flex-wrap: wrap; }
.mdauc-chip { font-size: 13px; padding: 8px 18px; border: 1px solid var(--mdauc-line); border-radius: 999px; text-decoration: none; color: var(--mdauc-ink); background: #fff; font-weight: 600; transition: .15s; }
.mdauc-chip:hover { border-color: var(--mdauc-primary); }
.mdauc-chip.is-active { background: var(--mdauc-primary); color: #fff; border-color: var(--mdauc-primary); }
.mdauc-sort select { padding: 8px 12px; border: 1px solid var(--mdauc-line); border-radius: 8px; font-size: 13px; }
.mdauc-sort label { font-size: 13px; color: var(--mdauc-muted); display: flex; gap: 6px; align-items: center; }

/* ---- カード追記 ---- */
.mdauc-cond { position: absolute; top: 10px; right: 10px; font-size: 11px; padding: 3px 9px; border-radius: 999px; background: rgba(15,23,42,.72); color: #fff; }
.mdauc-card-label { font-size: 11px; color: var(--mdauc-muted); margin: 6px 0 0; display: flex; justify-content: space-between; margin-top: auto; }
.mdauc-card-bids { color: var(--mdauc-accent); font-weight: 700; }
.mdauc-card-time { font-size: 12px; color: var(--mdauc-err); font-weight: 700; margin: 6px 0 0; }
.mdauc-card-time.mdauc-urgent { animation: mdauc-blink 1s steps(2,start) infinite; }
@keyframes mdauc-blink { 50% { opacity: .55; } }

/* ---- 詳細レイアウト ---- */
.mdauc-detail-main { min-width: 0; }
.mdauc-gallery-main { aspect-ratio: 4/3; background: linear-gradient(135deg,#eef2f5,#e2e8f0); border-radius: var(--mdauc-radius); display: flex; align-items: center; justify-content: center; overflow: hidden; border: 1px solid var(--mdauc-line); }
.mdauc-gallery-main img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.mdauc-gallery-thumbs { display: flex; gap: 8px; margin-top: 10px; flex-wrap: wrap; }
.mdauc-thumb { width: 64px; height: 64px; object-fit: cover; border-radius: 8px; border: 2px solid var(--mdauc-line); cursor: pointer; }
.mdauc-thumb:hover, .mdauc-thumb.is-active { border-color: var(--mdauc-primary); }
.mdauc-spec-heading { font-size: 16px; font-weight: 700; margin: 26px 0 12px; padding-bottom: 8px; border-bottom: 2px solid var(--mdauc-line); }
.mdauc-history td { font-size: 13px; }
.mdauc-history-time { color: var(--mdauc-muted); text-align: right; }

/* ---- 入札パネル ---- */
.mdauc-panel-label { font-size: 12px; color: var(--mdauc-muted); margin: 0 0 2px; font-weight: 600; }
.mdauc-countdown { display: flex; align-items: baseline; gap: 8px; background: #fef2f2; border: 1px solid #fecaca; border-radius: 8px; padding: 10px 14px; margin: 0 0 16px; }
.mdauc-countdown-label { font-size: 12px; color: var(--mdauc-muted); }
.mdauc-countdown #mdauc-timeleft { font-size: 20px; font-weight: 800; color: var(--mdauc-err); font-variant-numeric: tabular-nums; }
.mdauc-countdown.mdauc-urgent { animation: mdauc-blink 1s steps(2,start) infinite; }
.mdauc-yourmax { background: #ecfdf5; border: 1px solid #a7f3d0; color: var(--mdauc-ok); padding: 8px 12px; border-radius: 8px; font-size: 13px; font-weight: 600; margin: 0 0 12px; }
.mdauc-quick { display: flex; gap: 6px; margin-bottom: 10px; }
.mdauc-quick-btn { flex: 1; padding: 8px 4px; font-size: 12px; border: 1px solid var(--mdauc-line); background: #fff; border-radius: 7px; cursor: pointer; font-weight: 600; }
.mdauc-quick-btn:hover { border-color: var(--mdauc-primary); color: var(--mdauc-primary); }
.mdauc-seller { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--mdauc-line); font-size: 13px; color: var(--mdauc-muted); }
.mdauc-loginbox { max-width: 420px; margin: 10px auto 0; background: #fff; border: 1px solid var(--mdauc-line); border-radius: 12px; padding: 24px 26px; box-shadow: var(--mdauc-shadow); }
.mdauc-loginbox h2 { margin: 0 0 14px; font-size: 20px; }
.mdauc-loginbox .login-username, .mdauc-loginbox .login-password { margin-bottom: 12px; }
.mdauc-loginbox label { display: block; font-size: 13px; font-weight: 600; margin-bottom: 4px; }
.mdauc-loginbox input[type=text], .mdauc-loginbox input[type=password] { width: 100%; padding: 10px 12px; border: 1px solid var(--mdauc-line); border-radius: 8px; box-sizing: border-box; font-size: 15px; }
.mdauc-loginbox .login-submit input { width: 100%; background: var(--mdauc-primary); color: #fff; border: 0; border-radius: 8px; padding: 12px; font-size: 15px; font-weight: 700; cursor: pointer; margin-top: 6px; }
.mdauc-loginbox .login-remember { font-weight: 400; font-size: 13px; color: var(--mdauc-muted); margin: 6px 0; }
.mdauc-login-reg { text-align: center; margin: 14px 0 0; font-size: 14px; }
.mdauc-loginhint { font-size: 14px; color: var(--mdauc-muted); padding: 8px 0; }
.mdauc-loginhint a { color: var(--mdauc-primary); font-weight: 700; }

/* ---- ライブ競り ---- */
.mdauc-live { background: #0f172a; border-radius: 14px; overflow: hidden; color: #e2e8f0; }
.mdauc-live-head { display: flex; align-items: center; gap: 10px; padding: 14px 20px; background: #0b1220; border-bottom: 1px solid #1e293b; }
.mdauc-live-dot { width: 10px; height: 10px; border-radius: 50%; background: #ef4444; box-shadow: 0 0 0 0 rgba(239,68,68,.6); animation: mdauc-pulse 1.4s infinite; }
@keyframes mdauc-pulse { 0% { box-shadow: 0 0 0 0 rgba(239,68,68,.6); } 70% { box-shadow: 0 0 0 8px rgba(239,68,68,0); } 100% { box-shadow: 0 0 0 0 rgba(239,68,68,0); } }
.mdauc-live-title { font-weight: 800; letter-spacing: .04em; }
.mdauc-live-lotno { margin-left: auto; font-size: 13px; color: #94a3b8; }
.mdauc-live-idle { padding: 60px 20px; text-align: center; color: #94a3b8; }
.mdauc-live-stage { display: grid; grid-template-columns: 1.1fr 1fr; gap: 0; }
@media (max-width: 760px) { .mdauc-live-stage { grid-template-columns: 1fr; } }
.mdauc-live-photo { background: #000; aspect-ratio: 4/3; display: flex; align-items: center; justify-content: center; }
.mdauc-live-photo img { width: 100%; height: 100%; object-fit: contain; }
.mdauc-live-info { padding: 24px; }
.mdauc-live-info h2 { margin: 0 0 4px; font-size: 20px; color: #fff; }
.mdauc-live-maker { color: #94a3b8; font-size: 13px; margin: 0 0 18px; }
.mdauc-live-pricelabel { color: #94a3b8; font-size: 12px; margin: 0 0 2px; }
.mdauc-live-price { font-size: 38px; font-weight: 800; color: #34d399; margin: 0 0 18px; font-variant-numeric: tabular-nums; }
.mdauc-live-bid { width: 100%; background: #ef4444; font-size: 17px; padding: 16px; }
.mdauc-live-bid:hover { background: #dc2626; }
.mdauc-live-bid:disabled { opacity: .6; cursor: default; }
.mdauc-live-bidbox .mdauc-hint { color: #94a3b8; }
.mdauc-live-feed { padding: 16px 24px 24px; border-top: 1px solid #1e293b; }
.mdauc-live-feed h3 { font-size: 13px; color: #94a3b8; margin: 0 0 10px; font-weight: 700; }
.mdauc-live-feed ul { list-style: none; margin: 0; padding: 0; max-height: 200px; overflow-y: auto; }
.mdauc-live-feed li { display: flex; align-items: center; gap: 10px; padding: 7px 0; border-bottom: 1px solid #1e293b; font-size: 14px; }
.mdauc-live-feed li .b { color: #cbd5e1; font-weight: 600; }
.mdauc-live-feed li .t { margin-left: auto; color: #64748b; font-size: 12px; }
.mdauc-live #mdauc-live-msg { padding: 0 24px 16px; }

/* ---- AI出品パネル ---- */
.mdauc-ai-panel { background: linear-gradient(135deg, #ecfdf5, #eff6ff); border: 1px solid #a7f3d0; border-radius: 12px; padding: 18px; margin-bottom: 22px; }
.mdauc-ai-panel h3 { margin: 0 0 4px; font-size: 16px; }
.mdauc-ai-panel input[type=file] { display: block; margin: 12px 0; }
.mdauc-ai-panel .mdauc-btn { width: auto; }
.mdauc-ai-status { margin-top: 10px; font-size: 13px; min-height: 1em; }
.mdauc-ai-status.is-ok { color: var(--mdauc-ok); font-weight: 600; }
.mdauc-ai-status.is-err { color: var(--mdauc-err); }
.mdauc-ai-status.is-busy { color: var(--mdauc-accent); }
.mdauc-ai-status.is-busy::before { content: "⏳ "; }
.mdauc-ai-thumbs { display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap; }
.mdauc-ai-thumbs img { width: 60px; height: 60px; object-fit: cover; border-radius: 8px; border: 1px solid var(--mdauc-line); }

/* ---- 逆オークション ---- */
.mdauc-req-postbox { margin: 18px 0; border: 1px solid var(--mdauc-line); border-radius: 12px; padding: 12px 16px; background: #fff; }
.mdauc-req-postbox summary { display: inline-block; cursor: pointer; width: auto; }
.mdauc-req-postbox .mdauc-form { margin-top: 16px; }
.mdauc-proposals { display: flex; flex-direction: column; gap: 12px; }
.mdauc-proposal { display: flex; gap: 14px; border: 1px solid var(--mdauc-line); border-radius: 12px; padding: 14px; background: #fff; }
.mdauc-proposal.is-selected { border-color: var(--mdauc-primary); box-shadow: 0 0 0 2px rgba(15,118,110,.15); background: #f0fdfa; }
.mdauc-proposal-photo img { width: 84px; height: 84px; object-fit: cover; border-radius: 8px; border: 1px solid var(--mdauc-line); }
.mdauc-proposal-body { flex: 1; min-width: 0; }
.mdauc-proposal-price { font-size: 22px; font-weight: 800; margin: 0 0 4px; color: var(--mdauc-primary); }
.mdauc-tag-sel { font-size: 12px; background: var(--mdauc-primary); color: #fff; padding: 2px 10px; border-radius: 999px; vertical-align: middle; margin-left: 8px; }
.mdauc-proposal-meta { font-size: 13px; color: var(--mdauc-muted); margin: 0 0 6px; }
.mdauc-proposal-msg { font-size: 14px; margin: 0 0 10px; }
.mdauc-bank { margin-top: 12px; background: #ecfdf5; border: 1px solid #a7f3d0; border-radius: 8px; padding: 12px 14px; font-size: 14px; }
.mdauc-bank p { margin: 6px 0 0; }
.mdauc-propose { margin-top: 14px; }
