.pvs{--bg:#fff;--panel:#f9fafb;--border:#d1d5db;--text:#111827;--muted:#6b7280;--input-text:#111827;--accent:#2563eb;--ok:#059669;--err:#dc2626;--warn:#b45309;--note-bg:#eff6ff;--note-border:#bfdbfe;--note-text:#1e3a8a;
  background:var(--bg);color:var(--text);padding:32px 40px;border:1px solid #e5e7eb;border-radius:12px;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;max-width:100%;box-sizing:border-box}
.pvs[data-theme=dark]{--bg:#111827;--panel:#374151;--border:#4b5563;--text:#fff;--muted:#9ca3af;--input-text:#d1d5db;--ok:#34d399;--err:#f87171;--warn:#fbbf24;--note-bg:rgba(37,99,235,.14);--note-border:rgba(96,165,250,.4);--note-text:#dbeafe;border-color:transparent}
.pvs *{box-sizing:border-box}
.pvs__title{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:1.35rem;font-weight:700;color:var(--text);line-height:1.3}
.pvs__desc{margin:0 0 28px;color:var(--muted);font-size:.95rem;line-height:1.5}
.pvs__label{display:block;margin-bottom:8px;font-size:.9rem;font-weight:600;color:var(--text)}
.pvs__input{display:block;width:100%;min-height:180px;padding:14px;background:var(--panel);color:var(--input-text);border:1px solid var(--border);border-radius:8px;
  font:.9rem/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;resize:vertical;transition:border-color .15s,box-shadow .15s}
.pvs__input::placeholder{color:var(--muted);opacity:.8}
.pvs__input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(37,99,235,.3)}
.pvs__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.pvs__meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:10px 0 20px;font-size:.9rem;color:var(--muted)}
.pvs__hint{font-size:.8rem;opacity:.8}
.pvs__notice{margin:-6px 0 18px;padding:10px 14px;border-radius:8px;font-size:.9rem;line-height:1.5;border:1px solid currentColor}
.pvs__notice[data-type=ok]{color:var(--ok)} .pvs__notice[data-type=err]{color:var(--err)} .pvs__notice[data-type=warn]{color:var(--warn)}
.pvs__count.is-bad{color:var(--err)}
.pvs__notice code{font-size:.85em;margin-right:6px}
.pvs__btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;background:var(--accent);color:#fff;border:0;border-radius:8px;font:600 1rem/1 inherit;cursor:pointer;transition:background .15s,opacity .15s}
.pvs__btn:hover:not(:disabled){background:#1d4ed8}
.pvs__btn:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}
.pvs__btn:disabled{opacity:.45;cursor:not-allowed}
.pvs__btn.is-loading .pvs__btn-text::after{content:"…"}
@media (max-width:600px){.pvs{padding:22px 18px}.pvs__btn{width:100%;justify-content:center}}

.pvs__notices{margin:0 0 26px;padding:14px 16px;background:var(--note-bg);border:1px solid var(--note-border);border-radius:10px;color:var(--note-text)}
.pvs__notices-title{margin:0 0 8px;font-size:.95rem;font-weight:700;color:inherit}
.pvs__notices ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pvs__notices li{display:flex;gap:10px;align-items:flex-start;font-size:.92rem;line-height:1.55}
.pvs__notices-icon{flex:none;margin-top:2px;color:var(--ok);display:inline-flex}
.pvs__notices strong{font-weight:700}
