/* P9: strona „Aplikacja Granicy” (opis aplikacji klubowej). Telefon najpierw; bez obcych hostów; respektuje prefers-reduced-motion. */
.gpa{--gpa-green:var(--green,#009B3A);--gpa-deep:var(--deep,#063d1f);--gpa-blue:var(--blue,#00AEEF);--gpa-yellow:var(--yellow,#FFF200);--gpa-mut:var(--mut,#587063);--gpa-line:var(--line,#d4e2d8);--gpa-soft:#f2f8f4;font-size:16px;line-height:1.6;color:inherit;overflow-wrap:anywhere}
.gpa *,.gpa *::before,.gpa *::after{box-sizing:border-box}
.gpa h2{font-family:var(--hf,"Barlow Condensed","Arial Narrow",sans-serif);text-transform:uppercase;font-size:26px;line-height:1.1;letter-spacing:.015em;margin:0 0 14px;color:var(--gpa-deep);border-left:5px solid var(--gpa-green);padding-left:10px}
.gpa h3{font-family:var(--hf,"Barlow Condensed","Arial Narrow",sans-serif);text-transform:uppercase;font-size:21px;line-height:1.15;margin:0 0 8px;color:var(--gpa-deep)}
.gpa p{margin:0 0 12px}
.gpa :where(ul,ol){margin:0;padding:0;list-style:none}
.gpa a:focus-visible,.gpa button:focus-visible,.gpa summary:focus-visible{outline:3px solid var(--gpa-blue);outline-offset:2px}
.gpa-sec{margin:34px 0 0}
.gpa-note{font-size:13px;color:var(--gpa-mut);margin:12px 0 0}

/* ekran otwierający */
.gpa-hero{display:grid;gap:22px;align-items:center;margin:0}
.gpa-lead{font-size:18px;line-height:1.55;margin:0 0 14px}
.gpa-badges{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.gpa-badges li{background:var(--gpa-soft);border:1px solid var(--gpa-line);border-bottom:3px solid var(--gpa-green);padding:4px 12px;font-size:14px;font-weight:700;color:var(--gpa-deep)}
.gpa-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 10px}
.gpa-actions .gp-btn{margin:0;font-size:16px;padding:14px 24px}
.gpa-sub{font-size:14px;color:var(--gpa-mut);margin:0}
.gpa-hero-shot{display:flex;justify-content:center}
.gpa-hero-shot .gpa-phone{width:min(240px,68vw)}

/* ramka telefonu */
.gpa-phone{margin:0;display:block}
.gpa-bezel{background:#0b1f14;border-radius:30px;padding:8px;box-shadow:0 10px 26px rgba(6,40,22,.28),inset 0 0 0 2px #1d3a2a}
.gpa-bezel img{display:block;width:100%;height:auto;border-radius:22px;background:#0b1f14}
.gpa-phone figcaption{display:flex;flex-direction:column;gap:4px;padding:12px 4px 0}
.gpa-phone figcaption b{font-family:var(--hf,"Barlow Condensed","Arial Narrow",sans-serif);text-transform:uppercase;font-size:19px;line-height:1.1;color:var(--gpa-deep)}
.gpa-phone figcaption span{font-size:14px;line-height:1.45;color:var(--gpa-mut)}

/* role */
.gpa-tablist{display:flex;gap:4px;margin:0 0 -1px;padding:0}
.gpa-tab{flex:1 1 0;min-width:0;text-align:center;font:800 14px var(--hf,"Barlow Condensed","Arial Narrow",sans-serif);text-transform:uppercase;letter-spacing:.03em;padding:11px 4px;min-height:44px;background:var(--gpa-soft);color:var(--gpa-deep);border:1px solid var(--gpa-line);border-bottom:0;cursor:pointer}
.gpa-tab[aria-selected="true"]{background:var(--gpa-green);color:#fff;border-color:var(--gpa-green)}
.gpa-panel{background:#fff;border:1px solid var(--gpa-line);border-top:4px solid var(--gpa-green);padding:16px 16px 6px;margin:0 0 12px}
.gpa-panel h3{display:none}
.gpa-intro{font-weight:700;color:var(--gpa-deep)}
.gpa-check li{position:relative;padding:0 0 10px 26px}
.gpa-check li::before{content:"";position:absolute;left:3px;top:.42em;width:10px;height:6px;border-left:3px solid var(--gpa-green);border-bottom:3px solid var(--gpa-green);transform:rotate(-45deg)}
.gpa-common{background:var(--gpa-soft);border:1px solid var(--gpa-line);padding:14px 16px 4px;margin:14px 0 0}
.gpa-cols{display:grid;gap:0 22px}
/* bez skryptu wszystkie karty ról widać jedna pod drugą; z nim tylko wybraną */
.gpa-tabs:not(.is-js) .gpa-tablist{display:none}
.gpa-tabs:not(.is-js) .gpa-panel h3{display:block}
.gpa-tabs.is-js .gpa-panel[hidden]{display:none}

/* zrzuty: telefon = przesuwany rząd (karty 85 procent szerokości), większy ekran = siatka */
.gpa-rail{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 12px;margin:0 -4px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.gpa-feat{flex:0 0 min(78%,260px);scroll-snap-align:start}
.gpa-feat .gpa-phone{width:100%}

/* kroki */
.gpa-steps{counter-reset:gpa;display:grid;gap:10px;margin:0 0 18px}
.gpa-steps li{counter-increment:gpa;position:relative;display:flex;flex-direction:column;gap:3px;background:#fff;border:1px solid var(--gpa-line);border-left:5px solid var(--gpa-blue);padding:12px 14px 12px 54px;min-height:56px}
.gpa-steps li::before{content:counter(gpa);position:absolute;left:12px;top:10px;width:30px;height:30px;line-height:30px;text-align:center;background:var(--gpa-green);color:#fff;font:800 18px var(--hf,"Barlow Condensed","Arial Narrow",sans-serif)}
.gpa-steps b{font-family:var(--hf,"Barlow Condensed","Arial Narrow",sans-serif);text-transform:uppercase;font-size:19px;line-height:1.15;color:var(--gpa-deep)}
.gpa-steps span{font-size:15px;color:#2c4637}
.gpa-os{display:grid;gap:12px}
.gpa-card{background:var(--gpa-soft);border:1px solid var(--gpa-line);border-top:4px solid var(--gpa-yellow);padding:14px 16px 6px}
.gpa-num{counter-reset:gpan}
.gpa-num li{counter-increment:gpan;position:relative;padding:0 0 10px 30px}
.gpa-num li::before{content:counter(gpan) ".";position:absolute;left:0;top:0;font-weight:800;color:var(--gpa-green)}

/* bezpieczeństwo */
.gpa-sec-grid{display:grid;gap:10px}
.gpa-sec-grid li{display:flex;flex-direction:column;gap:3px;background:#fff;border:1px solid var(--gpa-line);border-bottom:4px solid var(--gpa-green);padding:12px 14px}
.gpa-sec-grid b{font-family:var(--hf,"Barlow Condensed","Arial Narrow",sans-serif);text-transform:uppercase;font-size:18px;line-height:1.15;color:var(--gpa-deep)}
.gpa-sec-grid span{font-size:15px;color:#2c4637}

/* pytania */
.gpa-faq details{background:#fff;border:1px solid var(--gpa-line);border-left:5px solid var(--gpa-green);margin:0 0 8px}
.gpa-faq summary{cursor:pointer;list-style:none;padding:13px 44px 13px 14px;font-weight:700;color:var(--gpa-deep);position:relative;min-height:48px}
.gpa-faq summary::-webkit-details-marker{display:none}
.gpa-faq summary::after{content:"+";position:absolute;right:14px;top:50%;transform:translateY(-50%);font:800 24px/1 var(--hf,"Barlow Condensed","Arial Narrow",sans-serif);color:var(--gpa-green)}
.gpa-faq details[open] summary::after{content:"\2212"}
.gpa-faq details[open] summary{border-bottom:1px solid var(--gpa-line)}
.gpa-faq details p{padding:12px 14px 2px;margin:0 0 10px;font-size:15px}

/* wejście, zaproszenie */
.gpa-enter .gpc-tiles{margin:10px 0}
.gpa-noinvite{background:var(--gpa-soft);border:1px solid var(--gpa-line);border-left:5px solid var(--gpa-yellow);padding:16px 16px 6px}
.gpa-noinvite h2{border-left:0;padding-left:0;font-size:22px}
.gpa-contact{font-weight:700}

@media (min-width:700px){
  .gpa-tab{flex:0 0 auto;font-size:15px;letter-spacing:.05em;padding:11px 18px}
  .gpa-hero{grid-template-columns:minmax(0,1fr) 230px;gap:28px}
  .gpa-hero-shot .gpa-phone{width:230px}
  .gpa-cols{grid-template-columns:1fr 1fr}
  .gpa-panel{padding:20px 22px 10px}
  .gpa-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 16px;overflow:visible;padding:4px 0 8px;margin:0}
  .gpa-feat{flex:none}
  .gpa-os{grid-template-columns:1fr 1fr}
  .gpa-sec-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:379px){.gpa h2{font-size:23px}.gpa-lead{font-size:17px}.gpa-actions .gp-btn{width:100%;text-align:center}}
@media (prefers-reduced-motion:no-preference){.gpa-rail{scroll-behavior:smooth}}
@media (prefers-reduced-motion:reduce){.gpa *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
