

.pg-prompt{padding-top:12px}

.pg-prompt .pm-types{
  display:flex;gap:3px;margin-top:14px;padding:4px;width:max-content;
  border:1px solid var(--line);border-radius:var(--r-l);background:var(--bg2);
}
.pg-prompt .pm-types a{
  display:flex;align-items:center;gap:8px;height:34px;padding:0 24px;
  border-radius:var(--r-s);font-size:15.5px;color:var(--ink2);transition:.15s;
}
.pg-prompt .pm-types a:hover{color:var(--brand)}
.pg-prompt .pm-types a.on{
  background:#fff;color:var(--brand);font-weight:600;
  box-shadow:0 1px 3px rgba(20,28,50,.09);
}
.pg-prompt .pm-types a b{
  font-size:13.5px;font-weight:500;padding:1px 7px;border-radius:9px;
  background:#E8EBF0;color:var(--ink3);transition:.15s;
}
.pg-prompt .pm-types a.on b{background:var(--brand-bg);color:var(--brand)}

.pg-prompt .pm-lib{
  display:grid;grid-template-columns:236px minmax(0,1fr);
  gap:20px;align-items:start;margin-top:16px;
}
.pg-prompt .pm-lib>*{min-width:0}

.pg-prompt .pm-side{
  position:sticky;top:72px;
  border:1px solid var(--line);border-radius:var(--r-l);background:#fff;
  padding:15px 15px 16px;
  
  max-height:calc(100vh - 88px);overflow-y:auto;overscroll-behavior:contain;
  scrollbar-width:thin;scrollbar-color:#D8DDE6 transparent;
}
.pg-prompt .pm-side::-webkit-scrollbar{width:6px}
.pg-prompt .pm-side::-webkit-scrollbar-thumb{background:#D8DDE6;border-radius:3px}
.pg-prompt .pm-side::-webkit-scrollbar-track{background:transparent}

.pg-prompt .pm-side-h{display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--line2)}
.pg-prompt .pm-side-h h2{font-size:16px;font-weight:600;letter-spacing:-.01em}
.pg-prompt .pm-reset{
  margin-left:auto;height:26px;padding:0 11px;border:1px solid var(--line);
  border-radius:20px;font-size:14px;color:var(--ink3);transition:.15s;
}
.pg-prompt .pm-reset:hover:not(:disabled){border-color:var(--brand-line);color:var(--brand);background:var(--brand-bg)}
.pg-prompt .pm-reset:disabled{color:var(--ink4);cursor:default}

.pg-prompt .pm-grp{padding:14px 0 0}
.pg-prompt .pm-grp+.pm-grp{border-top:1px solid var(--line2);margin-top:12px;padding-top:12px}
.pg-prompt .pm-grp h3{font-size:14px;font-weight:600;color:var(--ink2);margin-bottom:5px;letter-spacing:.03em}
.pg-prompt .pm-opts{display:flex;flex-direction:column;gap:0}

.pg-prompt .pm-cat-group{display:flex;flex-direction:column;gap:0}
.pg-prompt .pm-cat-group+.pm-cat-group{margin-top:10px;padding-top:8px;border-top:1px solid var(--line2)}
.pg-prompt .pm-cat-group h4{font-size:12.5px;font-weight:600;color:var(--ink4);letter-spacing:.04em;margin:0 0 4px;padding-left:8px}
.pg-prompt .pm-cat-empty{margin:0;padding:2px 8px 6px;font-size:12.5px;color:var(--ink4)}

