.pgpoem {
  max-width: 980px;
  margin: 0 auto 44px;
  padding: 20px;
  font-family: inherit;
}
.pgpoem * { box-sizing: border-box; }
.pgpoem-hero {
  text-align: center;
  padding: 38px 22px 28px;
  border: 1px solid #e6edf5;
  border-radius: 30px;
  background: radial-gradient(circle at top left, rgba(0,123,255,.14), transparent 34%), linear-gradient(180deg,#fff 0%,#f8fbff 100%);
  box-shadow: 0 20px 60px rgba(15,23,42,.07);
}
.pgpoem-kicker {
  display:inline-block; margin-bottom:12px; padding:8px 14px; border-radius:999px;
  background:#eaf4ff; color:#0a66c2; font-weight:900; font-size:13px;
}
.pgpoem-hero h1 { margin:0 0 12px; color:#0f172a; font-size:clamp(2rem,5vw,3.6rem); line-height:1.06; letter-spacing:-.045em; }
.pgpoem-hero p { max-width:760px; margin:0 auto 18px; color:#475569; line-height:1.8; font-size:1.05rem; }
.pgpoem-badges { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; }
.pgpoem-badges span { padding:8px 11px; border-radius:999px; background:#fff; border:1px solid #e6edf5; color:#334155; font-size:.9rem; font-weight:800; }
.pgpoem-panel, .pgpoem-result-card {
  margin-top:22px; padding:26px; border:1px solid #e6edf5; border-radius:28px; background:#fff;
  box-shadow:0 18px 45px rgba(15,23,42,.06);
}
.pgpoem-field { margin-bottom:18px; }
.pgpoem-field label { display:block; margin-bottom:8px; color:#0f172a; font-weight:900; }
.pgpoem-field label span { color:#64748b; font-weight:700; }
.pgpoem-label-row { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.pgpoem-actions-small { display:flex; gap:8px; }
.pgpoem-actions-small button, .pgpoem-presets button, .pgpoem-secondary, .pgpoem-copy, .pgpoem-download, .pgpoem-new {
  border:1px solid #dbe7f5; background:#fff; color:#0f172a; border-radius:12px; padding:10px 12px; font-weight:800; cursor:pointer;
}
.pgpoem textarea, .pgpoem input, .pgpoem select {
  width:100%; border:1px solid #dbe7f5; border-radius:16px; padding:14px 15px; color:#0f172a; background:#fff; font:inherit;
  outline:none; transition:border-color .2s ease, box-shadow .2s ease;
}
.pgpoem textarea:focus, .pgpoem input:focus, .pgpoem select:focus { border-color:#60a5fa; box-shadow:0 0 0 4px rgba(96,165,250,.15); }
.pgpoem-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:12px; }
.pgpoem-stats span { padding:11px; border-radius:14px; background:#f8fafc; color:#64748b; text-align:center; font-size:.9rem; font-weight:800; }
.pgpoem-stats strong { display:block; color:#0f172a; font-size:1.05rem; }
.pgpoem-grid-form { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.pgpoem-grid-form--two { grid-template-columns:repeat(2,1fr); }
.pgpoem-presets { display:flex; flex-wrap:wrap; gap:9px; margin:6px 0 20px; }
.pgpoem-main-actions { display:flex; gap:12px; flex-wrap:wrap; }
.pgpoem-primary {
  border:0; border-radius:15px; padding:14px 20px; background:linear-gradient(135deg,#007bff 0%,#0056d2 100%);
  color:#fff; font-weight:900; cursor:pointer; box-shadow:0 14px 28px rgba(0,91,210,.2);
}
.pgpoem-primary[disabled] { opacity:.7; cursor:not-allowed; }
.pgpoem-result-card { overflow:hidden; }
.pgpoem-result-head { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; margin-bottom:18px; }
.pgpoem-result-head h2 { margin:0 0 8px; color:#0f172a; font-size:clamp(1.5rem,3vw,2.2rem); line-height:1.15; }
.pgpoem-result-head p { margin:0; color:#475569; line-height:1.7; }
.pgpoem-pill { display:inline-flex; padding:8px 12px; border-radius:999px; background:#eaf4ff; color:#0a66c2; font-weight:900; white-space:nowrap; }
.pgpoem-text {
  white-space:pre-wrap; padding:22px; border-radius:22px; background:linear-gradient(180deg,#f8fbff 0%,#fff 100%);
  border:1px solid #e6edf5; color:#172033; line-height:1.85; font-size:1.05rem;
}
.pgpoem-result-meta { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin:18px 0; }
.pgpoem-meta-box { padding:16px; border:1px solid #e6edf5; border-radius:18px; background:#fff; }
.pgpoem-meta-box strong { display:block; color:#0f172a; margin-bottom:6px; }
.pgpoem-meta-box span { color:#475569; line-height:1.6; }
.pgpoem-tips { margin:16px 0; padding:18px; border-radius:20px; background:#f8fafc; }
.pgpoem-tips h3 { margin:0 0 10px; color:#0f172a; }
.pgpoem-tips ul { margin:0; padding-left:20px; color:#334155; line-height:1.8; }
.pgpoem-hashtags { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 18px; }
.pgpoem-hashtags span { padding:8px 10px; border-radius:999px; background:#eef6ff; color:#2563eb; font-weight:800; }
.pgpoem-result-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.pgpoem-disclaimer { margin:18px 0 0; padding:14px 16px; border-radius:16px; background:#fff7ed; color:#9a3412; border:1px solid #fed7aa; line-height:1.6; }
.pgpoem-footer-cta { margin-top:18px; text-align:center; }
.pgpoem-footer-cta a { display:inline-block; padding:12px 16px; border-radius:999px; background:#0f172a; color:#fff!important; text-decoration:none; font-weight:900; }
.pgpoem-error { margin-top:18px; padding:16px; border-radius:16px; background:#fef2f2; color:#991b1b; border:1px solid #fecaca; }
@media(max-width:900px){ .pgpoem-grid-form, .pgpoem-grid-form--two, .pgpoem-result-meta{ grid-template-columns:1fr; } .pgpoem-stats{ grid-template-columns:repeat(2,1fr); } .pgpoem-result-head{ flex-direction:column; } }
@media(max-width:640px){ .pgpoem{ padding:12px; } .pgpoem-panel,.pgpoem-result-card{ padding:20px; } .pgpoem-stats{ grid-template-columns:1fr; } .pgpoem-main-actions button,.pgpoem-result-actions button{ width:100%; } .pgpoem-label-row{ align-items:flex-start; flex-direction:column; } }

/* v1.1.0 premium polish */
.pgpoem-hero {
  position: relative;
  overflow: hidden;
}
.pgpoem-hero:after {
  content:"";
  position:absolute;
  right:-80px;
  top:-80px;
  width:180px;
  height:180px;
  border-radius:50%;
  background:rgba(0,123,255,.10);
}
.pgpoem-panel {
  background: radial-gradient(circle at top right, rgba(0,123,255,.06), transparent 28%), #fff;
}
.pgpoem-grid-form--three {
  grid-template-columns: repeat(3, 1fr);
}
.pgpoem-result-kicker {
  display:inline-block;
  margin-bottom:10px;
  padding:7px 11px;
  border-radius:999px;
  background:#eef6ff;
  color:#0a66c2;
  font-size:12px;
  font-weight:900;
}
.pgpoem-result-meta--four {
  grid-template-columns: repeat(4, 1fr);
}
.pgpoem-why,
.pgpoem-alt-titles {
  margin:16px 0;
  padding:18px;
  border:1px solid #e6edf5;
  border-radius:20px;
  background:#fff;
}
.pgpoem-why h3,
.pgpoem-alt-titles h3 {
  margin:0 0 10px;
  color:#0f172a;
}
.pgpoem-why p {
  margin:0;
  color:#475569;
  line-height:1.75;
}
.pgpoem-alt-titles div {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.pgpoem-alt-titles span {
  display:inline-flex;
  padding:8px 10px;
  border-radius:999px;
  background:#f8fafc;
  color:#334155;
  font-weight:800;
}
.pgpoem-tips--performance {
  background:#f0f9ff;
}
.pgpoem-copy,
.pgpoem-download,
.pgpoem-new,
.pgpoem-secondary,
.pgpoem-actions-small button,
.pgpoem-presets button {
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.pgpoem-copy:hover,
.pgpoem-download:hover,
.pgpoem-new:hover,
.pgpoem-secondary:hover,
.pgpoem-actions-small button:hover,
.pgpoem-presets button:hover {
  transform: translateY(-1px);
  border-color:#bfdbfe;
  background:#f8fbff;
}
@media(max-width:1100px){
  .pgpoem-result-meta--four{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:900px){
  .pgpoem-grid-form--three{ grid-template-columns:1fr; }
  .pgpoem-result-meta--four{ grid-template-columns:1fr; }
}
