/* Celebrissio's pasek and footer on every page that draws them: the Flutter shell
   (web/index.html) and the pages nbf-service renders itself (/cennik, its 404 page, /admin).
   Loaded after pattern/pasek_master.css (as delivered); beyond the page's colour scheme,
   which follows the pasek's theme, nothing here styles the page around the pasek, so the back
   office keeps its own layout.
   - Manrope, Ubuntu and Space Mono come from this host, not Google Fonts (fontsource 5.3.0
     woff2, latin and latin-ext, Manrope also cyrillic for UK and RU; licences in kroje/);
   - the logo: the sygnet, then wordmark A „CELEBRISSIO”. */

@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-display: swap;
  font-weight: 200 800;
  src: url(kroje/manrope-latin-ext-wght-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-display: swap;
  font-weight: 200 800;
  src: url(kroje/manrope-latin-wght-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-display: swap;
  font-weight: 200 800;
  src: url(kroje/manrope-cyrillic-wght-normal.woff2) format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
/* The EU mark's text (Annex IX, 1.3). */
@font-face {
  font-family: 'Ubuntu';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(kroje/ubuntu-latin-ext-700-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Ubuntu';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(kroje/ubuntu-latin-700-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
/* Group headings in the menu and the settings window (weight 600, drawn with 700). */
@font-face {
  font-family: 'Space Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(kroje/space-mono-latin-ext-700-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Space Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(kroje/space-mono-latin-700-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root { color-scheme: light; }
html[data-theme="dark"] { color-scheme: dark; }

/* The logo (Jacek 21.10.2026, P1-10): wordmark A beside the sygnet, the _dark file in the
   dark theme and _light in the light one (pasek_master.css switches pm-img-dark and
   pm-img-light), 16 px high, 14 px on the compact pasek. The sygnet as
   celebrissio_strona_v1.4.css sizes it, for pages that do not load that file. */
.pm-logo .cb-fav { height: 34px; width: 34px; margin-right: 9px; }
.pm-logo img.cb-wordmark { height: 16px; }
@media (max-width: 1199.98px) {
  .pm-logo .cb-fav { height: 30px; width: 30px; }
  .pm-logo img.cb-wordmark { height: 14px; }
}

/* On touch a tapped item keeps :hover, which would leave its tip over the page. */
@media (hover: none) {
  .pm-ib[data-tip]:hover:not(:focus-visible)::after { display: none; }
}

/* The EU window: the master sizes it min(720px, 100%) and adds its 48 px of padding, so on a
   phone it is wider than the screen and the window scrolls sideways. The same 768 px on a
   computer, the padding counted inside. */
.pm-eudlg { box-sizing: border-box; width: min(768px, 100%); }

/* The menu: the master gives each item width 100% and 8 px of padding on top of it, so on a
   phone the open menu scrolls 8 px sideways. The padding counted inside. */
.pm-drawer .pm-it { box-sizing: border-box; }

/* The open menu: the master caps it at 100vh less the pasek with its padding added on top,
   and on a phone 100vh reaches under the browser's own toolbar, so its last row, the
   languages, came into view only with a hard drag, if at all. The height actually visible
   instead, the padding counted inside, the scroll kept inside the menu. The settings
   windows likewise scroll inside once they are taller than the window (48 px: their 6 px
   offset, a 12 px margin, 28 px of padding and the border). */
.pm-drawer {
  box-sizing: border-box;
  max-height: calc(100vh - var(--pm-h));
  max-height: calc(100dvh - var(--pm-h));
  padding-bottom: calc(18px + env(safe-area-inset-bottom, 0px));
  overscroll-behavior: contain;
}
.pm-pop {
  max-height: calc(100vh - var(--pm-h) - 48px);
  max-height: calc(100dvh - var(--pm-h) - 48px);
  overflow-y: auto;
  overscroll-behavior: contain;
}

/* The pasek's text size, 115 and 130 % (report 27.10.2026, row 14). The master sets
   html[data-fs] and with it the root size, but gives its own texts in px, so only the app
   grew. Here the texts of the menu, the settings windows, the tips, the skip link and the EU
   window grow with it, each from the master's own size; the bar, its icons, the logo and the
   EU mark keep theirs. At 100 % the master removes the attribute and none of this applies. */
html[data-fs="115"] { --celebrissio-fs: 1.15; }
html[data-fs="130"] { --celebrissio-fs: 1.3; }
html[data-fs] .pm-drawer h4,
html[data-fs] .pm-pop h4 { font-size: calc(11px * var(--celebrissio-fs, 1)); }
html[data-fs] .pm-drawer .pm-nm { font-size: calc(15px * var(--celebrissio-fs, 1)); }
html[data-fs] .pm-drawer .pm-ds,
html[data-fs] .pm-drawer .pm-row button,
html[data-fs] .pm-pop button,
html[data-fs] .pm-eudlg .pm-lk { font-size: calc(12.5px * var(--celebrissio-fs, 1)); }
html[data-fs] .pm-drawer .pm-hello,
html[data-fs] .pm-eudlg p,
html[data-fs] .pm-eudlg .pm-kv { font-size: calc(13.5px * var(--celebrissio-fs, 1)); }
html[data-fs] .pm-pop { font-size: calc(13px * var(--celebrissio-fs, 1)); }
html[data-fs] .pm-ib[data-tip]:hover::after,
html[data-fs] .pm-ib[data-tip]:focus-visible::after { font-size: calc(12px * var(--celebrissio-fs, 1)); }
html[data-fs] .pm-skip { font-size: calc(14px * var(--celebrissio-fs, 1)); }
html[data-fs] .pm-eudlg h3 { font-size: calc(17px * var(--celebrissio-fs, 1)); }
