/* Scoped to the client contract detail. Shared pages retain their existing styles. */
body.mine-contract-client { background:#f7faff; }
.mine-contract-client .agency-content { background:#f7faff; padding:0; }
.mc-contract { width:calc(100% - 120px); max-width:1140px; padding:0 0 12px; margin:10px auto 0; color:#192b49; font-size:14px; line-height:1.7; }
.mc-contract * { box-sizing:border-box; }
.mc-contract .mc-back { display:inline-flex; color:#1684ff; font-size:14px; font-weight:600; margin-bottom:8px; text-decoration:none; }
.mc-contract .mc-page-head { margin:0 0 16px; align-items:center; flex-wrap:nowrap; gap:24px; }
.mc-contract .mc-page-head > div { min-width:0; }
.mc-contract .pj-title { color:#172945; font-size:32px; font-weight:700; line-height:1.4; margin:0 0 8px; overflow-wrap:anywhere; }
.mc-contract .pj-card__meta { color:#8493af; }
.mc-contract .mc-status { display:inline-flex; align-items:center; gap:9px; padding:3px 14px; font-size:15px; font-weight:700; line-height:1.7; background:#e8f2ff; color:#1581ef; }
.mc-contract .mc-status--revision_requested { color:#e58600; background:#fff0d5; }
.mc-contract .mc-status--completed,.mc-contract .mc-status--auto_completed { color:#16724c; background:#e7f6ee; }
.mc-contract .mc-status--no_show_reported { color:#b36a13; background:#fff1db; }
.mc-contract .mc-status--no_show_confirmed { color:#b42332; background:#ffecef; }
.mc-contract .mc-status--cancelled { color:#667085; background:#edf0f5; }
.mc-contract .mc-chat { display:inline-flex; align-items:center; gap:12px; padding:13px 22px; min-height:48px; flex:none; background:#fff; color:#192b49; border:1px solid #cfd9e8; border-radius:10px; font-size:14px; }
.mc-contract .mc-chat:hover { background:#f3f7ff; border-color:#1684ff; color:#192b49; }
.mc-contract .mc-chat i { font-size:20px; }
.mc-contract .pj-panel { position:relative; padding:17px 20px 16px; margin:0 0 16px; border:1px solid #e0e9f5; border-radius:12px; box-shadow:0 5px 18px rgba(32,65,107,.035); background:#fff; }
.mc-contract .mc-section-title { display:flex; align-items:center; gap:16px; min-height:46px; margin:0; font-size:20px; line-height:1.5; font-weight:700; color:#192b49; }
.mc-contract .mc-icon { display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px; flex:0 0 46px; border-radius:50%; background:#edf5ff; color:#087cff; font-size:23px; }
.mc-contract .pj-panel__note { margin:0 0 8px 62px; font-size:14px; line-height:1.65; color:#8393af; }
.mc-contract .mc-section-title + .pj-panel__note { margin-top:-10px; }
.mc-contract .mc-history { border:1px solid #e6edf7; border-radius:11px; padding:12px 18px 14px; margin-top:8px; }
.mc-contract .mc-history h3 { margin:0 0 10px; font-size:14px; font-weight:700; color:#192b49; line-height:1.6; }
.mc-contract .pj-report { position:relative; padding:8px 0 0 34px; border:0; margin:0; }
.mc-contract .pj-report + .pj-report { padding-top:22px; }
.mc-contract .pj-report::before { content:""; position:absolute; top:20px; bottom:0; left:6px; width:3px; background:#edf2f8; }
.mc-contract .pj-report::after { content:""; position:absolute; top:14px; left:1px; width:13px; height:13px; border-radius:50%; background:#1684ff; border:2px solid #e4f1ff; box-shadow:0 0 0 2px #f4f8ff; }
.mc-contract .pj-report + .pj-report::after { top:28px; }
.mc-contract .pj-report__head { gap:12px; line-height:1.6; font-size:15px; }
.mc-contract .pj-report__head .pj-card__meta { color:#8595b2; font-size:14px; }
.mc-contract .pj-report__head .pj-st { padding:2px 14px; font-size:12px; background:#e1f0ff; color:#1784f6; }
.mc-contract .pj-report__head .pj-st--matched { background:#e7f6ee; color:#16724c; }
.mc-contract .pj-report__urls { list-style:none; padding:0; margin:7px 0 0; font-size:15px; line-height:1.5; }
.mc-contract .pj-report__urls a { color:#087cff; overflow-wrap:anywhere; }
.mc-contract .pj-report__urls a::after { content:"\f35d"; font-family:"Font Awesome 5 Free"; font-weight:900; font-size:12px; display:inline-block; margin-left:8px; }
.mc-contract .pj-report__note { margin:3px 0 0; font-size:14px; line-height:1.6; color:#263a58; overflow-wrap:anywhere; }
.mc-contract .pj-report__reply { position:relative; margin:8px 0 0; padding:12px 18px 12px 52px; background:#fff6ea; border-radius:11px; font-size:14px; line-height:1.65; color:#243650; overflow-wrap:anywhere; }
.mc-contract .pj-report__reply::before { content:"!"; position:absolute; top:15px; left:17px; display:flex; align-items:center; justify-content:center; width:21px; height:21px; background:#ec9206; border-radius:50%; color:white; font-size:14px; font-weight:700; }
.mc-contract .pj-report__reply strong { color:#17283e; font-weight:700; }
.mc-contract .mc-payment-badge { padding:3px 14px; font-size:12px; background:#eff2f7; color:#263a58; }
.mc-contract .mc-section-title:has(.mc-payment-badge) + p { margin-left:62px!important; margin-bottom:0; color:#8393af; font-size:14px!important; }
.mc-contract .mc-talent-card { margin:0 0 0 62px; border:1px solid #e1eaf6; border-radius:11px; padding:16px; }
.mc-contract .pj-talent { gap:16px; }
.mc-contract .pj-talent__img { width:72px; height:72px; border-radius:10px; }
.mc-contract .pj-talent__name { font-size:17px; font-weight:700; line-height:1.4; margin-bottom:4px; }
.mc-contract .pj-talent__meta { font-size:14px; line-height:1.45; margin:0; color:#8393af; overflow-wrap:anywhere; }
.mc-contract .pj-talent__record { color:#8393af; }
.mc-contract .mc-snapshot { border:1px solid #e1eaf6; border-radius:11px; padding:14px 16px; display:grid; grid-template-columns:155px minmax(0,1fr); gap:24px; align-items:start; }
.mc-contract .mc-snapshot:not(:has(>div)) { grid-template-columns:minmax(0,1fr); }
.mc-contract .mc-snapshot > div { display:flex!important; flex-direction:column; overflow:visible!important; gap:8px!important; margin:0!important; }
.mc-contract .mc-snapshot > div img { width:155px!important; height:155px!important; max-width:100%; border-radius:8px!important; object-fit:cover; }
.mc-contract .pj-summary { gap:3px 24px; font-size:14px; min-width:0; }
.mc-contract .pj-summary > div { display:grid; grid-template-columns:78px minmax(0,1fr); gap:0 12px; align-items:baseline; padding:0; }
.mc-contract .pj-summary > div:nth-child(even):not(.pj-summary__wide) { border-left:1px solid #e5edf8; padding-left:20px; }
.mc-contract .pj-summary dt { margin:0; font-size:12px; line-height:1.8; color:#8393af; font-weight:600; }
.mc-contract .pj-summary dd { margin:0; font-size:14px; line-height:1.6; color:#263a58; overflow-wrap:anywhere; min-width:0; }
.mc-contract .mc-snapshot .pj-summary > .pj-summary__wide { grid-template-columns:78px minmax(0,1fr); }
.mc-contract .mc-company { margin-left:62px; padding:12px 18px; border:1px solid #e1eaf6; border-radius:11px; }
.mc-contract .mc-company .pj-summary { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); }
.mc-contract .mc-company .pj-summary > .pj-summary__wide { grid-column:1; }
.mc-contract .mc-fee-panel { padding-left:82px; }
.mc-contract .mc-fee-panel .mc-section-title { min-height:30px; font-size:20px; }
.mc-contract .mc-fee-panel .mc-icon { position:absolute; left:20px; top:18px; }
.mc-contract .mc-fee-panel > p { margin-top:0!important; font-size:14px!important; line-height:1.8!important; color:#263a58; }
.mc-contract .mc-fee-panel .pj-panel__note { margin-left:0; margin-bottom:0; font-size:13px!important; color:#8393af; }
.mc-contract .mc-fee-amount { color:#087cff; font-size:28px; line-height:1; display:inline-block; vertical-align:baseline; margin-right:12px; }
.mc-contract .pj-form textarea { width:100%; min-height:100px; border:1px solid #d5dfec; border-radius:8px; padding:12px; font-family:inherit; }
.mc-contract .pj-btn { min-height:44px; }
.mc-contract .pj-more { margin-left:62px; }
.mc-contract .pj-more > summary { min-height:44px; display:flex; align-items:center; }
@media (max-width:900px) { .mc-contract { width:calc(100% - 48px); } .mc-contract .mc-snapshot { grid-template-columns:130px minmax(0,1fr); gap:18px; } .mc-contract .mc-snapshot > div img { width:130px!important;height:130px!important; } .mc-contract .pj-summary > div { grid-template-columns:80px minmax(0,1fr); gap:8px; } }
@media (max-width:700px) {
 .mc-contract { width:calc(100% - 32px); margin-top:18px; padding-bottom:28px; }
 .mc-contract .mc-page-head { flex-wrap:wrap; gap:14px; margin-bottom:18px; }
 .mc-contract .pj-title { font-size:24px; }
 .mc-contract .mc-chat { padding:11px 18px; }
 .mc-contract .pj-panel { padding:16px; margin-bottom:14px; }
 .mc-contract .mc-section-title { gap:12px; font-size:17px; flex-wrap:wrap; }
 .mc-contract .mc-icon { width:40px; height:40px; flex-basis:40px; font-size:20px; }
 .mc-contract .mc-section-title > span:nth-child(2) { flex:1; min-width:0; }
 .mc-contract .pj-panel__note,.mc-contract .mc-section-title:has(.mc-payment-badge) + p { margin-left:0!important; margin-top:8px; font-size:13px!important; }
 .mc-contract .mc-payment-badge { margin-left:52px; margin-top:-10px; }
 .mc-contract .mc-history { padding:12px 10px; }
 .mc-contract .pj-report { padding-left:26px; }
 .mc-contract .pj-report__head { gap:4px 10px; font-size:14px; }
 .mc-contract .pj-report__urls { font-size:13px; }
 .mc-contract .pj-report__reply { padding:12px 12px 12px 40px; font-size:13px; }
 .mc-contract .pj-report__reply::before { left:12px; }
 .mc-contract .mc-talent-card,.mc-contract .mc-company { margin-left:0; padding:12px; }
 .mc-contract .pj-talent { gap:12px; align-items:flex-start; }
 .mc-contract .pj-talent__img { width:60px; height:60px; }
 .mc-contract .pj-talent__name { font-size:16px; }
 .mc-contract .pj-talent__meta { font-size:12px; }
 .mc-contract .mc-snapshot { grid-template-columns:minmax(0,1fr); padding:14px; gap:16px; }
 .mc-contract .mc-snapshot > div { flex-direction:row; flex-wrap:wrap; }
 .mc-contract .mc-snapshot > div img { width:120px!important; height:120px!important; }
 .mc-contract .pj-summary,.mc-contract .mc-company .pj-summary { grid-template-columns:minmax(0,1fr); gap:8px; }
 .mc-contract .pj-summary > div,.mc-contract .mc-snapshot .pj-summary > .pj-summary__wide { grid-template-columns:92px minmax(0,1fr); }
 .mc-contract .pj-summary > div:nth-child(even):not(.pj-summary__wide) { border:0; padding-left:0; }
 .mc-contract .mc-fee-panel { padding-left:68px; }
 .mc-contract .mc-fee-panel .mc-icon { left:16px;top:16px; }
 .mc-contract .mc-fee-amount { font-size:26px; }
 .mc-contract .pj-more { margin-left:0; }
}

@media (min-width:701px) {
 .mc-contract .mc-snapshot .pj-summary { grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); position:relative; }
 .mc-contract .mc-snapshot .pj-summary::before { content:""; position:absolute; width:1px; top:0; bottom:0; left:55.5%; background:#e5edf8; }
 .mc-contract .mc-snapshot .pj-summary > div:nth-child(even):not(.pj-summary__wide) { border:0; padding-left:10px; grid-template-columns:92px minmax(0,1fr); gap:8px; }
 .mc-contract .mc-snapshot .pj-summary > .pj-summary__wide:last-child { grid-column:1; }
 .mc-contract .mc-company .pj-summary { gap:0 24px; position:relative; }
 .mc-contract .mc-company .pj-summary::before { content:""; position:absolute; width:1px; top:0; bottom:0; left:52.3%; background:#e5edf8; }
 .mc-contract .mc-company .pj-summary > div:nth-child(even):not(.pj-summary__wide) { border:0; }
 .mc-contract .mc-section-title:has(.mc-payment-badge) + p { font-size:12.5px!important; }
}

.mc-contract .mc-talent-card,.mc-contract .mc-company { margin-top:-5px; }
.mc-contract .mc-fee-panel .mc-section-title { min-height:24px; line-height:1.2; }
.mc-contract .mc-fee-panel .pj-panel__note { line-height:1.6!important; }
.mc-contract .pj-more > summary::before { content:"\f0da"; font-family:"Font Awesome 5 Free"; font-weight:900; margin-right:8px; }
.mc-contract .pj-more[open] > summary::before { transform:rotate(90deg); }
@media(min-width:701px) {
 .mc-contract .mc-snapshot .pj-summary > .mc-follower-fact { grid-template-columns:126px minmax(0,1fr)!important; }
 .mc-contract .mc-company .pj-summary > div:nth-child(even):not(.pj-summary__wide) { grid-template-columns:100px minmax(0,1fr); }
}
@media(max-width:700px) { .mc-contract .mc-talent-card,.mc-contract .mc-company { margin-top:8px; } }

.mc-contract > .pj-panel:last-child { margin-bottom:0; }
@media(min-width:701px) {
 .mc-contract .mc-snapshot { padding-top:12px; padding-bottom:12px; }
 .mc-contract .mc-section-title + .pj-panel__note:has(+ .mc-snapshot) { margin-bottom:4px; }
 .mc-contract .mc-company { margin-top:-12px; }
 .mc-contract .mc-fee-panel { padding-bottom:8px; }
}

@media(min-width:769px) { body.mine-contract-client { padding-top:60px; } }

/* 流れ・次にやること（共通部品）の色をこの画面に合わせる */
.mc-contract { --pc-blue:#1684ff; --pc-ink:#192b49; --pc-sub:#5b667a; --pc-mute:#8a94a6; --pc-warn:#dc2626; }
.mc-contract .ct-steps { border:1px solid #e0e9f5; box-shadow:0 5px 18px rgba(32,65,107,.035); border-radius:12px; margin-bottom:16px; }
.mc-contract .ct-next { margin-bottom:16px; border-radius:12px; }
.mc-contract .mc-sub { margin-left:12px; font-size:14px; color:#8493af; }
.mc-contract .mc-sub-sec { padding:18px 0 4px; border-top:1px solid #e6edf7; }
.mc-contract .mc-sub-sec:first-child { border-top:0; padding-top:4px; }
.mc-contract .mc-sub-sec h3 { margin:0 0 8px; font-size:16px; font-weight:700; color:#192b49; }
.mc-contract .mc-sub-sec h3 small { margin-left:10px; font-size:12px; font-weight:400; color:#8393af; }

/* 検収の選択（検収OK／修正を依頼） */
.mc-contract .mc-decide { margin-top:12px; padding:16px 18px; border:1px solid #cfe2ff; border-radius:12px; background:#f6faff; }
.mc-contract .mc-decide__lead { margin:0 0 12px; font-size:15px; font-weight:700; color:#192b49; }
.mc-contract .mc-decide__row { display:flex; flex-wrap:wrap; gap:12px; align-items:flex-start; }
.mc-contract .mc-decide__row > form { margin:0; }
.mc-contract .mc-decide__row .pj-btn { display:inline-flex; align-items:center; gap:8px; min-height:48px; padding:12px 24px; font-size:15px; border-radius:10px; }
.mc-contract .mc-decide__row > form .pj-btn { background:#1684ff; border-color:#1684ff; }
.mc-contract .mc-revise { flex:0 1 auto; min-width:0; }
.mc-contract .mc-revise[open] { flex:1 1 100%; }
.mc-contract .mc-revise > summary { list-style:none; cursor:pointer; width:fit-content; }
.mc-contract .mc-revise > summary::-webkit-details-marker { display:none; }
.mc-contract .mc-revise[open] > summary { background:#eaf3ff; border-color:#1684ff; }
.mc-contract .mc-revise .pj-form { margin-top:12px; }
.mc-contract .mc-decide__help { margin:12px 0 0!important; font-size:13px!important; line-height:1.8; color:#667593; }
.mc-contract .mc-decide__help b { color:#192b49; }

/* 契約の内容（折りたたみ） */
.mc-contract .mc-fold { padding:0; }
.mc-contract .mc-fold > summary { display:flex; align-items:center; gap:16px; padding:17px 20px; cursor:pointer; list-style:none; }
.mc-contract .mc-fold > summary::-webkit-details-marker { display:none; }
.mc-contract .mc-fold > summary:hover { background:#f8fbff; border-radius:12px; }
.mc-contract .mc-fold__title { flex:1; min-width:0; font-size:20px; font-weight:700; color:#192b49; line-height:1.4; }
.mc-contract .mc-fold__title small { display:block; margin-top:2px; font-size:13px; font-weight:400; color:#8393af; }
.mc-contract .mc-fold__chev { color:#8393af; transition:transform .15s; }
.mc-contract .mc-fold[open] .mc-fold__chev { transform:rotate(180deg); }
.mc-contract .mc-fold__body { padding:0 20px 18px; }
.mc-contract .mc-fold .pj-panel__note { margin:0 0 8px; }
.mc-contract .mc-fold .mc-section-title + .pj-panel__note { margin-top:0; }
.mc-contract .mc-fold .mc-talent-card,.mc-contract .mc-fold .mc-company { margin:0; }
.mc-contract .mc-fold .mc-fee-panel { padding:18px 0 4px; }
.mc-contract .mc-fold .mc-fee-text { margin:0 0 6px; font-size:14px; line-height:1.8; color:#263a58; }
.mc-contract .mc-fold .mc-fee-panel .pj-panel__note { margin:0; font-size:13px!important; }
@media (max-width:700px) {
 .mc-contract .mc-fold > summary { padding:14px 16px; gap:12px; }
 .mc-contract .mc-fold__title { font-size:17px; }
 .mc-contract .mc-fold__body { padding:0 16px 16px; }
 .mc-contract .mc-decide { padding:14px; }
 .mc-contract .mc-decide__row .pj-btn { width:100%; justify-content:center; }
 .mc-contract .mc-revise > summary { width:100%; }
}

/* タレント名のタイトルと、同じ募集票のほかのタレント */
.mc-contract .mc-project-line { margin:0 0 8px; font-size:15px; }
.mc-contract .mc-project-line a { color:#087cff; font-weight:600; text-decoration:none; }
.mc-contract .mc-project-line a:hover { text-decoration:underline; }
.mc-contract .mc-siblings { display:inline-flex; align-items:center; gap:8px; margin:0 0 16px; padding:8px 14px; border:1px solid #e0e9f5; border-radius:10px; background:#fff; color:#192b49; font-size:14px; text-decoration:none; }
.mc-contract .mc-siblings > i:first-child { color:#087cff; }
.mc-contract .mc-siblings strong { font-size:16px; color:#087cff; }
.mc-contract .mc-siblings__go { font-size:11px; color:#8393af; }
.mc-contract .mc-siblings:hover { border-color:#1684ff; background:#f3f8ff; }
}
.mc-contract .mc-page-head > .mc-head-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:10px; flex:none; }
.mc-contract .mc-again { display:inline-flex; align-items:center; gap:8px; min-height:48px; padding:12px 18px; border:1px solid #cfd9e8; border-radius:10px; background:#fff; color:#192b49; font-size:14px; font-weight:700; }
.mc-contract .mc-again:hover { border-color:#1684ff; background:#f3f7ff; }
.mc-contract .mc-head-actions .pp-lock { min-height:48px; border-radius:10px; }
@media (max-width:640px) { .mc-contract .mc-page-head > .mc-head-actions { justify-content:stretch; width:100%; } .mc-contract .mc-head-actions > * { flex:1 1 auto; justify-content:center; } }
