/* patrz app/docs/seo-library.md: biblioteka, dokladka do `landing.css` */
.lib .nav ul a[aria-current="page"]{color:var(--ink)}
.lib-main{display:flex;flex-direction:column;gap:clamp(36px,4.4vw,56px);padding:clamp(28px,4vw,56px) 0 clamp(48px,6vw,88px)}
.lib-crumbs ol{display:flex;flex-wrap:wrap;gap:6px 10px;list-style:none;margin:0;padding:0;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3)}
.lib-crumbs li+li::before{content:"/";margin-right:10px;color:var(--line2)}
.lib-crumbs a{border-bottom:1px solid transparent}
.lib-crumbs a:hover{color:var(--ink);border-bottom-color:var(--accent)}
.lib-crumbs [aria-current]{color:var(--ink2)}
/* dwie kolumny: tresc i przyklejony kalkulator; na telefonie jedna */
.lib-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,460px);grid-template-areas:"body side" "rel side";gap:clamp(36px,4.4vw,56px) clamp(40px,5vw,88px);align-items:start}
.lib-cols>.lib-article{grid-area:body}
.lib-cols>.lib-calc{grid-area:side;position:sticky;top:96px}
.lib-cols>.lib-related{grid-area:rel}
@media (max-width:1100px){.lib-cols{grid-template-columns:minmax(0,1fr);grid-template-areas:"body" "side" "rel"}.lib-cols>.lib-calc{position:static}}
.lib-calc .form{grid-template-columns:1fr;grid-template-areas:"date" "place" "hour" "name" "go";border-radius:22px;max-width:none}
.lib-calc .form input,.lib-calc .form .btn{border-radius:14px}
.lib-calc .reading-body{grid-template-columns:88px minmax(0,1fr);grid-template-areas:"sent sent" "mini facts";gap:16px}
.lib-calc .reading-mini{width:88px}
.lib-calc .reading-facts{gap:10px 16px;padding-top:0;border-top:0;align-self:center}
.lib-calc .reading-sentences li{font-size:16px}
.lib-article{display:flex;flex-direction:column;gap:clamp(30px,3.6vw,44px);max-width:78ch}
.lib-head h1{font-size:clamp(44px,6.4vw,96px);line-height:1.04;max-width:16ch;overflow-wrap:anywhere}
.lib-head .lead{margin:20px 0 0;font-size:clamp(17px,1.35vw,20px);line-height:1.6;color:var(--ink2);max-width:62ch}
.lib-sec{display:flex;flex-direction:column;gap:14px}
.lib-system{margin:18px 0 0;padding-top:22px;border-top:1px solid var(--line)}
.lib-sec h2{font-size:clamp(26px,2.8vw,38px)}
.lib-sec h3{font-size:clamp(19px,1.8vw,24px);margin-top:10px}
.lib-sec p{margin:0;font-size:16px;line-height:1.7;color:var(--ink2);max-width:70ch}
.lib-sec p+p{margin-top:2px}
.lib-ask{border-left:2px solid var(--accent);padding:4px 0 4px 18px;color:var(--ink)!important;font-style:italic}
.lib-note{margin:0;font-size:13px;color:var(--ink3);max-width:70ch}
.lib-links{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.lib-links a{display:inline-flex;padding:8px 14px;border-radius:999px;border:1px solid var(--line2);font-size:14px;color:var(--ink2);transition:border-color .2s,color .2s}
.lib-links a:hover,.lib-links a:focus-visible{color:var(--ink);border-color:var(--accent)}
.lib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.lib-grid a{display:block;border-radius:12px;padding:10px 14px}
.lib-grid-gates{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.lib-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:18px;counter-reset:none}
.lib-lines li{padding-left:18px;border-left:1px solid var(--line2)}
.lib-lines h3{margin:0 0 6px}
.lib-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 24px;margin:0;padding:20px 0;border-block:1px solid var(--line)}
.lib-facts dt{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);margin-bottom:6px}
.lib-facts dd{margin:0;font-family:var(--fd);font-size:clamp(20px,1.8vw,26px);line-height:1.1;text-transform:uppercase;color:var(--ink);overflow-wrap:anywhere}
.lib-pager{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:space-between;align-items:center;padding-top:22px;border-top:1px solid var(--line);font-size:14px;color:var(--ink2)}
.lib-pager a{border-bottom:1px solid var(--line2);padding:2px 0}
.lib-pager a:hover{color:var(--ink);border-bottom-color:var(--accent)}
.lib-pager .lib-next{margin-left:auto}
.sky-lead{font-size:17px!important;line-height:1.75!important}
.sky-lead .hl{color:var(--ink);border-bottom:1px solid var(--accent)}
.sky-lead strong{font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}
.sky-doc{margin-top:8px!important;padding:14px 16px;border-radius:14px;background:var(--field);border:1px solid var(--line)}
.sky-doc-l{display:block;margin-bottom:6px;color:var(--accent)}
/* kalkulator: ta sama forma co na stronie glownej, w karcie */
.lib-calc{padding:clamp(22px,3vw,36px);border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);scroll-margin-top:88px}
.lib-calc h2{font-size:clamp(28px,3.2vw,44px);max-width:22ch}
.lib-calc-lead{margin:12px 0 20px;color:var(--ink2);max-width:62ch}
.lib-calc .reading{max-width:none}
.lib-asked{margin:0 0 18px;padding:12px 16px;border-radius:12px;font-size:16px;color:var(--ink);background:var(--field);border-left:3px solid var(--line2)}
.lib-asked.is-yes{border-left-color:var(--accent)}
.lib-related{max-width:78ch}
.lib-foot{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:24px;padding:44px 0 88px;color:var(--ink3);font-size:13px;border-top:1px solid var(--line)}
.lib-foot b{display:block;color:var(--ink2);font-weight:500;margin-bottom:10px}
.lib-foot a{display:block;margin:6px 0}
.lib-foot a:hover{color:var(--ink)}
.lib-foot .disclose{margin:10px 0 0;max-width:46ch}
.lib-foot .attrib{grid-column:1/-1;margin:0;font-size:12px;line-height:1.6;max-width:72ch}
.lib-foot .wad-consent-open{display:block;margin:6px 0;color:var(--ink3);text-align:left}
.lib-foot .wad-consent-open:hover{color:var(--ink)}
.lib-foot .foot-langs a{display:inline;margin:0}
.lib-foot .year{margin:12px 0 0}
@media (max-width:900px){.lib-facts{grid-template-columns:1fr 1fr}}
@media (max-width:800px){.lib-foot{grid-template-columns:1fr 1fr}}
@media (max-width:640px){
  .lib-grid,.lib-grid-gates{grid-template-columns:1fr}
  .lib-facts{grid-template-columns:1fr}
  .lib-foot{grid-template-columns:1fr}
  .lib-calc{padding:18px}
}
