.pcr{font-family:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--pcr-text);position:relative;width:100%;max-width:var(--pcr-mw,none);margin-left:auto!important;margin-right:auto!important;padding-left:var(--pcr-pd,40px)!important;padding-right:var(--pcr-pd,40px)!important;box-sizing:border-box!important;overflow:hidden}
.pcr *,.pcr *::before,.pcr *::after{box-sizing:border-box}
.pcr-head{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.pcr-title{margin:0;font-size:var(--pcr-hs);font-weight:700;line-height:1.15;letter-spacing:-.015em;color:var(--pcr-h)}
.pcr-title:empty{display:none}
.pcr-sum{display:flex;align-items:center;gap:14px}
.pcr-avg{font-size:44px;font-weight:700;line-height:1;color:var(--pcr-h)}
.pcr-count{font-size:13px;color:#777;margin-top:4px}
.pcr-stars{position:relative;display:inline-block;font-size:18px;letter-spacing:2px;line-height:1;color:#dcdcd6;white-space:nowrap}
.pcr-stars::before{content:"★★★★★"}
.pcr-stars>span{position:absolute;left:0;top:0;height:100%;overflow:hidden;color:var(--pcr-star);white-space:nowrap}
.pcr-stage{position:relative}
.pcr-track{display:flex;gap:var(--pcr-gap);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:4px 2px 14px;cursor:grab;overscroll-behavior-x:contain;align-items:stretch}
.pcr-track::-webkit-scrollbar{display:none}
.pcr-track.is-drag{scroll-snap-type:none;scroll-behavior:auto;cursor:grabbing;user-select:none}
.pcr-grid .pcr-track{display:grid;grid-template-columns:repeat(var(--pcr-cd),minmax(0,1fr));overflow:visible;cursor:auto}
.pcr-card{flex:0 0 calc((100% - var(--pcr-gap)*(var(--pcr-cd) - 1))/var(--pcr-cd));scroll-snap-align:start;min-width:0;background:var(--pcr-card);border:1px solid var(--pcr-border);border-radius:var(--pcr-rad);padding:28px;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.pcr-grid .pcr-card{flex:none}
.pcr-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -22px rgba(0,0,0,.35)}
.pcr-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}
.pcr-q{font-family:Georgia,serif;font-size:64px;line-height:.7;color:var(--pcr-accent);opacity:.18;height:30px}
.pcr-body{flex:1 1 auto}
.pcr-text{margin:0;font-size:15px;line-height:1.75;color:var(--pcr-text);overflow-wrap:anywhere;white-space:pre-line}
.pcr-more{background:none;border:0;padding:0;margin-top:8px;font:inherit;font-size:13px;font-weight:600;color:var(--pcr-accent);cursor:pointer;text-decoration:underline}
.pcr-foot{display:flex;align-items:center;gap:14px;margin-top:22px;padding-top:20px;border-top:1px solid var(--pcr-border)}
.pcr-av{flex:none;width:46px;height:46px;border-radius:50%;background:var(--pcr-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;letter-spacing:.02em}
.pcr-who{display:flex;flex-direction:column;gap:2px;min-width:0}
.pcr-name{font-size:15px;font-weight:600;color:var(--pcr-h)}
.pcr-meta{font-size:12.5px;color:#888}
.pcr-meta:empty{display:none}
.pcr-ver{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--pcr-accent)}
.pcr-prod{display:flex;align-items:center;gap:10px;margin-top:18px;padding:10px;background:#fff;border:1px solid var(--pcr-border);border-radius:10px;text-decoration:none!important;color:var(--pcr-text)!important;font-size:13px;line-height:1.4}
.pcr-prod img{width:42px;height:42px;object-fit:cover;border-radius:6px;flex:none;-webkit-user-drag:none}
.pcr-prod small{color:#999;display:block;font-size:11px}
.pcr-prod:hover{border-color:var(--pcr-accent)}
.pcr-arrow{position:absolute;top:calc(50% - 30px);z-index:5;width:48px;height:48px;border-radius:50%;border:0;background:#fff;color:#111;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.16);opacity:0;transition:opacity .3s,transform .25s,background .2s,color .2s}
.pcr-prev{left:8px;transform:translateX(-8px)}.pcr-next{right:8px;transform:translateX(8px)}
.pcr-stage:hover .pcr-arrow{opacity:1;transform:none}
.pcr-arrow:hover{background:var(--pcr-accent);color:#fff}
.pcr-static .pcr-arrow,.pcr-static .pcr-dots{display:none}
.pcr-dots{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:22px;min-height:14px}
.pcr-dots[hidden]{display:none}
.pcr-dot{width:8px;height:8px;border-radius:50%;background:var(--pcr-h);border:0;padding:0;cursor:pointer;transition:.25s;position:relative;flex:none}
.pcr-dot::after{content:"";position:absolute;inset:-8px}
.pcr-dot.is-active{background:transparent;box-shadow:0 0 0 1.5px var(--pcr-h);width:12px;height:12px}
.pcr-grid .pcr-dots{display:none}
@media(max-width:1024px){
 .pcr{padding-left:var(--pcr-pt,24px)!important;padding-right:var(--pcr-pt,24px)!important}
 .pcr-card{flex-basis:calc((100% - var(--pcr-gap)*(var(--pcr-ct) - 1))/var(--pcr-ct))}
 .pcr-grid .pcr-track{grid-template-columns:repeat(var(--pcr-ct),minmax(0,1fr))}
 .pcr-title{font-size:calc(var(--pcr-hs)*.85)}
}
@media(max-width:640px){
 .pcr{padding-left:var(--pcr-pm,16px)!important;padding-right:var(--pcr-pm,16px)!important}
 .pcr-card{flex-basis:calc((100% - var(--pcr-gap)*(var(--pcr-cm) - 1))/var(--pcr-cm));padding:22px}
 .pcr-grid .pcr-track{grid-template-columns:repeat(var(--pcr-cm),minmax(0,1fr))}
 .pcr-head{margin-bottom:24px;gap:14px}
 .pcr-title{font-size:calc(var(--pcr-hs)*.66)}
 .pcr-avg{font-size:34px}
 .pcr-arrow{display:none}
}
@media(hover:none){.pcr-arrow{opacity:1;transform:none}}

/* ---- v1.1 premium upgrade ---- */
.pcr-card{position:relative;overflow:hidden}
.pcr-card::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:var(--pcr-accent);transform:scaleX(.18);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.pcr-card:hover::before{transform:scaleX(1)}
.pcr-stars{font-size:19px}
.pcr-q{font-size:78px;opacity:.14}
.pcr-text{font-size:15.5px;line-height:1.8}
.pcr-av{box-shadow:0 0 0 3px var(--pcr-card),0 0 0 4.5px var(--pcr-accent)}
.pcr-ver{background:rgba(11,74,58,.09);padding:3px 9px;border-radius:20px;width:max-content;margin-top:4px}
.pcr-sample{position:absolute;top:12px;right:12px;z-index:3;background:#fff3cd;color:#7a5b00;border:1px solid #e9d38a;font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;letter-spacing:.02em}
/* summary panel */
.pcr-sum{display:flex;align-items:center;gap:28px;background:var(--pcr-card);border:1px solid var(--pcr-border);border-radius:var(--pcr-rad);padding:20px 26px}
.pcr-sum-main{display:flex;align-items:center;gap:14px}
.pcr-bars{display:flex;flex-direction:column;gap:5px;min-width:200px;border-left:1px solid var(--pcr-border);padding-left:26px}
.pcr-bar{display:grid;grid-template-columns:26px 1fr 22px;align-items:center;gap:8px;font-size:11.5px;color:#777}
.pcr-bar i{display:block;height:6px;border-radius:6px;background:#e4e4de;overflow:hidden}
.pcr-bar b{display:block;height:100%;border-radius:6px;background:var(--pcr-star)}
.pcr-bar em{font-style:normal;text-align:right}
/* card styles */
.pcr-st-white .pcr-card{background:#fff;border-color:transparent;box-shadow:0 14px 34px -16px rgba(0,0,0,.22)}
.pcr-st-white .pcr-av{box-shadow:0 0 0 3px #fff,0 0 0 4.5px var(--pcr-accent)}
.pcr-st-outline .pcr-card{background:transparent;border:1.5px solid var(--pcr-h)}
.pcr-st-outline .pcr-av{box-shadow:none}
.pcr-st-dark .pcr-card{background:#1c1c1c;border-color:#1c1c1c;color:#eee}
.pcr-st-dark .pcr-text{color:#e6e6e6}
.pcr-st-dark .pcr-name{color:#fff}
.pcr-st-dark .pcr-meta{color:#9a9a9a}
.pcr-st-dark .pcr-foot{border-top-color:#333}
.pcr-st-dark .pcr-q{color:#fff;opacity:.16}
.pcr-st-dark .pcr-more{color:var(--pcr-star)}
.pcr-st-dark .pcr-ver{color:#7fe0bd;background:rgba(127,224,189,.12)}
.pcr-st-dark .pcr-av{box-shadow:0 0 0 3px #1c1c1c,0 0 0 4.5px var(--pcr-star)}
.pcr-st-dark .pcr-prod{background:#262626;border-color:#333;color:#ddd!important}
.pcr-st-dark .pcr-stars{color:#444}
@media(max-width:900px){.pcr-sum{width:100%;flex-wrap:wrap;gap:18px}.pcr-bars{border-left:0;padding-left:0;min-width:0;flex:1 1 200px}}
@media(max-width:640px){.pcr-sum{padding:16px 18px}.pcr-bars{flex:1 1 100%}}
