.pvd{
  --pvd-surface:#fff;
  --pvd-surface-2:#fafafb;
  --pvd-ink:#101114;
  --pvd-muted:#5c616b;
  --pvd-line:#e4e6eb;
  --pvd-accent:#e60023;
  --pvd-accent-hi:#c2001d;
  --pvd-warn:#b0500a;
  box-sizing:border-box;
  max-width:720px;
  margin:0 auto;
  padding:20px;
  background:var(--pvd-surface);
  border:1px solid var(--pvd-line);
  border-radius:20px;
  box-shadow:0 1px 2px rgba(16,17,20,.04),0 16px 40px rgba(16,17,20,.09);
  font-family:inherit;
  color:var(--pvd-ink);
  line-height:1.6;
  text-align:left;
}
.pvd *,.pvd *::before,.pvd *::after{box-sizing:border-box}
.pvd-muted{color:var(--pvd-muted);margin:0}
.pvd-form{display:flex;gap:10px;flex-wrap:wrap;margin:0}
.pvd-field{position:relative;display:flex;align-items:center;flex:1;min-width:220px}
.pvd-input{
  width:100%;height:54px;border-radius:28px;
  border:1px solid var(--pvd-line);background:var(--pvd-surface-2);
  color:var(--pvd-ink);font:inherit;font-size:15px;padding:0 86px 0 20px;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.pvd-input:focus{
  outline:none;border-color:var(--pvd-accent);background:var(--pvd-surface);
  box-shadow:0 0 0 4px rgba(230,0,35,.12);
}
.pvd-field-actions{position:absolute;right:9px;display:flex;gap:2px}
.pvd-icon-btn{
  width:36px;height:36px;border:0;border-radius:999px;background:transparent;
  color:var(--pvd-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;
  transition:background .15s ease,color .15s ease,transform .15s ease;
}
.pvd-icon-btn:hover{background:var(--pvd-line);color:var(--pvd-ink);transform:scale(1.1)}
.pvd-submit{
  height:54px;padding:0 28px;border:0;border-radius:999px;
  background:var(--pvd-accent);color:#fff;font:inherit;font-size:16px;font-weight:600;
  cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;
  transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.pvd-submit:hover{background:var(--pvd-accent-hi);transform:translateY(-2px);box-shadow:0 10px 24px rgba(230,0,35,.3)}
.pvd-submit:active{transform:translateY(0) scale(.985)}
.pvd-submit[disabled]{opacity:.6;pointer-events:none}
.pvd-stage{min-height:344px;margin-top:16px;position:relative}
.pvd-panel{min-height:344px}
.pvd-idle{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
  border:1px dashed var(--pvd-line);border-radius:16px;background:var(--pvd-surface-2);
  padding:20px;text-align:center;
}
.pvd-idle .pvd-muted{max-width:320px}
.pvd-idle-art{
  width:86px;height:129px;border-radius:12px;color:var(--pvd-muted);
  display:flex;align-items:center;justify-content:center;
  background:repeating-linear-gradient(45deg,var(--pvd-line),var(--pvd-line) 6px,var(--pvd-surface-2) 6px,var(--pvd-surface-2) 12px);
  animation:pvd-float 3.6s ease-in-out infinite;
}
.pvd-bar{height:3px;border-radius:999px;background:var(--pvd-line);overflow:hidden}
.pvd-bar span{display:block;height:3px;background:var(--pvd-accent);animation:pvd-bar 1.4s cubic-bezier(.3,.7,.3,1) forwards}
.pvd-loading-text{margin:14px 0}
.pvd-skel{background:var(--pvd-line);border-radius:12px;animation:pvd-shimmer 1.4s ease-in-out infinite}
.pvd-skel-thumb{width:190px;height:285px;border-radius:16px;flex:none}
.pvd-skel-lines{flex:1;min-width:200px;display:flex;flex-direction:column;gap:12px}
.pvd-skel-title{height:22px;width:85%;animation-delay:.15s}
.pvd-skel-sub{height:15px;width:50%;animation-delay:.3s}
.pvd-skel-row{height:52px;animation-delay:.45s}
.pvd-result-grid{display:flex;gap:18px;flex-wrap:wrap}
.pvd-thumb{
  width:190px;height:285px;flex:none;border-radius:16px;position:relative;overflow:hidden;
  background:var(--pvd-line) center/cover no-repeat;
  animation:pvd-pop .45s cubic-bezier(.2,.7,.3,1) both;
}
.pvd-duration{
  position:absolute;top:10px;right:10px;background:rgba(0,0,0,.55);color:#fff;
  font-size:13px;font-weight:600;padding:2px 8px;border-radius:999px;font-variant-numeric:tabular-nums;
}
.pvd-meta{flex:1;min-width:240px;display:flex;flex-direction:column;gap:10px}
.pvd-title{font-size:20px;font-weight:700;letter-spacing:-.02em;line-height:1.25;margin:0}
.pvd-source{font-size:15px}
.pvd-formats{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.pvd-row{
  display:flex;align-items:center;gap:12px;min-height:52px;padding:0 16px;
  border:1px solid var(--pvd-line);border-radius:12px;background:var(--pvd-surface-2);
  color:var(--pvd-ink);font:inherit;font-size:15px;text-align:left;
  transition:border-color .18s ease,background .18s ease;
}
.pvd-row:hover{border-color:var(--pvd-accent);background:var(--pvd-surface)}
.pvd-q{font-weight:600;width:58px}
.pvd-ext{color:var(--pvd-muted);font-size:13px;border:1px solid var(--pvd-line);border-radius:6px;padding:1px 7px}
.pvd-size{color:var(--pvd-muted);font-variant-numeric:tabular-nums}
.pvd-cta{margin-left:auto;display:inline-flex;align-items:center;gap:8px;font-weight:600;border:0;background:none;cursor:pointer;font:inherit;color:var(--pvd-ink)}
.pvd-cta svg{color:var(--pvd-accent)}
.pvd-cta[disabled]{opacity:.6;pointer-events:none}
.pvd-again,.pvd-retry{font:inherit;cursor:pointer}
.pvd-again{align-self:flex-start;background:none;border:0;color:var(--pvd-muted);font-size:15px;padding:6px 0;text-decoration:underline}
.pvd-again:hover{color:var(--pvd-ink)}
.pvd-error{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  border:1px solid var(--pvd-line);border-radius:16px;background:var(--pvd-surface-2);
  text-align:center;padding:24px;animation:pvd-pop .35s ease both;
}
.pvd-error .pvd-muted{max-width:390px}
.pvd-error-icon{
  width:44px;height:44px;border-radius:999px;background:var(--pvd-surface);
  border:1px solid var(--pvd-line);color:var(--pvd-warn);
  display:inline-flex;align-items:center;justify-content:center;
}
.pvd-error-title{font-size:20px;font-weight:700;letter-spacing:-.02em;margin:0}
.pvd-retry{
  margin-top:4px;height:44px;padding:0 24px;border-radius:999px;
  border:1px solid var(--pvd-line);background:var(--pvd-surface);color:var(--pvd-ink);
  font-size:15px;font-weight:600;transition:border-color .15s ease;
}
.pvd-retry:hover{border-color:var(--pvd-muted)}
.pvd-history{margin-top:16px;padding-top:16px;border-top:1px solid var(--pvd-line)}
.pvd :focus-visible{outline:2px solid var(--pvd-accent);outline-offset:2px;border-radius:6px}
@keyframes pvd-shimmer{0%{opacity:.55}50%{opacity:1}100%{opacity:.55}}
@keyframes pvd-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes pvd-pop{from{opacity:0;transform:scale(.97) translateY(10px)}to{opacity:1;transform:none}}
@keyframes pvd-bar{from{width:0}to{width:100%}}
@media (max-width:640px){
  .pvd{padding:16px;border-radius:16px}
  .pvd-submit{width:100%}
  .pvd-thumb,.pvd-skel-thumb{width:100%;height:auto;aspect-ratio:2/3;max-width:260px;margin:0 auto}
}
@media (prefers-reduced-motion:reduce){
  .pvd *{animation:none!important;transition:none!important}
}