
:root{
  --ptp-primary:#5b5ce6;
  --ptp-secondary:#7c3aed;
  --ptp-accent:#06b6d4;
  --ptp-success:#16a34a;
  --ptp-danger:#dc2626;
  --ptp-bg:#f4f7fb;
  --ptp-card:#ffffff;
  --ptp-text:#1f2937;
  --ptp-muted:#64748b;
  --ptp-border:#e5e7eb;
  --ptp-shadow:0 10px 30px rgba(15,23,42,.08);
}
.ptp-toolkit{
  max-width:1100px;
  margin:32px auto;
  padding:24px;
  background:var(--ptp-card);
  border-radius:24px;
  box-shadow:var(--ptp-shadow);
  font-family:Inter,Arial,Helvetica,sans-serif;
  color:var(--ptp-text);
}
.ptp-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.ptp-tab{border:0;padding:12px 16px;border-radius:14px;background:#eef2ff;color:#374151;font-weight:700;cursor:pointer;transition:all .2s ease}
.ptp-tab:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(91,92,230,.18)}
.ptp-tab.active{background:linear-gradient(135deg,var(--ptp-primary),var(--ptp-secondary));color:#fff}
.ptp-panel{display:none;animation:ptpFade .18s ease}
.ptp-panel.active{display:block}
@keyframes ptpFade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.ptp-panel p{color:var(--ptp-muted);margin:0 0 12px}
.ptp-file-input{width:100%;padding:14px;border:2px dashed #c7d2fe;border-radius:16px;background:#fafaff;margin-bottom:14px}
.ptp-file-list{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:10px}
.ptp-file-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--ptp-border);border-radius:14px;background:#fff}
.ptp-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.ptp-remove{border:0;width:32px;height:32px;border-radius:999px;background:#fee2e2;color:var(--ptp-danger);font-size:20px;line-height:1;cursor:pointer}
.ptp-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.ptp-options label{display:flex;flex-direction:column;gap:8px;font-weight:700;color:#374151}
.ptp-options select,.ptp-options input[type='range']{width:100%}
.ptp-button{border:0;padding:14px 20px;border-radius:16px;background:linear-gradient(135deg,var(--ptp-primary),var(--ptp-secondary));color:#fff;font-weight:800;cursor:pointer;box-shadow:0 10px 24px rgba(91,92,230,.25);transition:transform .15s ease, box-shadow .15s ease}
.ptp-button:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(91,92,230,.32)}
.ptp-button:disabled{opacity:.7;cursor:not-allowed}
.ptp-result{margin-top:16px;padding:14px 16px;border-radius:16px;border:1px solid transparent;display:none}
.ptp-result.ptp-success{display:block;background:#ecfdf5;border-color:#bbf7d0;color:#166534}
.ptp-result.ptp-error{display:block;background:#fef2f2;border-color:#fecaca;color:#991b1b}
.ptp-result a{color:#0f766e;font-weight:800;text-decoration:none}
.ptp-max-upload{display:inline-flex;align-items:center;gap:8px;background:#eef2ff;color:#4338ca;padding:8px 12px;border-radius:999px;font-weight:700;margin:0 0 16px}
.ptp-ad-slot{margin-top:24px;padding:20px;border:2px dashed #cbd5e1;border-radius:18px;text-align:center;color:#64748b;background:#f8fafc}
@media (max-width:768px){
  .ptp-toolkit{margin:16px;padding:16px;border-radius:20px}
  .ptp-tabs{display:grid;grid-template-columns:1fr 1fr}
  .ptp-tab{width:100%;text-align:center}
  .ptp-options{grid-template-columns:1fr}
  .ptp-button{width:100%}
}
