/**
 * PinMeOut free audit.
 *
 * Reads the theme's custom properties where they exist, with fallbacks so the
 * tool still looks right if the plugin is ever used under another theme.
 * Logical properties only -- this has to work in RTL.
 */

.pmoa{
  --pmoa-bg:var(--bg,#fff);
  --pmoa-surface:var(--surface,#F8FAFC);
  --pmoa-text:var(--text,#0F172A);
  --pmoa-muted:var(--muted,#64748B);
  --pmoa-border:var(--border,#E2E8F0);
  --pmoa-primary:var(--primary,#2563EB);
  --pmoa-success:var(--success,#16A34A);
  --pmoa-warning:var(--warning,#D97706);
  --pmoa-danger:var(--danger,#DC2626);
  --pmoa-radius:var(--radius,14px);
  --pmoa-radius-sm:var(--radius-sm,10px);
  margin-block:24px;
}

/* ------------------------------------------------------------------ Form */
.pmoa__form{display:flex;gap:10px;flex-wrap:wrap}
.pmoa__input{
  flex:1 1 280px;min-width:0;font:inherit;color:var(--pmoa-text);
  padding:14px 16px;border:1px solid var(--pmoa-border);
  border-radius:var(--pmoa-radius-sm);background:#fff;
}
.pmoa__input:focus{
  border-color:var(--pmoa-primary);outline:none;
  box-shadow:0 0 0 3px rgba(37,99,235,.15);
}
.pmoa__submit{
  font:inherit;font-weight:600;cursor:pointer;
  padding:14px 24px;border:1px solid transparent;border-radius:var(--pmoa-radius-sm);
  background:var(--pmoa-primary);color:#fff;
}
.pmoa__submit:hover{background:var(--primary-hover,#1D4ED8)}
.pmoa__submit[disabled]{opacity:.6;cursor:progress}
.pmoa__hint{margin:10px 0 0;font-size:.86rem;color:var(--pmoa-muted)}

/* ---------------------------------------------------------------- Status */
.pmoa__status{margin-top:18px}
.pmoa__running{
  display:flex;align-items:center;gap:10px;margin:0;
  font-size:.94rem;color:var(--pmoa-muted);
}
.pmoa__running::before{
  content:"";width:14px;height:14px;flex:none;border-radius:50%;
  border:2px solid var(--pmoa-border);border-top-color:var(--pmoa-primary);
  animation:pmoa-spin .8s linear infinite;
}
@keyframes pmoa-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){ .pmoa__running::before{animation:none} }
.pmoa-error{
  margin:0;padding:14px 16px;border-radius:var(--pmoa-radius-sm);
  background:#FEF2F2;border:1px solid #FECACA;color:#991B1B;font-size:.94rem;
}

/* --------------------------------------------------------------- Results */
.pmoa__results{margin-top:26px}
.pmoa__results:focus{outline:none}

.pmoa-summary{
  display:flex;gap:28px;align-items:center;flex-wrap:wrap;
  background:var(--pmoa-surface);border:1px solid var(--pmoa-border);
  border-radius:var(--pmoa-radius);padding:24px;
}
.pmoa-summary__meta{flex:1 1 260px;min-width:0}
.pmoa-summary__url{margin:0 0 10px;font-size:.92rem;overflow-wrap:anywhere}

.pmoa-ring{position:relative;width:118px;height:118px;flex:none}
.pmoa-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.pmoa-ring__base{stroke:var(--pmoa-border)}
.pmoa-ring__arc{stroke:var(--pmoa-primary)}
.pmoa-ring__num{
  position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;line-height:1.1;
}
.pmoa-ring__num strong{font-size:2rem;font-weight:700}
.pmoa-ring__num span{font-size:.78rem;color:var(--pmoa-muted)}

.pmoa-counts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}

.pmoa-cats{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pmoa-cats li{display:flex;align-items:center;gap:12px;font-size:.88rem}
.pmoa-cats__label{flex:0 0 150px;color:var(--pmoa-muted)}
.pmoa-cats__bar{
  flex:1 1 auto;height:7px;border-radius:999px;
  background:var(--pmoa-border);overflow:hidden;
}
.pmoa-cats__fill{display:block;height:100%;background:var(--pmoa-success)}
.pmoa-cats__fill.is-mid{background:var(--pmoa-warning)}
.pmoa-cats__fill.is-low{background:var(--pmoa-danger)}
.pmoa-cats__val{flex:0 0 32px;text-align:end;font-weight:650;font-variant-numeric:tabular-nums}

/* -------------------------------------------------------------- Findings */
.pmoa-findings{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}
.pmoa-finding{
  background:#fff;border:1px solid var(--pmoa-border);
  border-radius:var(--pmoa-radius-sm);padding:16px 18px;
  border-inline-start:3px solid var(--pmoa-border);
}
.pmoa-finding--critical{border-inline-start-color:var(--pmoa-danger)}
.pmoa-finding--high{border-inline-start-color:var(--pmoa-warning)}
.pmoa-finding--medium{border-inline-start-color:#CBD5E1}
.pmoa-finding--ok{border-inline-start-color:var(--pmoa-success)}
.pmoa-finding__head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pmoa-finding__title{font-weight:640}
.pmoa-finding__detail{margin:8px 0 0;font-size:.93rem;color:var(--pmoa-muted)}
.pmoa-finding__evidence{margin:8px 0 0;font-size:.84rem;color:var(--pmoa-muted);overflow-wrap:anywhere}
.pmoa-finding__evidence-label{font-weight:650}
.pmoa-finding code{
  background:var(--pmoa-surface);padding:.1em .4em;border-radius:5px;
  font-size:.92em;unicode-bidi:isolate;
}

.pmoa-badge{
  display:inline-flex;align-items:center;
  font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  padding:3px 9px;border-radius:999px;border:1px solid transparent;white-space:nowrap;
}
.pmoa-badge--critical{background:#FEF2F2;color:var(--pmoa-danger);border-color:#FECACA}
.pmoa-badge--high{background:#FFF7ED;color:var(--pmoa-warning);border-color:#FED7AA}
.pmoa-badge--medium{background:#F1F5F9;color:#475569;border-color:#E2E8F0}
.pmoa-badge--low{background:#F8FAFC;color:#64748B;border-color:#E2E8F0}
.pmoa-badge--ok{background:#F0FDF4;color:var(--pmoa-success);border-color:#BBF7D0}
.pmoa-badge--info{background:#EFF6FF;color:var(--pmoa-primary);border-color:#BFDBFE}

.pmoa-note{margin:20px 0 0;font-size:.82rem;color:var(--pmoa-muted)}

@media (max-width:560px){
  .pmoa__submit{width:100%}
  .pmoa-cats__label{flex-basis:110px}
}

/* ----------------------------------------------------------- Tool output */
.pmoa-tool__h{
  margin:22px 0 10px;font-size:.8rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--pmoa-muted);
}
.pmoa-rows{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.pmoa-rows li{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  padding:10px 14px;background:#fff;
  border:1px solid var(--pmoa-border);border-radius:var(--pmoa-radius-sm);
}
.pmoa-rows__name{font-weight:640;overflow-wrap:anywhere}
.pmoa-rows__meta{color:var(--pmoa-muted);font-size:.86rem;margin-inline-end:auto}

.pmoa-groups{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pmoa-group{
  padding:14px 16px;background:#fff;
  border:1px solid var(--pmoa-border);border-radius:var(--pmoa-radius-sm);
}
.pmoa-group__agents{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.pmoa-group__agents code{
  background:var(--pmoa-surface);padding:.15em .5em;border-radius:6px;
  font-size:.86rem;unicode-bidi:isolate;
}
.pmoa-group__rules{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.pmoa-group__rules li{display:flex;align-items:center;gap:10px;font-size:.88rem}
.pmoa-rule__type{
  flex:0 0 68px;font-size:.72rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.04em;
}
.pmoa-rule__type--disallow{color:var(--pmoa-danger)}
.pmoa-rule__type--allow{color:var(--pmoa-success)}

/* ------------------------------------------------------------------- RTL */
html[dir="rtl"] .pmoa-ring svg{transform:rotate(-90deg) scaleY(-1)}
html[dir="rtl"] .pmoa-badge,
html[dir="rtl"] .pmoa-tool__h,
html[dir="rtl"] .pmoa-rule__type{letter-spacing:normal}
