/* Puls Sportu UI - self-contained, responsive, theme-independent. */
.psp-widget,.psp-empty {box-sizing:border-box;font-family:inherit;color:#182631;line-height:1.45;max-width:100%;}
.psp-widget * {box-sizing:border-box}
.psp-widget {--psp-red:#e2605b;--psp-green:#19a876;--psp-ink:#162b38;--psp-muted:#647987;--psp-line:#dbe7e9;--psp-brand:#1d7d83;--psp-background:#f7faf9;}
.psp-gauge {background:#fff;border:1px solid var(--psp-line);border-radius:16px;padding:18px 19px 16px;margin:18px 0;box-shadow:0 5px 22px rgba(25,54,55,.055);width:100%;max-width:480px;min-width:0;text-align:center;}
.psp-gauge-top,.psp-feature-head,.psp-board-header {display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left}
.psp-eyebrow {font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--psp-brand);text-transform:uppercase}
.psp-grade {font-size:11px;background:#edf4f3;border:1px solid #d7e6e3;color:#416366;border-radius:6px;padding:2px 7px;font-weight:700}
.psp-gauge h3 {font-size:18px;font-weight:750;margin:10px 0 0!important;line-height:1.25;color:var(--psp-ink)}
.psp-gauge-svg {max-width:300px;margin:0 auto -4px}
.psp-gauge-svg svg {width:100%;height:auto;overflow:visible;display:block}
.psp-arc-base,.psp-arc {fill:none;stroke-width:15;stroke-linecap:round}
.psp-arc-base {stroke:#e9eeee}
.psp-arc-negative {stroke:var(--psp-red)}
.psp-arc-neutral {stroke:#a6afb3}
.psp-arc-positive {stroke:var(--psp-green)}
.psp-needle {transform-origin:120px 124px;transform:rotate(var(--psp-angle));transition:transform 1.15s cubic-bezier(.12,.83,.26,1);}
.psp-needle line {stroke:#173746;stroke-width:3;stroke-linecap:round}
.psp-needle circle {fill:#173746;stroke:#fff;stroke-width:2}
.psp-gauge.psp-pre-animate .psp-needle {transform:rotate(-90deg)}
.psp-dial-number {font-size:29px;font-weight:800;fill:var(--psp-ink);font-variant-numeric:tabular-nums}
.psp-dial-side {font-size:11px;font-weight:700;fill:var(--psp-muted)}
.psp-gauge-verdict {font-size:14px;font-weight:750;line-height:1.3;color:var(--psp-ink);margin:-9px auto 9px}
.psp-gauge-meta {display:flex;flex-wrap:wrap;gap:5px 10px;align-items:center;justify-content:center;font-size:11px;color:var(--psp-muted);margin:9px 0}
.psp-gauge-meta span+span:before {content:'·';margin-right:9px;color:#b5c3c9}
.psp-updated {font-size:10px;color:var(--psp-muted);border-top:1px solid #edf1f1;padding-top:10px;margin-top:10px}
.psp-gauge-compact {max-width:none;margin:0;padding:16px 15px 12px;box-shadow:none}
.psp-gauge-compact h3 {font-size:16px}
.psp-gauge-compact .psp-gauge-svg {max-width:225px}
.psp-gauge-compact .psp-gauge-meta {font-size:10px}
.psp-feature,.psp-board {border:1px solid var(--psp-line);background:var(--psp-background);border-radius:20px;padding:24px;margin:20px 0;max-width:1040px}
.psp-feature-head {border-bottom:1px solid var(--psp-line);padding-bottom:15px;margin-bottom:18px}
.psp-feature-head h2,.psp-board-header h2 {font-size:clamp(21px,3vw,28px)!important;margin:2px 0 0!important;line-height:1.2;color:var(--psp-ink);font-weight:780}
.psp-quality,.psp-live-label {font-size:11px;padding:5px 8px;white-space:nowrap;border-radius:6px;color:#436467;background:#eaf2f0;font-weight:650}
.psp-feature-grid {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:15px;align-items:stretch}
.psp-feature-grid .psp-gauge {height:100%}
.psp-feature-side {display:flex;flex-direction:column;gap:14px;min-width:0}
.psp-feature-side .psp-panel {flex:1}
.psp-analysis-grid {display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}
.psp-panel {background:#fff;border:1px solid var(--psp-line);border-radius:14px;padding:20px;margin:17px 0;min-width:0;max-width:800px}
.psp-panel.psp-nested {margin:0;max-width:none;box-shadow:none}
.psp-feature>.psp-panel.psp-nested {margin-top:15px}
.psp-panel h3 {font-size:16px!important;color:var(--psp-ink);font-weight:750;margin:0 0 5px!important}
.psp-panel-desc {font-size:12px;color:var(--psp-muted);margin:0 0 17px!important}
.psp-no-data {color:var(--psp-muted);font-size:12px;padding:16px 0;margin:0!important}
.psp-timeline {height:145px;display:flex;align-items:flex-end;gap:3px;padding:10px 0 0;border-bottom:1px solid var(--psp-line)}
.psp-bar {background:linear-gradient(0deg,#2d929a,#90d2d0);flex:1;min-width:2px;height:var(--psp-height);border-radius:3px 3px 0 0;transition:opacity .15s}
.psp-bar:hover {opacity:.65}
.psp-timeline-labels {display:flex;justify-content:space-between;gap:8px;margin-top:9px;color:var(--psp-muted);font-size:10px}
.psp-responsibility {display:flex;flex-direction:column;gap:13px}
.psp-resp-head {display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px;font-size:12px}
.psp-resp-head strong {font-variant-numeric:tabular-nums;color:var(--psp-ink)}
.psp-resp-track {height:9px;border-radius:99px;background:#e9eff0;overflow:hidden}
.psp-resp-track span {height:100%;display:block;border-radius:99px;background:linear-gradient(90deg,#3a9da4,#1a777f)}
.psp-method-note,.psp-footer-note {font-size:11px;color:var(--psp-muted);line-height:1.5;margin:13px 0 0!important}
.psp-megaphone-row {display:grid;grid-template-columns:45px 1fr 43px;align-items:center;gap:9px;font-size:12px;margin:10px 0}
.psp-megaphone-row strong {text-align:right;font-variant-numeric:tabular-nums}
.psp-megaphone-row .psp-resp-track span {background:linear-gradient(90deg,#e9a879,#d77d4d)}
.psp-turning {display:flex;align-items:flex-start;gap:12px;font-size:13px}
.psp-turning-icon {display:flex;align-items:center;justify-content:center;flex:0 0 36px;height:36px;background:#e7f4ee;color:#168260;border-radius:10px;font-size:24px;font-weight:600}
.psp-muted {display:block;font-size:11px;color:var(--psp-muted);margin-top:3px}
.psp-narrative {display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid #edf2f2;font-size:13px}
.psp-narrative:last-child {border-bottom:0}
.psp-narrative-score {font-variant-numeric:tabular-nums;color:var(--psp-brand)}
.psp-board-header {border-bottom:1px solid var(--psp-line);padding-bottom:15px;margin-bottom:16px}
.psp-board-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.psp-board-grid .psp-gauge {border-radius:13px}
.psp-empty {padding:13px 16px;background:#f5f8f7;border:1px solid #dfeae8;border-radius:10px;margin:10px 0;color:#557076;font-size:13px}
.psp-draft-note {font-size:12px;font-weight:750;color:#8a551a;background:#fff4dd;border:1px solid #efdcaf;border-radius:8px;padding:8px 10px;margin-bottom:13px}
@media(max-width:720px){.psp-feature-grid,.psp-analysis-grid{grid-template-columns:1fr}.psp-board-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.psp-feature,.psp-board{padding:13px;border-radius:14px}.psp-feature-head{align-items:flex-start}.psp-gauge{padding:14px}.psp-gauge-compact{padding:10px 8px}.psp-gauge-compact .psp-eyebrow{font-size:8px}.psp-gauge-compact h3{font-size:13px}.psp-gauge-compact .psp-gauge-meta{gap:2px 5px}.psp-gauge-compact .psp-gauge-meta span+span:before{margin-right:5px}.psp-gauge-compact .psp-gauge-verdict{font-size:12px}.psp-gauge-compact .psp-updated{font-size:9px}}
@media(max-width:370px){.psp-board-grid{grid-template-columns:1fr}.psp-gauge-compact .psp-gauge-svg{max-width:270px}}
@media(prefers-reduced-motion:reduce){.psp-needle,.psp-bar{transition:none!important}}
