.pt-page .pt-context{margin:0 0 16px}.pt-page .pt-context a{margin-left:8px;font-weight:700}
.pt-filters{margin:0 0 16px;padding:16px;background:#fff;border:1px solid #e0e9f5;border-radius:12px}
.pt-filters__row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.pt-filters__row .pm-search{flex:1 1 260px}
.pt-filters__more{margin-top:12px}.pt-filters__more summary{cursor:pointer;font-weight:700;color:#345078;padding:6px 0}
.pt-filters__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:12px}
.pt-filters__grid label,.pt-filters__grid legend{font-size:13px;font-weight:700;color:#345078;display:grid;gap:6px}.pt-filters__grid fieldset{border:0;margin:0;padding:0;min-width:0}
.pt-span{grid-column:1/-1}.pt-range{display:flex;gap:8px;align-items:center}.pt-range .pm-input{width:100%}
.pt-checks{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:6px}.pt-checks--scroll{max-height:150px;overflow:auto;padding:4px;border:1px solid #e0e9f5;border-radius:8px}
.pt-check{display:inline-flex!important;align-items:center;gap:6px;font-weight:400!important;font-size:13px!important;color:#19314e!important;margin-right:10px}
.pt-filters__actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}
.pt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}
.pt-card{display:flex;flex-direction:column;text-align:left;padding:0;border:1px solid #e0e9f5;border-radius:12px;background:#fff;overflow:hidden;cursor:pointer;font:inherit;color:inherit;transition:box-shadow .15s,transform .15s}
.pt-card:hover{box-shadow:0 6px 18px #2a5b9822;transform:translateY(-2px)}.pt-card:focus-visible{outline:3px solid #b4d4ff;outline-offset:2px}
.pt-card__photo{position:relative;display:block;aspect-ratio:3/4;background:#eaf0f7}.pt-card__photo img{width:100%;height:100%;object-fit:cover;display:block}
.pt-card__badges{position:absolute;left:8px;top:8px;display:flex;gap:4px;flex-wrap:wrap}.pt-card__badges span{background:#0878f9;color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}.pt-card__badges .is-done{background:#7288a9}
.pt-card__body{display:grid;gap:3px;padding:10px 12px 12px}.pt-card__body strong{font-size:15px;line-height:1.4}.pt-card__body small{font-size:12px;color:#60728f;line-height:1.5}
.pt-card__sns{display:flex;gap:8px;margin-top:4px;align-items:center}.pt-card__sns .pm-social-icon{font-size:18px;padding:2px}.pt-card__sns .pm-social-icon--instagram{font-size:16px;padding:3px;border-radius:6px}
.pt-card__match{margin-top:4px;font-size:11px;font-weight:700;color:#138153;background:#e3f6ed;border-radius:6px;padding:2px 8px;justify-self:start}
.pt-more{text-align:center;margin:20px 0}
.pt-dialog--wide{width:640px}.pt-loading{padding:40px 0;text-align:center;color:#60728f}
.pt-photos{display:flex;gap:8px;overflow-x:auto;margin:0 0 18px;padding-bottom:6px}.pt-photos img{height:220px;width:auto;border-radius:9px;flex:none;object-fit:cover}
.pt-explore-detail .pt-profile{margin-bottom:0}
.pt-consult__form{display:grid;gap:10px}.pt-consult__form label{font-size:13px;font-weight:700;color:#345078}
.pt-consult__form .pm-textarea{width:100%;border:1px solid #d0d5dd;border-radius:8px;padding:10px 12px;font:inherit;line-height:1.7}
.pt-consult .pm-select{width:100%}.pt-consult__note{font-size:12px!important;color:#60728f!important;margin:0!important}
.pt-recommend{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:12px}
.pt-recommend .pt-card__body strong{font-size:14px}
@media(max-width:640px){.pt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pt-filters__grid{grid-template-columns:1fr}.pt-dialog--wide{width:calc(100vw - 24px)}.pt-photos img{height:180px}}

/* 事務所スカウトのタレント詳細と同じ見た目（基本情報・ジャンル・スリーサイズ） */
.pt-explore-detail .pt-name{font-size:28px;font-weight:700;margin:4px 0 8px;color:#333;line-height:1.35}
.pt-explore-detail .talent-detail-basic{display:flex;gap:20px;margin-bottom:20px;flex-wrap:wrap}
.pt-explore-detail .talent-detail-basic-item{display:flex;align-items:center;gap:8px;color:#666;font-size:14px}
.pt-explore-detail .talent-detail-basic-item i{color:#999;font-size:16px}
.pt-explore-detail .talent-detail-genres{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.pt-explore-detail .talent-detail-genre{background-color:color-mix(in oklab,#39b4ed 10%,transparent);color:#39b4ed;padding:5px 10px;border-radius:20px;font-size:12px;font-weight:700}
.pt-explore-detail .three-sizes-container{display:flex;gap:10px;margin-top:4px;padding:16px;background:#f9fafb;border-radius:10px}
.pt-explore-detail .size-box{flex:1;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:5px}
.pt-explore-detail .size-label{font-size:14px;font-weight:700;color:#666}
.pt-explore-detail .size-value{font-size:20px;font-weight:700;color:#333}

/* 写真（事務所スカウトの詳細と同じ：一番上に大きく、2:3、複数なら切り替え） */
.pt-explore-detail .pt-gallery{position:relative;margin:-28px -28px 20px;height:min(62vh,520px);min-height:260px;background:#eaf0f7;overflow:hidden;border-radius:14px 14px 0 0}
.pt-explore-detail .pt-gallery__img{display:none;width:100%;height:100%;object-fit:cover;object-position:center top}
.pt-explore-detail .pt-gallery__img.is-active{display:block}
.pt-explore-detail .pt-gallery__btn{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.85);color:#19314e;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2}
.pt-explore-detail .pt-gallery__btn--prev{left:14px}.pt-explore-detail .pt-gallery__btn--next{right:14px}
.pt-explore-detail .pt-gallery__dots{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);display:flex;gap:8px;z-index:2}
.pt-explore-detail .pt-gallery__dots span{width:8px;height:8px;border-radius:4px;background:rgba(255,255,255,.55);transition:all .2s}
.pt-explore-detail .pt-gallery__dots span.is-active{width:24px;background:#fff}
.pt-explore-detail .pm-detail-close{z-index:3;background:rgba(255,255,255,.9);right:12px;top:12px}
@media(max-width:640px){.pt-explore-detail .pt-gallery{margin:-24px -20px 18px}}

/* 事務所スカウトの詳細と同じ：右から出てくる幅500pxのカード（画面の高さいっぱい） */
.pt-dialog--drawer{width:min(500px,100vw,max(340px,50dvh));max-width:100vw;height:100dvh;max-height:100dvh;inset:0 0 0 auto;margin:0 0 0 auto;padding:0;border:0;border-left:1px solid #ddd;border-radius:0;overflow-y:auto;overscroll-behavior:contain;box-shadow:-8px 0 30px #1d365d26}
.pt-dialog--drawer:focus{outline:none}
.pt-dialog--drawer[open]{animation:pt-drawer-in .3s ease-out}
@keyframes pt-drawer-in{from{transform:translateX(100%)}to{transform:translateX(0)}}
.pt-dialog--drawer .pt-loading{padding:80px 20px}
.pt-dialog--drawer .pt-explore-detail{padding:0 0 32px}
.pt-dialog--drawer .pt-explore-detail>:not(.pt-gallery):not(.pm-detail-close):not(.pt-actionbar){margin-left:20px;margin-right:20px}
.pt-dialog--drawer .pt-explore-detail .pt-gallery{margin:0 0 22px;height:auto;aspect-ratio:2/3;max-height:75vh;min-height:0;border-radius:0}
.pt-dialog--drawer .pt-explore-detail .pm-detail-close{left:16px;right:auto;top:16px;width:36px;height:36px}
@media(prefers-reduced-motion:reduce){.pt-dialog--drawer[open]{animation:none}}

/* 下に固定する「案件相談を送る」（事務所スカウトの「スカウトを送る」と同じ位置） */
.pt-consult[hidden],.pt-actionbar[hidden]{display:none}
.pt-dialog--drawer .pt-explore-detail{padding-bottom:0}
.pt-dialog--drawer .pt-explore-detail>.pt-actionbar{position:sticky;bottom:0;margin:24px 0 0;padding:14px 20px;width:100%;background:#fff;border-top:1px solid #eee;box-shadow:0 -2px 10px rgba(0,0,0,.1);z-index:5}
.pt-actionbar__btn{width:100%;padding:12px;border:0;border-radius:25px;background:#4A8EE3;color:#fff;font-size:16px;font-weight:700;cursor:pointer}
.pt-actionbar__btn:hover{background:#357abd}
.pt-dialog--drawer .pt-consult{margin-bottom:24px}

/* 相談フォームの中央ポップアップ */
.pt-dialog--center{width:min(520px,calc(100vw - 24px));padding:24px;z-index:1300}
.pt-dialog--center .pt-consult{border-top:0;margin:0;padding:0}
.pt-dialog--center .pt-consult h3{font-size:18px;margin:0 0 12px}
.pt-dialog--center::backdrop{background:#13264290}

/* カード一覧の書き方（事務所スカウトの一覧と同じ並び：名前／年齢・性別・エリア／最終ログイン／ジャンル） */
.pt-card__body{gap:4px;padding:12px}
.pt-card__name{font-size:14px;font-weight:700;color:#333;line-height:1.4}
.pt-card__details{font-size:12px;color:#666;line-height:1.5}
.pt-card__login{display:flex;align-items:center;gap:4px;font-size:10px;color:#999}
.pt-card__genre-list{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}
.pt-card__genre{background-color:color-mix(in oklab,#39b4ed 10%,transparent);color:#39b4ed;padding:2px 8px;border-radius:6px;font-size:10px}
.pt-hint{display:block;font-weight:400;font-size:11px;color:#60728f;line-height:1.6}

/* SNSアイコンは写真の右下に */
.pt-card__sns{position:absolute;right:8px;bottom:8px;display:flex;gap:6px;align-items:center;margin:0}
.pt-card__sns .pm-social-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border-radius:50%;background:#fff;font-size:15px;box-shadow:0 2px 6px rgba(0,0,0,.25)}
.pt-card__sns .pm-social-icon--instagram{background:#fff;color:#d62976;font-size:15px;padding:0;border-radius:50%}
.pt-card__sns .pm-social-icon--tiktok{text-shadow:none}

/* 応募者一覧の右のカード（#pm-candidate-panel）にも、探す画面と同じ中身の整え方を使う */
.pm-candidate-detail .pt-explore-detail{padding:0 0 32px}
.pm-candidate-detail .pt-explore-detail>:not(.pt-gallery):not(.pm-detail-close):not(.pt-actionbar){margin-left:20px;margin-right:20px}
.pm-candidate-detail .pt-explore-detail .pt-gallery{margin:0 0 22px;height:auto;aspect-ratio:2/3;max-height:75vh;min-height:0;border-radius:0}
.pm-candidate-detail .pt-explore-detail .pm-detail-close,.pt-dialog--drawer .pt-explore-detail .pm-detail-close{left:16px;right:auto;top:16px;width:36px;height:36px;z-index:3;background:rgba(255,255,255,.9);float:none}
.pt-app-status__row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pt-app-status__date{margin-left:auto;font-size:12px;color:#7188aa}
.pt-app-status__project{margin:8px 0 0;font-weight:700;color:#19314e}
.pt-declared{margin:8px 0 0;font-size:13px;color:#19314e}
.pt-declared strong{color:#345078}
/* 下に固定する操作（カードの横幅いっぱい） */
.pt-explore-detail>.pt-actionbar--row{display:flex;gap:10px;flex-wrap:wrap;position:sticky;bottom:0;margin:24px 0 0;padding:14px 20px;width:100%;background:#fff;border-top:1px solid #eee;box-shadow:0 -2px 10px rgba(0,0,0,.1);z-index:5}
.pt-actionbar--row .pm-button{flex:1;min-width:120px;border-radius:25px;justify-content:center}
.pt-actionbar--notice{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;line-height:1.6;color:#667593;text-align:center}
.pt-actionbar--notice i{color:#8a97ad}

/* 詳細カードの×は、カードをスクロールしても画面の左上についてくる（写真の上に重ねる。内容は押し下げない） */
.pt-dialog--drawer .pt-explore-detail .pm-detail-close,.pm-candidate-detail .pt-explore-detail .pm-detail-close{position:sticky;top:14px;left:auto;right:auto;float:none;display:flex;flex:none;margin:0 0 -50px 16px;z-index:6;box-shadow:0 2px 8px rgba(24,40,70,.25)}

/* お気に入り・過去に依頼した人（プロ） */
.pt-lists { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:0 0 14px; }
.pt-lists__tab { display:inline-flex; align-items:center; gap:6px; min-height:36px; padding:6px 14px; border:1px solid #d5dfeb; border-radius:999px; background:#fff; color:#33415c!important; font-size:13px; font-weight:700; }
.pt-lists__tab span { min-width:20px; padding:0 6px; border-radius:999px; background:#eef2f7; font-size:11px; text-align:center; }
.pt-lists__tab.is-active { border-color:#087cff; background:#eaf3ff; color:#087cff!important; }
.pt-lists__tab .fa-heart { color:#e5484d; }
.pt-card__photo { position:relative; }
.pt-card__fav { position:absolute; top:8px; right:8px; display:flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:50%; background:#fff; color:#e5484d; box-shadow:0 1px 4px #0002; font-size:13px; }
.pt-card__badges .is-past { background:#1f2a55; color:#fff; }
.pt-fav-row { display:flex; justify-content:flex-end; margin:-4px 0 10px; }
.pt-fav-btn { display:inline-flex; align-items:center; gap:7px; min-height:36px; padding:6px 14px; border:1px solid #f1c0c2; border-radius:999px; background:#fff; color:#c6303e; font:inherit; font-size:13px; font-weight:700; cursor:pointer; }
.pt-fav-btn.is-on { background:#fdecec; border-color:#e5484d; }
.pt-fav-btn:focus-visible { outline:3px solid #72b4ff; outline-offset:2px; }

/* 並び替え：ラベル＋アイコン＋右端の矢印つきの選択欄（ただの入力欄に見えないように） */
.pt-sort{display:flex;align-items:center;gap:8px;flex:1 1 240px}
.pt-sort__label{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:#5b667a;white-space:nowrap}
.pt-sort .pm-select{flex:1;min-width:0;appearance:none;-webkit-appearance:none;padding-right:38px;font-weight:700;color:#1b2a44;cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1.5l6 6 6-6' fill='none' stroke='%23345078' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center}
.pt-sort .pm-select:hover{border-color:#8fb0e0}

/* タレントカード：写真の上に、SNSごとのアイコンとフォロワー数 */
.pt-card__sns--pills{left:8px;right:8px;flex-wrap:wrap;justify-content:flex-end;gap:3px}
.pt-card__sns-pill{display:inline-flex;align-items:center;gap:3px;height:20px;padding:0 7px 0 3px;border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 1px 5px rgba(0,0,0,.25);font-size:10px;color:#1b2a44}
.pt-card__sns-pill .pm-social-icon{width:14px!important;height:14px!important;padding:0!important;background:none!important;box-shadow:none!important;font-size:11px!important}
.pt-card__sns-pill .pm-social-icon svg{width:10px;height:10px}
.pt-card__sns-pill b{font-weight:800;line-height:1;letter-spacing:-.01em}
.pt-card__sns-pill.is-icon-only{width:20px;padding:0;justify-content:center}
