/* Integracja z treściami i paskiem administracyjnym WordPressa. */
@layer components {
  .header-blog { display:none; font-size:13px; font-weight:650; }
  .site-header .button-small { white-space:nowrap; flex-shrink:0; }
  .brand-custom { width: 320px; min-width: 0; flex-shrink: 1; letter-spacing: normal; }
  .brand-custom .brand-logo { display: block; width: 100%; height: auto; }
  .site-footer .brand-custom { width: 280px; }
  .footer-links { flex-wrap:wrap; }
  .wp-content-main { padding-block: 64px; min-height: 55vh; }
  .wp-content-article { max-width: 800px; margin-bottom: 40px; }
  .wp-content-article h1, .wp-content-article h2 { margin-bottom: 24px; }
  .entry-content > * + * { margin-top: 24px; }
  .entry-content a { text-decoration: underline; text-underline-offset: 3px; }
  .entry-content img { max-width: 100%; height: auto; }
  .entry-content ul, .entry-content ol { padding-left: 1.5em; }
  .terms-page { padding-block:56px 72px; }
  .terms-heading { max-width:850px; margin-bottom:40px; }
  .terms-heading .eyebrow { margin-top:32px; }
  .terms-heading h1 { margin:14px 0 20px; font-size:clamp(32px,4vw,52px); line-height:1.15; }
  .terms-heading > p { color:var(--muted); }
  .terms-heading .terms-version { margin-top:16px; font-size:14px; }
  .terms-layout { display:grid; grid-template-columns:260px minmax(0,1fr); gap:40px; align-items:start; }
  .terms-nav { padding:24px; border:1px solid var(--line); border-radius:18px; background:var(--soft); }
  .terms-nav h2 { font-size:20px; margin-bottom:16px; }
  .terms-nav ol { padding-left:20px; }
  .terms-nav li + li { margin-top:12px; }
  .terms-nav a { text-decoration:underline; text-underline-offset:3px; }
  .terms-nav p { margin-top:24px; font-size:13px; color:var(--muted); }
  .terms-content { max-width:820px; font-size:16px; line-height:1.85; overflow-wrap:anywhere; }
  .terms-content section { scroll-margin-top:28px; }
  .terms-content section + section { margin-top:40px; padding-top:32px; border-top:1px solid var(--line); }
  .terms-content h2 { margin-bottom:20px; font-size:clamp(23px,2.7vw,30px); line-height:1.3; }
  .terms-content p + p, .terms-content li + li { margin-top:14px; }
  .terms-content ol, .terms-content ul { padding-left:24px; }
  .cookies-table { max-width:100%; overflow-x:auto; margin-block:24px; border:1px solid var(--line); border-radius:12px; }
  .cookies-table table { width:100%; min-width:580px; border-collapse:collapse; font-size:14px; line-height:1.65; }
  .cookies-table caption { text-align:left; padding:16px; font-weight:700; }
  .cookies-table th, .cookies-table td { padding:16px; text-align:left; vertical-align:top; border-top:1px solid var(--line); }
  .cookies-table thead { background:var(--surface, #f5f7f5); }
  .cookies-table tbody th { width:30%; font-weight:500; }
  .cookies-table code { overflow-wrap:anywhere; }
  .terms-content a { color:var(--green); text-decoration:underline; text-underline-offset:3px; }
  .terms-business { margin:24px 0; padding:22px; background:#fff; border:1px solid var(--line); border-radius:14px; }
  .terms-business > div { display:grid; grid-template-columns:80px minmax(0,1fr); gap:12px; }
  .terms-business > div + div { margin-top:14px; }
  .terms-business dt { color:var(--muted); }
  .terms-business dd { margin:0; }
  .admin-bar .skip-link:focus { top: 46px; }
  .admin-bar.exam-page .site-header { top: 32px; }
  @media (max-width: 782px) {
    .admin-bar .skip-link:focus { top: 58px; }
    .admin-bar.exam-page .site-header { top: 46px; }
  }
  @media (max-width: 600px) {
    .admin-bar.exam-page .site-header { top: 0; }
  }
}

@layer responsive {
  @media (max-width: 1100px) {
    .home-page .main-nav { display: none; }
    .header-blog { display:inline-flex; }
    .footer-inner { flex-wrap: wrap; }
  }
  @media (max-width: 640px) {
    .site-header .brand-custom { width: 205px; flex: 0 1 205px; }
    .site-header .header-actions { flex-shrink: 0; }
    .terms-page { padding-block:32px 40px; }
    .terms-layout { grid-template-columns:1fr; gap:28px; }
    .terms-heading { margin-bottom:28px; }
    .terms-business { padding:18px; }
    .terms-business > div { grid-template-columns:1fr; gap:0; }
  }
  @media (min-width:641px) and (max-width:900px) {
    .terms-layout { grid-template-columns:1fr; gap:32px; }
  }
}

@media print {
  .site-header, .site-footer, .terms-nav, .terms-heading > .text-link, .skip-link { display:none; }
  .terms-page { padding:0; }
  .terms-layout { display:block; }
  .terms-content { max-width:none; color:#000; }
}

@layer components {
  .account-entry { font-size:13px; font-weight:650; white-space:nowrap; }
}
@layer responsive {
  @media (max-width:740px) {
    .site-header .header-actions { gap:10px; }
    .site-header .brand-custom { width:150px; flex-basis:150px; }
    .site-header .button-small { padding:10px; font-size:12px; }
    .site-header .button-small .icon { display:none; }
    .account-entry { font-size:12px; }
  }
  @media (max-width:430px) {
    .site-header .header-inner { flex-wrap:wrap; row-gap:12px; }
    .site-header .header-actions { justify-content:space-between; width:100%; min-height:38px; }
  }
}
@layer responsive {
  @media (max-width:430px) {
    .site-header { height:auto; }
    .site-header .header-inner { height:auto; padding-block:14px; }
    .site-header .brand-custom { width:205px; flex-basis:205px; }
  }
}
@layer components {
  .account-entry { display:inline-flex; align-items:center; gap:8px; min-width:0; flex-shrink:1; }
  .account-entry .icon { width:20px; height:20px; }
  .account-identity { display:flex; flex-direction:column; line-height:1.35; min-width:0; }
  .account-identity>span { font-size:11px; color:var(--muted); font-weight:400; }
  .account-identity strong { font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:145px; }
}
@layer responsive {
  @media(max-width:1250px) {
    .home-page:has(.account-entry.is-signed-in) .main-nav { display:none; }
    .home-page:has(.account-entry.is-signed-in) .header-blog { display:inline-flex; }
  }
  @media(max-width:740px) {
    .account-identity strong { max-width:90px; font-size:12px; }
    .account-identity>span { font-size:10px; }
    .exam-header .header-actions { min-width:0; flex-shrink:1; }
    .exam-header .header-actions>.text-link { font-size:12px; }
  }
  @media(max-width:430px) {
    .exam-header .header-actions { gap:10px; }
    .exam-header .header-actions>.text-link { line-height:1.25; }
    .exam-header .header-actions>.text-link>.icon { display:none; }
    .exam-header .account-entry { gap:5px; }
    .exam-header .account-identity strong { max-width:74px; }
  }
}
