/* Staff workspace layout. Shared controls and tokens live in design-system.css. */
.staff-shell{width:100%;max-width:1280px;margin:0 auto;padding:28px 32px 72px}
.staff-layout{display:grid;grid-template-columns:208px minmax(0,1fr);align-items:start;gap:36px}
#staff-panel{min-width:0;outline:none}
.staff-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:28px}
.staff-panel-heading>div{min-width:0}
.staff-panel-heading h1{font-size:26px;line-height:1.35;letter-spacing:-.025em;margin:0 0 8px;font-weight:650}
.staff-panel-heading p{font-size:14px;line-height:1.7;color:var(--muted);margin:0;max-width:650px}
.section-new-listing{flex-shrink:0}
.dealer-nav,.staff-tabs{display:flex;flex-direction:column;gap:6px;position:sticky;top:24px;margin:0;min-width:0}
.dealer-nav-item{display:flex;align-items:center;gap:12px;text-align:left;text-decoration:none;border:1px solid transparent;background:transparent;border-radius:10px;padding:13px 12px;min-height:66px;color:var(--muted);cursor:pointer;min-width:0}
.dealer-nav-item svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;flex-shrink:0}
.dealer-nav-item strong{display:block;font-size:14px;font-weight:600;line-height:1.5}
.dealer-nav-item small{display:block;font-size:11px;line-height:1.5;margin-top:3px}
.dealer-nav-item:hover,.staff-tabs .chip:hover{background:var(--soft)}
.dealer-nav-item.is-current,.staff-tabs .chip.active{color:var(--navy);background:#eef2f8;border-color:#dce4ef}
.dealer-nav-item.new-listing{color:var(--navy)}
.staff-tabs .chip{text-align:left;white-space:normal;line-height:1.45;border-color:transparent;background:transparent;color:var(--muted);padding:12px;font-size:14px}
.staff-search{display:flex;gap:12px;align-items:flex-end;margin:0 0 20px;padding:18px;background:var(--soft);border:1px solid var(--line);border-radius:10px}
.staff-search label{flex:1;min-width:0;display:grid;gap:6px}
.staff-search label>span{font-size:12px;font-weight:600;color:var(--ink)}
.staff-search input{width:100%;min-width:0}
.staff-search .button{flex-shrink:0}
.staff-result-count{font-size:12px;color:var(--muted);margin:0 0 8px;overflow-wrap:anywhere}
.staff-list{border-top:1px solid var(--line)}
.staff-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}
.staff-row>img{width:64px;height:88px;object-fit:contain;background:var(--soft);border-radius:6px}
.staff-row-info{min-width:0}
.staff-row strong{display:block;font-size:14px;font-weight:600;line-height:1.55;overflow-wrap:anywhere}
.staff-row small{display:block;color:var(--muted);font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.staff-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 6px}
.staff-status{display:inline-block;font-size:11px;line-height:1.5;color:var(--muted);padding:3px 8px;background:var(--soft);border-radius:4px;white-space:nowrap}
.staff-status.status-active,.staff-status.status-completed{background:#edf5ef;color:#316346}
.staff-status.status-requested,.staff-status.status-reserved{background:#fbf1df;color:#7a5825}
.staff-price{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}
.staff-account-row{grid-template-columns:minmax(0,1fr) auto}
.staff-row>.button{font-size:12px;padding-inline:14px}
#staff-more{display:block;margin:24px auto 0}
.staff-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:52px 24px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.staff-empty>svg{width:36px;height:36px;fill:none;stroke:#7c8da5;stroke-width:1.3;margin-bottom:18px}
.staff-empty h2{font-size:18px;line-height:1.5;margin:0 0 10px}
.staff-empty p{max-width:430px;font-size:14px;line-height:1.8;color:var(--muted);margin:0}
.staff-empty>.button{margin-top:24px}
.staff-loading{padding:36px 0;color:var(--muted);font-size:14px}
.staff-login{max-width:440px;margin:48px auto;border:1px solid var(--line);border-radius:14px;padding:32px;background:white}
.staff-login h2{font-size:24px;margin:0 0 12px;line-height:1.4}
.staff-login p{font-size:13px;line-height:1.8;color:var(--muted)}
.staff-login .form{margin:24px 0}
.staff-login .form .button{width:100%}
#photo-form{display:block;margin:0}
.listing-step{display:grid;gap:20px;padding:24px;border:1px solid var(--line);border-radius:12px;margin-bottom:20px}
.listing-step-heading{display:flex;gap:12px;align-items:flex-start}
.listing-step-heading>span{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border-radius:50%;background:#edf2f8;color:var(--navy);font-size:13px;font-weight:600}
.listing-step-heading h2{font-size:17px;line-height:1.55;margin:0 0 5px}
.listing-step-heading p{font-size:12px;line-height:1.7;color:var(--muted);margin:0}
.capture-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.capture-box{min-width:0;background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:16px}
.capture-box h3{font-size:13px;line-height:1.5;font-weight:600;margin:0 0 10px}
.capture-box>img{width:100%;height:160px;object-fit:contain}
.camera-placeholder{height:110px;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;color:#7c8da5}
.camera-placeholder svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.3}
.camera-placeholder span{font-size:11px;text-align:center}
.capture-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin-top:14px}
.capture-controls label{position:relative;cursor:pointer;min-width:0}
.capture-controls label:focus-within{outline:3px solid var(--navy);outline-offset:3px}
.capture-controls .button,.capture-controls .text-button{font-size:12px;padding:9px 12px}
.capture-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.staff-search-inline{display:flex;gap:10px;margin-top:6px}
.staff-search-inline input{flex:1;min-width:0}
.staff-search-inline .button{flex-shrink:0}
#photo-results:empty{display:none}
#photo-results .listing-line{width:100%;display:flex;gap:12px;align-items:center;text-align:left;border:1px solid var(--line);border-radius:8px;background:white;padding:12px;margin-bottom:8px}
#photo-results .listing-line img{width:42px;height:58px;object-fit:contain;flex-shrink:0}
#photo-results .listing-line>div{min-width:0;flex:1}
#photo-results strong{display:block;font-size:13px;line-height:1.6;overflow-wrap:anywhere}
#photo-results small{display:block;font-size:11px;color:var(--muted)}
.chosen-card{display:flex;align-items:center;gap:16px;background:#f2f5fa;border:1px solid #dce4ef;border-radius:8px;padding:16px}
.chosen-card>img{height:110px;width:78px;object-fit:contain;flex-shrink:0}
.chosen-card>div{min-width:0}
.chosen-card-label{display:block;font-size:11px;color:var(--navy);margin-bottom:6px}
.chosen-card strong{display:block;font-size:14px;line-height:1.55;overflow-wrap:anywhere}
.chosen-card p,.chosen-card small{font-size:12px;line-height:1.7;margin:6px 0;color:var(--muted)}
#ocr-status{font-size:12px;color:var(--muted)}
#ocr-status:empty{display:none}
.listing-step details{font-size:12px;min-width:0}
.listing-step summary{cursor:pointer;color:var(--muted)}
.listing-step pre{white-space:pre-wrap;font-size:12px;overflow-wrap:anywhere}
.listing-submit{text-align:right;padding:4px 0 12px}
.listing-submit .form-error{text-align:left;margin-bottom:12px}
.listing-submit p{font-size:12px;color:var(--muted);margin:10px 0 0}
.staff-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}
.staff-photos img{width:100%;height:260px;object-fit:contain;background:var(--soft);border-radius:8px}
#staff-modal{width:min(680px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto}
#staff-modal h2{font-size:23px;line-height:1.45;overflow-wrap:anywhere;margin:0 36px 18px 0}
#staff-modal .form{margin:24px 0}
#staff-modal p{font-size:14px;overflow-wrap:anywhere}
#staff-close{float:right;border:0;background:var(--soft);border-radius:50%;width:36px;height:36px;font-size:24px;line-height:1;color:var(--ink);cursor:pointer}
#staff-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:14px 20px;border-radius:8px;background:var(--navy);color:white;max-width:min(520px,calc(100% - 32px));z-index:60;font-size:13px;box-shadow:0 6px 24px #172c5922}
#stage-note{background:#fff5d8;color:#594311;padding:8px 20px;text-align:center;font-size:12px}
.market-shell{max-width:1600px}
#market-frame{display:block;width:100%;height:calc(100dvh - 250px);min-height:560px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}
@media(max-width:1000px){
 .staff-shell{padding-inline:24px}
 .staff-layout{grid-template-columns:180px minmax(0,1fr);gap:24px}
 .dealer-nav-item{gap:10px;padding-inline:10px}
 .dealer-nav-item strong{font-size:13px}.dealer-nav-item small{font-size:10px}
 .staff-panel-heading{gap:12px}.staff-panel-heading h1{font-size:24px}
 .listing-step{padding:20px}.capture-grid{gap:12px}.capture-box{padding:12px}
}
@media(max-width:700px){
 .staff-shell{padding:20px 16px 48px}
 .dealer-shell{padding-bottom:calc(112px + env(safe-area-inset-bottom))}
 .staff-layout{display:block}
 .staff-panel-heading{margin-bottom:24px}.staff-panel-heading h1{font-size:24px}.staff-panel-heading p{font-size:13px}
 .section-new-listing{display:none}
 .dealer-nav{position:fixed;bottom:0;left:0;right:0;top:auto;z-index:30;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;border-top:1px solid var(--line);background:white;padding:8px 10px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -4px 20px #172c5907}
 .dealer-nav-item{flex-direction:column;justify-content:center;gap:5px;padding:7px 3px;min-height:62px;text-align:center;border-radius:8px}
 .dealer-nav-item strong{font-size:11px;line-height:1.4;white-space:normal}.dealer-nav-item small{display:none}.dealer-nav-item svg{width:21px;height:21px}
 .staff-tabs{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding-bottom:20px;margin-bottom:24px;border-bottom:1px solid var(--line)}
 .staff-tabs .chip{text-align:center;font-size:12px;padding:10px 8px;border-color:var(--line);min-height:44px}
 .staff-search{padding:12px;gap:8px}.staff-search label>span{font-size:11px}.staff-search .button{font-size:12px;padding-inline:12px}
 .staff-empty{padding:36px 18px}.staff-empty h2{font-size:17px}.staff-empty p{font-size:13px}
 .staff-row{grid-template-columns:52px minmax(0,1fr);gap:10px 14px;padding:20px 0}.staff-row>img{width:52px;height:76px;align-self:start}
 .staff-row>.button{grid-column:2;justify-self:start;font-size:12px}.staff-row strong{font-size:13px}.staff-row small{font-size:11px}.staff-price{font-size:13px}
 .staff-account-row{grid-template-columns:1fr;gap:12px}.staff-account-row>.button{grid-column:1}.staff-account-row>small{font-size:11px}
 .staff-login{padding:24px;margin:24px auto}.staff-login h2{font-size:22px}
 .listing-step{padding:16px;margin-bottom:16px;gap:18px}.listing-step-heading{gap:10px}.listing-step-heading h2{font-size:16px}.listing-step-heading p{font-size:12px}
 .capture-grid{gap:8px}.capture-box{padding:10px}.capture-box h3{font-size:11px;min-height:33px;margin:0 0 4px}.camera-placeholder{height:100px}.camera-placeholder span{font-size:10px}
 .capture-box>img{height:140px}.capture-controls{flex-direction:column;gap:4px;margin-top:10px}.capture-controls label{width:100%;text-align:center}.capture-controls .button,.capture-controls .text-button{font-size:11px;min-height:42px;padding:8px 4px}
 .staff-search-inline{flex-direction:column}.staff-search-inline .button{align-self:flex-start;font-size:12px}.staff-search-inline input{width:100%}
 .chosen-card{padding:12px;gap:12px}.chosen-card>img{width:54px;height:82px}.chosen-card strong{font-size:13px}.chosen-card small,.chosen-card p{font-size:11px}
 .listing-submit{text-align:center}.listing-submit>.button{width:100%}
 #staff-modal{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}#staff-modal h2{font-size:20px}.staff-photos img{height:180px}
 .dealer-shell~#staff-toast{bottom:calc(96px + env(safe-area-inset-bottom))}
 #market-frame{height:75dvh;min-height:480px}
}
@media(max-width:700px){
 .market-shell .staff-panel-heading{margin-bottom:12px}
 .market-shell .staff-panel-heading p{display:none}
 .market-shell .staff-tabs{gap:6px;padding-bottom:16px;margin-bottom:16px}
}

/* The operations console has its own identity, separate from shopping and selling. */
body.admin-ui{--navy:#9b2940;--selected:#fff0f3;--focus:#b84058;background:#faf9fa}
body.admin-ui>header{background:#792239;color:#fff;border-bottom:3px solid #ac4058;min-height:76px;padding-block:12px}
.admin-ui header .brand{font:650 20px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;white-space:normal}
.admin-ui header .brand img{display:none}.admin-ui header .brand span{display:inline}
.admin-ui header nav{justify-content:flex-end}.admin-ui header nav a{color:#fff;font-size:13px;font-weight:500}
.admin-ui header .text-button:hover{background:#ffffff18}.admin-ui header #signout{color:#fff}
.admin-ui header .preference-select{border-color:#ffffff40;background:#ffffff0d;color:#fff}
.admin-ui header .preference-label{color:#f1d5dc}.admin-ui header .preference-select:after{border-color:#fff}
.admin-ui .staff-shell{max-width:1600px}.admin-ui .staff-tabs .chip.active{background:#fff0f3;color:#8b2339;border-color:#e6b9c3}
.admin-ui .staff-tabs .chip:hover{background:#fff0f3}.admin-ui #staff-panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px}
.admin-ui .staff-login{background:white}.admin-ui #market-frame{background:white}
@media(max-width:900px){.admin-ui>header nav{border-color:#ffffff25;justify-content:flex-start}.admin-ui>header .brand{font-size:18px}.admin-ui header .header-actions{gap:8px}}
@media(max-width:700px){.admin-ui #staff-panel{padding:16px}.admin-ui header .brand{font-size:16px;max-width:180px}.admin-ui header .brand span{display:inline}.admin-ui header nav>*{flex:none}.admin-ui .market-shell #staff-panel{padding:12px}}
@media(min-width:901px){.admin-ui .staff-layout{grid-template-columns:180px minmax(0,1fr);gap:24px}}

/* Currency controls stay available in the shell and inside open dialogs. */
body header nav #signout{margin-left:auto;font-weight:400}
.staff-modal-toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:0 0 12px;margin-bottom:18px;background:var(--surface);border-bottom:1px solid var(--line)}
#staff-modal .staff-modal-toolbar #staff-close{float:none;flex-shrink:0}
#staff-modal h2{margin-right:0}
.staff-price [data-staff-price]{display:inline-flex;margin-top:2px}
.staff-price .dual-price strong{font-size:15px}
.staff-price .dual-price small{font-size:11px}
@media(max-width:700px){
 body header nav #signout{margin-left:0}
 body>header nav>.text-button{font-size:12px;padding:7px 4px;min-width:0;min-height:40px}
 body header .header-actions{gap:8px}
 body.admin-ui header .brand{min-width:0;max-width:148px;font-size:15px}
 body.admin-ui header .brand span{overflow-wrap:anywhere}
 .staff-price .dual-price strong{font-size:14px}
 .staff-modal-toolbar{margin-bottom:16px}
}

/* 収集設定と実行履歴は横方向に比較できるテーブルで表示する。 */
.collection-note{font-size:13px;color:var(--muted);line-height:1.8;margin:0 0 20px}
.collection-table-wrap{width:100%;max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}
.collection-table{width:100%;min-width:1080px;border-collapse:collapse;font-size:12px;text-align:left}
.collection-table th,.collection-table td{padding:14px 10px;vertical-align:top;border-bottom:1px solid var(--line)}
.collection-table thead th{background:var(--soft);white-space:nowrap;font-weight:600;color:var(--muted)}
.collection-table tbody th{font-size:13px;font-weight:600;min-width:140px;max-width:180px}
.collection-table tbody tr:last-child>*{border-bottom:0}.collection-table tbody tr:hover{background:#fafbfc}
.collection-table small{display:block;color:var(--muted);font-size:11px;line-height:1.7;margin-top:8px}
.collection-table .collection-job{border-radius:0;background:transparent}
.collection-date{white-space:nowrap;font-variant-numeric:tabular-nums}
.collection-form{min-width:220px}.collection-form label{font-size:11px}
.collection-settings{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:8px;margin-top:10px}
.collection-settings label{display:grid;gap:6px}
.collection-settings input,.collection-settings select{min-width:0;width:100%;padding:7px 6px;border:1px solid var(--line);border-radius:5px;background:white;font:inherit}
.collection-actions{display:flex;flex-direction:column;gap:8px;min-width:92px}.collection-actions .button{white-space:nowrap;width:100%}
.collection-result{min-width:140px;max-width:220px;overflow-wrap:anywhere;line-height:1.8}
.collection-history-title{font-size:20px;margin-top:32px}.collection-history{min-width:850px}
.job-failed{color:#a4262c;background:#fff1f0}

#auction-settings{display:grid;gap:16px}#auction-settings .notice{margin:0}
