/* Phoenix Boss client — only the self-hosted fonts, the boot screen and the Blazor error UI live here.
   Everything else comes from css/tokens.css and css/boss.css, copied from design-kit/ at build time (never edited here). */

/* IBM Plex Sans (Latin-1 subsets) and IBM Plex Sans Arabic 1.1.0, SIL Open Font License 1.1 (fonts/LICENSE.txt), self-hosted and
   pre-cached by the service worker (T-20260918-01 D3). The family names match the --font / --font-ar stacks of tokens.css. */
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/IBMPlexSans-Regular-Latin1.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/IBMPlexSans-Medium-Latin1.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/IBMPlexSans-SemiBold-Latin1.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans Arabic"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/IBMPlexSansArabic-Regular.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans Arabic"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/IBMPlexSansArabic-Medium.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans Arabic"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/IBMPlexSansArabic-SemiBold.woff2") format("woff2"); }

/* T-20261015-01 D8 (q) (4), the owner's yes: the mark ALONE sits in the centre, where Android's splash shows the icon; the bar and the text hang
   under it (before, the three were centred as one group, so the mark sat higher and the icon "moved" at the start) */
.boot { position: relative; min-height: 100dvh; display: grid; place-items: center; background: var(--bg); color: var(--t2); padding-inline: var(--sp-4); }
.boot-mark { width: 64px; height: 64px; }
.boot-bar { position: absolute; inset-block-start: calc(50% + 32px + var(--sp-4)); inset-inline: 0; margin-inline: auto; width: min(240px, 70vw); height: 6px; border-radius: var(--r-pill); background: var(--fill); overflow: hidden; }
.boot-fill { height: 100%; width: var(--blazor-load-percentage, 0%); background: var(--acc); transition: width var(--dur) var(--ease); }
.boot-text { position: absolute; inset-block-start: calc(50% + 32px + var(--sp-4) + 6px + var(--sp-4)); inset-inline: var(--sp-4); margin: 0; text-align: center; font-size: var(--fs-body); }
/* hidden by this id rule, not by the hidden attribute: the Blazor loader shows it with an inline display (result review r2 #3) */
#blazor-error-ui { display: none; position: fixed; inset-inline: var(--sp-4); bottom: calc(var(--sp-4) + var(--safe-b)); z-index: var(--z-toast); }
#blazor-error-ui .dismiss { cursor: pointer; margin-inline-start: auto; }
