/* 部位細節照 v0.9.0：手機一排兩隻、電腦一排多隻；配色跟協會官網 */
.pt-page{background:#FFF8EC}
.pt-page.pt-has-bar main{padding-bottom:96px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pt-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:10px 2px 6px}
.pt-title{margin:0;font-size:20px;color:#1F3A5F}
.pt-back{font-size:14px;font-weight:700;color:#B9550E;text-decoration:none;white-space:nowrap}
.pt-parts{display:flex;flex-wrap:wrap;gap:6px}
.pt-parts button{min-height:40px;padding:6px 12px;border:1.5px solid #F1DCC0;border-radius:999px;background:#fff;color:#1F3A5F;font-size:15px;font-weight:700}
.pt-parts button.active{background:#1F3A5F;border-color:#1F3A5F;color:#fff}
.pt-parts button:focus-visible{outline:3px solid #E0701B;outline-offset:2px}
.pt-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:10px 2px 4px}
.pt-count{margin:0;font-size:14px;color:#5B6B82}
.pt-bar .pid-btn.on{background:#1F3A5F;border-color:#1F3A5F;color:#fff}
.pt-filter{margin:6px 0 4px;padding:10px 12px;border:1.5px solid #F1DCC0;border-radius:14px;background:#fff;display:grid;gap:8px}
.pt-filter[hidden]{display:none}
.pt-frow{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}
.pt-frow>span{font-weight:800;color:#1F3A5F;min-width:36px}
.pt-frow label{display:inline-flex;flex-direction:row;align-items:center;gap:6px;min-height:40px;padding-right:4px;font-size:16px}
.pt-frow input{width:20px;height:20px;accent-color:#E0701B}
.pt-fnote{margin:0;font-size:12.5px;color:#5B6B82}
.pt-filter .pid-btn{justify-self:start}
.pt-box{color:#23324A}
.pt-warn{margin:6px 0;padding:8px 10px;border-radius:12px;background:#FFF1E0;color:#8A3F06;font-size:14px}
.pt-none{margin:16px 2px;color:#5B6B82}
.pt-sec{margin:14px 2px 8px;font-size:16px;color:#B9550E}
.pt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.pt-card{min-width:0;display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:14px;background:#fff;border:1.5px solid #F1DCC0}
.pt-card.pt-unk{border-style:dashed}
.pt-card.picked{border:2.5px solid #E0701B;padding:7px;background:#FFF6EA}
.pt-head{display:flex;align-items:center;gap:8px;min-width:0}
.pt-face{flex:none;width:44px;height:44px;border-radius:50%;overflow:hidden;background:#FFF1E0}
.pt-face img{width:100%;height:100%;object-fit:cover;display:block}
.pt-name{min-width:0;display:flex;flex-direction:column;line-height:1.25}
.pt-name b{font-size:16px;color:#1F3A5F;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pt-unk .pt-name b{color:#5B6B82}
.pt-name small{font-size:11.5px;color:#5B6B82;overflow-wrap:anywhere}
.pt-imgwrap{position:relative}
.pt-img{position:relative;display:block;width:100%;padding:0;border:0;border-radius:10px;overflow:hidden;background:#EEEAE4;aspect-ratio:1/1;cursor:zoom-in}
.pt-img img{width:100%;height:100%;object-fit:cover;display:block}
.pt-img:focus-visible{outline:3px solid #1F3A5F;outline-offset:2px}
.pt-more{position:absolute;left:6px;bottom:6px;padding:2px 8px;border-radius:999px;background:rgba(31,58,95,.85);color:#fff;font-size:12px;font-weight:700}
.pt-pick{position:absolute;top:4px;right:4px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:10px;cursor:pointer}
.pt-pick input{width:26px;height:26px;margin:0;accent-color:#E0701B;background:#fff;box-shadow:0 0 0 2px #fff;border-radius:6px;cursor:pointer}
.pt-see{margin:0;font-size:13px;color:#23324A}
.pt-cmpbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;gap:8px;padding:10px max(12px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:2px solid #F1DCC0;box-shadow:0 -6px 20px rgba(31,58,95,.12)}
.pt-cmpbar[hidden]{display:none}
.pt-cmpbar span{flex:1 1 auto;min-width:0;font-weight:700;color:#1F3A5F;font-size:14px}
.pt-cmpbar .pid-btn{flex:none}
.pt-cmpbar .pid-btn:disabled{opacity:.45}
.pt-dlg .dialog-content{display:grid;gap:14px}
.pt-one{display:grid;gap:6px}
.pt-big{width:100%;max-width:400px;margin:auto;border-radius:12px;display:block}
.pt-from,.pt-hint{margin:0;font-size:13px;color:#5B6B82}
.pt-orig{width:100%;border-radius:12px;display:block;background:#eee}
/* 併排比：手機 2 張一排（4 張＝2×2），電腦一排全部 */
dialog.pt-cmpdlg{width:min(1100px,calc(100% - 12px));max-height:94vh}
.pt-cmpgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}
.pt-cmp{margin:0;min-width:0}
.pt-cmp img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px;display:block;background:#eee}
.pt-cmp figcaption{display:flex;flex-direction:column;line-height:1.25;margin-top:4px}
.pt-cmp figcaption b{font-size:15px;color:#1F3A5F;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pt-cmp figcaption small{font-size:11.5px;color:#5B6B82}
@media (min-width:760px){.pt-cmpgrid[data-n="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.pt-cmpgrid[data-n="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}}
.pt-has-bar .pid-toast{bottom:90px}
