/*
Theme Name: ab2b Panel
Theme URI: https://austriab2b.at
Author: austriab2b.at
Description: Minimalistyczny, mobilny motyw panelu logowania i generatora kodów (wtyczka ab2b Key). Logo wgrasz w Wygląd → Dostosuj → Tożsamość witryny.
Version: 1.0.0
Requires at least: 5.8
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: ab2b-panel
*/

:root{
  --ab-bg:#f3f5f7;--ab-card:#fff;--ab-ink:#1c2733;--ab-mut:#5f6b7a;--ab-line:#d5dbe2;
  --ab-bar:#1c2733;--ab-bar-ink:#fff;--ab-accent:#1f6fb5;--ab-accent-ink:#fff;--ab-focus:#6aa9e8;
  --ab-ok:#12a37f;--ab-danger:#c0392b;--ab-hover:rgba(28,39,51,.07);--ab-radius:12px;
  --ab-shadow:0 1px 2px rgba(16,24,40,.05),0 8px 24px rgba(16,24,40,.04);
  color-scheme:light dark}
@media (prefers-color-scheme:dark){:root{
  --ab-bg:#0f151c;--ab-card:#18212b;--ab-ink:#e8edf2;--ab-mut:#9aa7b5;--ab-line:#2b3744;
  --ab-bar:#0a0f14;--ab-accent:#3d8fe0;--ab-focus:#6aa9e8;--ab-hover:rgba(255,255,255,.08);--ab-shadow:none}}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--ab-bg);color:var(--ab-ink);
  font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--ab-accent)}
img{max-width:100%;height:auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.screen-reader-text:focus{position:fixed!important;top:8px;left:8px;z-index:100;width:auto;height:auto;padding:.6rem 1rem;clip:auto;background:var(--ab-card);color:var(--ab-ink);border-radius:8px}

/* pasek górny */
.ab-bar{position:sticky;top:0;z-index:50;background:var(--ab-bar);color:var(--ab-bar-ink);padding-top:env(safe-area-inset-top)}
.ab-bar__in{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1000px;margin:0 auto;min-height:56px;padding:6px max(16px,env(safe-area-inset-right)) 6px max(16px,env(safe-area-inset-left))}
.ab-bar a{color:inherit;text-decoration:none}
.ab-logo{display:inline-flex;align-items:center;min-height:44px}
.ab-logo__img{display:block;max-height:34px;width:auto;max-width:180px}
.ab-logo__text{font-size:1.1rem;font-weight:700;letter-spacing:.01em}
.ab-bar__out{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border-radius:8px;font-size:.9rem}
.ab-bar__out:hover{background:rgba(255,255,255,.12)}
.ab-bar a:focus-visible{outline:3px solid var(--ab-focus);outline-offset:2px}

/* treść */
.ab-main,.ab2bkey-page{flex:1;width:100%;max-width:1000px;margin:0 auto;padding:24px 16px 40px}
@media (min-width:700px){.ab-main,.ab2bkey-page{padding-top:40px}}

/* karta ogólna (strony, logowanie) */
.ab-card{background:var(--ab-card);border:1px solid var(--ab-line);border-radius:var(--ab-radius);overflow:hidden;box-shadow:var(--ab-shadow);margin:0 0 16px}
.ab-card__bar{padding:.7rem 1rem;background:var(--ab-bar);color:var(--ab-bar-ink)}
.ab-card__bar h1,.ab-card__bar h2{margin:0;font-size:1rem;font-weight:600;line-height:1.3;color:inherit}
.ab-card__bar a{color:inherit;text-decoration:none}
.ab-card__body{padding:1.25rem 1rem}
.ab-card__body>:first-child{margin-top:0}.ab-card__body>:last-child{margin-bottom:0}
.ab-narrow{max-width:720px;margin-inline:auto}

/* widok logowania */
.ab-login{display:flex;flex-direction:column;align-items:center;max-width:400px;margin:0 auto;padding-top:4vh}
.ab-login .ab-card{width:100%}
.ab-card__bar--logo{display:flex;justify-content:center;padding:1.4rem 1rem}
.ab-card__bar--logo .ab-logo__img{max-height:56px;max-width:240px}
.ab-card__bar--logo .ab-logo__text{font-size:1.4rem;font-weight:700}
.ab-login__h{margin:0 0 .2rem;font-size:1.3rem;line-height:1.3}
.ab-login__sub{margin:0 0 1.25rem;color:var(--ab-mut);font-size:.95rem}
.ab-login form p{margin:0 0 .9rem}
.ab-login label{display:block;margin-bottom:.3rem;font-size:.85rem;color:var(--ab-mut)}
.ab-login input[type=text],.ab-login input[type=password]{width:100%;min-height:44px;padding:.55rem .75rem;border:1px solid var(--ab-line);border-radius:8px;background:var(--ab-card);color:var(--ab-ink);font:inherit}
.ab-login input:focus-visible{outline:3px solid var(--ab-focus);outline-offset:1px;border-color:transparent}
.ab-login .login-remember label{display:flex;gap:.5rem;align-items:center;margin:0;color:var(--ab-ink);font-size:.9rem}
.ab-login input[type=submit]{width:100%;min-height:46px;border:0;border-radius:8px;background:var(--ab-accent);color:var(--ab-accent-ink);font:600 1rem system-ui,sans-serif;cursor:pointer}
.ab-login input[type=submit]:hover{filter:brightness(1.08)}
.ab-login__more{margin:1rem 0 0;text-align:center;font-size:.9rem}
.ab-note{margin:0 0 1rem;padding:.65rem .8rem;border-radius:8px;font-size:.9rem;background:var(--ab-hover)}
.ab-note--err{color:var(--ab-danger);background:rgba(192,57,43,.1)}

/* stopka */
.ab-foot{padding:20px 16px calc(20px + env(safe-area-inset-bottom));text-align:center;font-size:.8rem;color:var(--ab-mut)}
.ab-foot a{color:inherit}
.ab-pager{margin:1rem 0;text-align:center}

/* treść wpisów */
.entry-content{overflow-wrap:anywhere}
.entry-content h2,.entry-content h3{line-height:1.3}
.alignwide,.alignfull{max-width:100%}