.pg-prompt .pm-opt{
  display:flex;align-items:center;gap:8px;height:32px;padding:0 8px;margin:0 -8px;
  border-radius:7px;font-size:15.5px;color:var(--ink2);
  text-align:left;transition:.13s;
}
.pg-prompt .pm-opt:hover{background:var(--brand-bg);color:var(--brand)}
.pg-prompt .pm-opt em{
  margin-left:auto;font-style:normal;font-size:13.5px;color:var(--ink3);
  min-width:24px;text-align:center;padding:1px 6px;border-radius:20px;
  background:var(--line2);font-variant-numeric:tabular-nums;transition:.13s;
}
.pg-prompt .pm-opt:hover em{background:#fff;color:var(--brand)}
.pg-prompt .pm-opt[aria-pressed="true"]{background:var(--brand-bg);color:var(--brand);font-weight:500}
.pg-prompt .pm-opt[aria-pressed="true"] em{background:#fff;color:var(--brand)}

.pg-prompt .pm-opt[data-empty="1"]{color:var(--ink4);pointer-events:none}
.pg-prompt .pm-opt[data-empty="1"] em{background:transparent}

.pg-prompt .pm-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}

.pg-prompt .pm-grid.pm-grid--masonry{display:block;columns:4;column-gap:14px}
.pg-prompt .pm-grid.pm-grid--masonry .pm-card{break-inside:avoid;margin-bottom:14px}
.pg-prompt .pm-grid.pm-grid--masonry .pgn,
.pg-prompt .pm-grid.pm-grid--masonry .pager{column-span:all}

.pg-prompt .pm-card{
  position:relative;display:flex;flex-direction:column;overflow:hidden;
  border:1px solid var(--line);border-radius:var(--r-l);background:#fff;
  transition:border-color .15s,box-shadow .15s;
}
.pg-prompt .pm-card:hover{border-color:#CFD8E6;box-shadow:var(--sh-h)}

.pg-prompt .pm-art{
  position:relative;isolation:isolate;aspect-ratio:3/4;background:var(--pc);
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:10px 11px;
}
.pg-prompt .pm-art::before,
.pg-prompt .pm-art::after{content:"";position:absolute;inset:0;z-index:0}
.pg-prompt .pm-art::before{
  background:linear-gradient(var(--ga,158deg),rgba(255,255,255,var(--gw,.16)),rgba(255,255,255,0) 58%);
}
.pg-prompt .pm-art::after{
  background:linear-gradient(var(--ga,158deg),rgba(0,0,0,0) 55%,rgba(0,0,0,var(--gd,.42)));
  opacity:0;transition:opacity .18s;
}
.pg-prompt .pm-fr{position:absolute;inset:0;width:100%;height:100%;z-index:1}
.pg-prompt .pm-fr path{fill:none;stroke:rgba(255,255,255,.24);stroke-width:.6;vector-effect:non-scaling-stroke}
.pg-prompt .pm-fr rect{fill:rgba(255,255,255,.16);stroke:rgba(255,255,255,.9);stroke-width:.9;vector-effect:non-scaling-stroke}

/* 真实封面：卡片高度跟随图片原始比例（长图高、宽图矮，瀑布流靠它错落）；
   图片未加载完时用 min-height 兜底占位，避免塌成 0 */
.pg-prompt .pm-art.has-img{aspect-ratio:auto;padding:0;min-height:180px}
.pg-prompt .pm-art.has-img .pm-img{position:static;width:100%;height:auto;display:block}
.pg-prompt .pm-art .pm-model{position:absolute;left:11px;bottom:10px;z-index:2;font-size:13px;color:rgba(255,255,255,.88);opacity:0;transition:opacity .18s}
.pg-prompt .pm-art:hover::after,
.pg-prompt .pm-art:hover .pm-model{opacity:1}

/* 点赞按钮：定位在卡片右上角（封面图之上），必须在封面链接之外才能接收点击 */
.pg-prompt .pm-like{
  position:absolute;top:10px;right:10px;z-index:3;
  display:inline-flex;align-items:center;gap:4px;height:23px;padding:0 9px;
  border:0;border-radius:20px;background:rgba(0,0,0,.42);color:#fff;
  font-family:inherit;font-size:12.5px;font-variant-numeric:tabular-nums;
  cursor:pointer;transition:background .13s;
}
.pg-prompt .pm-like:hover{background:rgba(0,0,0,.62)}
.pg-prompt .pm-like[aria-pressed="true"]{background:var(--brand)}
.pg-prompt .pm-like:disabled{opacity:.6;cursor:default}
.pg-prompt .pm-like svg{width:11px;height:11px}

.pg-prompt .pm-tags .pm-cat{
  flex:none;height:23px;line-height:23px;padding:0 9px;
  border-radius:12px;background:var(--brand-bg);color:var(--brand);
  font-size:13px;font-weight:500;white-space:nowrap;
}
.pg-prompt .pm-md{
  flex:none;height:23px;line-height:23px;padding:0 9px;
  border-radius:12px;background:var(--line2);color:var(--ink3);
  font-size:13px;white-space:nowrap;
}

.pg-prompt .pm-bd{display:flex;flex-direction:column;gap:7px;padding:11px 12px 12px;flex:1}
.pg-prompt .pm-t{
  font-size:15.5px;font-weight:600;line-height:1.5;letter-spacing:-.01em;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.pg-prompt .pm-card:hover .pm-t{color:var(--brand)}
.pg-prompt .pm-u{
  font-size:14px;color:var(--ink3);line-height:1.6;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
/* 标签只展示一行：不换行，超出部分裁掉并淡出，避免卡片被标签撑高 */
.pg-prompt .pm-tags{
  display:flex;flex-wrap:nowrap;gap:5px;overflow:hidden;
  -webkit-mask-image:linear-gradient(to right,#000 88%,transparent);
  mask-image:linear-gradient(to right,#000 88%,transparent);
}

.pg-prompt .pm-tg{
  flex:none;height:23px;padding:0 8px;border:1px solid var(--line);border-radius:12px;
  background:#fff;font-size:13px;color:var(--ink2);transition:.13s;white-space:nowrap;
}
.pg-prompt .pm-tg:hover{border-color:var(--brand-line);color:var(--brand);background:var(--brand-bg)}
.pg-prompt .pm-tg[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:#fff}

@media(max-width:1180px){
  .pg-prompt .pm-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pg-prompt .pm-grid.pm-grid--masonry{columns:3}
  .pg-prompt .pm-lib{grid-template-columns:206px minmax(0,1fr)}
}
@media(max-width:980px){
  .pg-prompt .pm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pg-prompt .pm-grid.pm-grid--masonry{columns:2}
}
@media(max-width:900px){
  .pg-prompt .pm-lib{grid-template-columns:1fr;gap:14px}
  .pg-prompt .pm-side{position:static;padding:13px 14px 15px;max-height:none;overflow:visible}
  .pg-prompt .pm-opts{flex-direction:row;flex-wrap:wrap;gap:6px}
  .pg-prompt .pm-cat-group{flex:1 1 100%;width:100%}
  .pg-prompt .pm-opt{height:30px;padding:0 12px;margin:0;border:1px solid var(--line);border-radius:16px;font-size:15px}
  .pg-prompt .pm-opt:hover{background:#fff}
  .pg-prompt .pm-opt[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:#fff}
  .pg-prompt .pm-opt[aria-pressed="true"] em{background:transparent;color:rgba(255,255,255,.8)}
  .pg-prompt .pm-grp+.pm-grp{margin-top:8px;padding-top:10px}
}
@media(max-width:640px){
  .pg-prompt .pm-types{width:100%}
  .pg-prompt .pm-types a{flex:1;justify-content:center;padding:0 8px;gap:6px}
}
@media(max-width:520px){
  .pg-prompt .pm-grid{grid-template-columns:1fr}
  .pg-prompt .pm-grid.pm-grid--masonry{columns:1}
}

.prompts-viewport .pm-library-frame{height:calc(100dvh - var(--prompts-frame-top,153px) - 12px);display:flex;flex-direction:column;min-height:0;}
.prompts-viewport .pg-prompt .phead{flex:none;}
.prompts-viewport .pg-prompt .pm-lib{flex:1;min-height:0;align-items:stretch;}
.prompts-viewport .pg-prompt .pm-side{position:static;min-height:0;max-height:100%;overflow-y:auto;scrollbar-width:none;}
.prompts-viewport .pg-prompt .pm-side::-webkit-scrollbar{display:none;}
.prompts-viewport .pg-prompt .pm-res{display:flex;flex-direction:column;flex:1;min-height:0;}
.prompts-viewport .pg-prompt .rbar{flex:none;}
.prompts-viewport .pm-results-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;padding:2px 0 4px;}
.prompts-viewport .pm-results-scroll::-webkit-scrollbar{display:none;}
.prompts-viewport .pm-results-scroll:focus-visible{outline-offset:-2px;}
.prompts-viewport .pg-prompt .ptail{flex:none;}
