/* ============================================================
   csspopupflipbook.css — drop-in PDF flipbook widget styles
   Usage:
     <link rel="stylesheet" href="csspopupflipbook.css">
     <script src="jspopupflipbook.js"></script>
     <div class="cssflipbook" source="/path/to/file.pdf"></div>

   The page-turn itself is a realistic curved curl rendered by the
   St.PageFlip library (github.com/Nodlik/StPageFlip) onto a <canvas>
   it manages internally — this file does NOT draw the flip. It only
   styles the chrome around it: the loading state, prev/next arrows,
   page badge, title chip, close button, toolbar (auto-play/zoom/
   filmstrip toggle/download), the go-to-page filmstrip, and the
   fullscreen popup overlay. St.PageFlip injects its own small
   stylesheet (.stf__* classes) the first time it loads.

   Visual language: a light, low-poly faceted backdrop (inlined below
   as a data-URI SVG — no extra asset file to deploy) with dark glass
   chips floating on top (backdrop-filter blur + a translucent dark
   fill + a light hairline border + a soft shadow), so the white PDF
   pages read cleanly against the backdrop while the chrome still
   pops as a clearly separate, frosted layer above it.

   All styles are scoped under .cssflipbook — safe to include
   on any page without affecting other elements.
   ============================================================ */

.cssflipbook{
  --glass-bg: rgba(15,23,42,.55);
  --glass-bg-hover: rgba(37,99,235,.55);
  --glass-border: rgba(255,255,255,.35);
  --glass-blur: blur(14px) saturate(160%);
  --accent: #2563EB;
  --accent-strong: #60A5FA;
  --ink: #F1F5F9;

  position:relative;
  width:100%;
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMjAwIDgwMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgc2xpY2UiPgo8cmVjdCB3aWR0aD0iMTIwMCIgaGVpZ2h0PSI4MDAiIGZpbGw9IiNlY2VmZjIiLz4KPHBvbHlnb24gcG9pbnRzPSItMTIxLjE1MDIwNTc2MTMxNjg3LC05My45MjEwMzkwOTQ2NTAyMSAtMjQwLC0yMDAgMCwtMjAwIiBmaWxsPSIjZTllYmVlIi8+Cjxwb2x5Z29uIHBvaW50cz0iLTEyMS4xNTAyMDU3NjEzMTY4NywtOTMuOTIxMDM5MDk0NjUwMjEgMCwtMjAwIDAsMCIgZmlsbD0iI2UyZTVlOSIvPgo8cG9seWdvbiBwb2ludHM9Ii0xMjEuMTUwMjA1NzYxMzE2ODcsLTkzLjkyMTAzOTA5NDY1MDIxIDAsMCAtMjQwLDAiIGZpbGw9IiNkN2RjZTIiLz4KPHBvbHlnb24gcG9pbnRzPSItMTIxLjE1MDIwNTc2MTMxNjg3LC05My45MjEwMzkwOTQ2NTAyMSAtMjQwLDAgLTI0MCwtMjAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iNjkuNDI2OTU0NzMyNTEwMywtNjIuMTEyOTExNTIyNjMzNzQgMCwtMjAwIDI0MCwtMjAwIiBmaWxsPSIjZWVmMGYzIi8+Cjxwb2x5Z29uIHBvaW50cz0iNjkuNDI2OTU0NzMyNTEwMywtNjIuMTEyOTExNTIyNjMzNzQgMjQwLC0yMDAgMjQwLDAiIGZpbGw9IiNkZGUxZTYiLz4KPHBvbHlnb24gcG9pbnRzPSI2OS40MjY5NTQ3MzI1MTAzLC02Mi4xMTI5MTE1MjI2MzM3NCAyNDAsMCAwLDAiIGZpbGw9IiNlMmU1ZTkiLz4KPHBvbHlnb24gcG9pbnRzPSI2OS40MjY5NTQ3MzI1MTAzLC02Mi4xMTI5MTE1MjI2MzM3NCAwLDAgMCwtMjAwIiBmaWxsPSIjZDFkN2RlIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzc4Ljg5MzAwNDExNTIyNjM1LC0xNDIuMzQxODIwOTg3NjU0MzMgMjQwLC0yMDAgNDgwLC0yMDAiIGZpbGw9IiNkN2RjZTIiLz4KPHBvbHlnb24gcG9pbnRzPSIzNzguODkzMDA0MTE1MjI2MzUsLTE0Mi4zNDE4MjA5ODc2NTQzMyA0ODAsLTIwMCA0ODAsMCIgZmlsbD0iI2UyZTVlOSIvPgo8cG9seWdvbiBwb2ludHM9IjM3OC44OTMwMDQxMTUyMjYzNSwtMTQyLjM0MTgyMDk4NzY1NDMzIDQ4MCwwIDI0MCwwIiBmaWxsPSIjZWVmMGYzIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzc4Ljg5MzAwNDExNTIyNjM1LC0xNDIuMzQxODIwOTg3NjU0MzMgMjQwLDAgMjQwLC0yMDAiIGZpbGw9IiNlMmU1ZTkiLz4KPHBvbHlnb24gcG9pbnRzPSI2MDcuMjQ3OTQyMzg2ODMxMywtMTAxLjI3NDQzNDE1NjM3ODYgNDgwLC0yMDAgNzIwLC0yMDAiIGZpbGw9IiNlMmU1ZTkiLz4KPHBvbHlnb24gcG9pbnRzPSI2MDcuMjQ3OTQyMzg2ODMxMywtMTAxLjI3NDQzNDE1NjM3ODYgNzIwLC0yMDAgNzIwLDAiIGZpbGw9IiNlOWViZWUiLz4KPHBvbHlnb24gcG9pbnRzPSI2MDcuMjQ3OTQyMzg2ODMxMywtMTAxLjI3NDQzNDE1NjM3ODYgNzIwLDAgNDgwLDAiIGZpbGw9IiNlNWU4ZWMiLz4KPHBvbHlnb24gcG9pbnRzPSI2MDcuMjQ3OTQyMzg2ODMxMywtMTAxLjI3NDQzNDE1NjM3ODYgNDgwLDAgNDgwLC0yMDAiIGZpbGw9IiNlNWU4ZWMiLz4KPHBvbHlnb24gcG9pbnRzPSI3OTQuNDkxNzY5NTQ3MzI1MSwtMTA1LjU3NzQxNzY5NTQ3MzI2IDcyMCwtMjAwIDk2MCwtMjAwIiBmaWxsPSIjZTVlOGVjIi8+Cjxwb2x5Z29uIHBvaW50cz0iNzk0LjQ5MTc2OTU0NzMyNTEsLTEwNS41Nzc0MTc2OTU0NzMyNiA5NjAsLTIwMCA5NjAsMCIgZmlsbD0iI2UyZTVlOSIvPgo8cG9seWdvbiBwb2ludHM9Ijc5NC40OTE3Njk1NDczMjUxLC0xMDUuNTc3NDE3Njk1NDczMjYgOTYwLDAgNzIwLDAiIGZpbGw9IiNkZGUxZTYiLz4KPHBvbHlnb24gcG9pbnRzPSI3OTQuNDkxNzY5NTQ3MzI1MSwtMTA1LjU3NzQxNzY5NTQ3MzI2IDcyMCwwIDcyMCwtMjAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTEwMC42MjQ0ODU1OTY3MDgsLTEyMS45MTc0MzgyNzE2MDQ5NCA5NjAsLTIwMCAxMjAwLC0yMDAiIGZpbGw9IiNlMmU1ZTkiLz4KPHBvbHlnb24gcG9pbnRzPSIxMTAwLjYyNDQ4NTU5NjcwOCwtMTIxLjkxNzQzODI3MTYwNDk0IDEyMDAsLTIwMCAxMjAwLDAiIGZpbGw9IiNlNWU4ZWMiLz4KPHBvbHlnb24gcG9pbnRzPSIxMTAwLjYyNDQ4NTU5NjcwOCwtMTIxLjkxNzQzODI3MTYwNDk0IDEyMDAsMCA5NjAsMCIgZmlsbD0iI2Q3ZGNlMiIvPgo8cG9seWdvbiBwb2ludHM9IjExMDAuNjI0NDg1NTk2NzA4LC0xMjEuOTE3NDM4MjcxNjA0OTQgOTYwLDAgOTYwLC0yMDAiIGZpbGw9IiNlMmU1ZTkiLz4KPHBvbHlnb24gcG9pbnRzPSIxMzI1LjY0NjA5MDUzNDk3OTUsLTExNi45NjExNjI1NTE0NDAzMiAxMjAwLC0yMDAgMTQ0MCwtMjAwIiBmaWxsPSIjZTJlNWU5Ii8+Cjxwb2x5Z29uIHBvaW50cz0iMTMyNS42NDYwOTA1MzQ5Nzk1LC0xMTYuOTYxMTYyNTUxNDQwMzIgMTQ0MCwtMjAwIDE0NDAsMCIgZmlsbD0iI2QxZDdkZSIvPgo8cG9seWdvbiBwb2ludHM9IjEzMjUuNjQ2MDkwNTM0OTc5NSwtMTE2Ljk2MTE2MjU1MTQ0MDMyIDE0NDAsMCAxMjAwLDAiIGZpbGw9IiNkZGUxZTYiLz4KPHBvbHlnb24gcG9pbnRzPSIxMzI1LjY0NjA5MDUzNDk3OTUsLTExNi45NjExNjI1NTE0NDAzMiAxMjAwLDAgMTIwMCwtMjAwIiBmaWxsPSIjZGRlMWU2Ii8+Cjxwb2x5Z29uIHBvaW50cz0iLTE3MC40NDM0MTU2Mzc4NjAwOCwxNDIuNjI0NzQyNzk4MzUzOSAtMjQwLDAgMCwwIiBmaWxsPSIjZTJlNWU5Ii8+Cjxwb2x5Z29uIHBvaW50cz0iLTE3MC40NDM0MTU2Mzc4NjAwOCwxNDIuNjI0NzQyNzk4MzUzOSAwLDAgMCwyMDAiIGZpbGw9IiNlNWU4ZWMiLz4KPHBvbHlnb24gcG9pbnRzPSItMTcwLjQ0MzQxNTYzNzg2MDA4LDE0Mi42MjQ3NDI3OTgzNTM5IDAsMjAwIC0yNDAsMjAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iLTE3MC40NDM0MTU2Mzc4NjAwOCwxNDIuNjI0NzQyNzk4MzUzOSAtMjQwLDIwMCAtMjQwLDAiIGZpbGw9IiNlMmU1ZTkiLz4KPHBvbHlnb24gcG9pbnRzPSIxMzIuMzU1OTY3MDc4MTg5MjgsOTAuMTczNjExMTExMTExMTEgMCwwIDI0MCwwIiBmaWxsPSIjZDFkN2RlIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTMyLjM1NTk2NzA3ODE4OTI4LDkwLjE3MzYxMTExMTExMTExIDI0MCwwIDI0MCwyMDAiIGZpbGw9IiNlZWYwZjMiLz4KPHBvbHlnb24gcG9pbnRzPSIxMzIuMzU1OTY3MDc4MTg5MjgsOTAuMTczNjExMTExMTExMTEgMjQwLDIwMCAwLDIwMCIgZmlsbD0iI2U5ZWJlZSIvPgo8cG9seWdvbiBwb2ludHM9IjEzMi4zNTU5NjcwNzgxODkyOCw5MC4xNzM2MTExMTExMTExMSAwLDIwMCAwLDAiIGZpbGw9IiNlMmU1ZTkiLz4KPHBvbHlnb24gcG9pbnRzPSIzNTQuMDQ0MjM4NjgzMTI3NTYsNTkuMDE4Nzc1NzIwMTY0NjA1IDI0MCwwIDQ4MCwwIiBmaWxsPSIjZTllYmVlIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzU0LjA0NDIzODY4MzEyNzU2LDU5LjAxODc3NTcyMDE2NDYwNSA0ODAsMCA0ODAsMjAwIiBmaWxsPSIjZGRlMWU2Ii8+Cjxwb2x5Z29uIHBvaW50cz0iMzU0LjA0NDIzODY4MzEyNzU2LDU5LjAxODc3NTcyMDE2NDYwNSA0ODAsMjAwIDI0MCwyMDAiIGZpbGw9IiNlZWYwZjMiLz4KPHBvbHlnb24gcG9pbnRzPSIzNTQuMDQ0MjM4NjgzMTI3NTYsNTkuMDE4Nzc1NzIwMTY0NjA1IDI0MCwyMDAgMjQwLDAiIGZpbGw9IiNlZWYwZjMiLz4KPHBvbHlnb24gcG9pbnRzPSI2NTQuNjIxMzk5MTc2OTU0Nyw4Mi40OTM1Njk5NTg4NDc3MyA0ODAsMCA3MjAsMCIgZmlsbD0iI2Q3ZGNlMiIvPgo8cG9seWdvbiBwb2ludHM9IjY1NC42MjEzOTkxNzY5NTQ3LDgyLjQ5MzU2OTk1ODg0NzczIDcyMCwwIDcyMCwyMDAiIGZpbGw9IiNkN2RjZTIiLz4KPHBvbHlnb24gcG9pbnRzPSI2NTQuNjIxMzk5MTc2OTU0Nyw4Mi40OTM1Njk5NTg4NDc3MyA3MjAsMjAwIDQ4MCwyMDAiIGZpbGw9IiNkN2RjZTIiLz4KPHBvbHlnb24gcG9pbnRzPSI2NTQuNjIxMzk5MTc2OTU0Nyw4Mi40OTM1Njk5NTg4NDc3MyA0ODAsMjAwIDQ4MCwwIiBmaWxsPSIjZDFkN2RlIi8+Cjxwb2x5Z29uIHBvaW50cz0iODM0LjA4NzQ0ODU1OTY3MDcsOTMuOTMxMzI3MTYwNDkzODIgNzIwLDAgOTYwLDAiIGZpbGw9IiNlMmU1ZTkiLz4KPHBvbHlnb24gcG9pbnRzPSI4MzQuMDg3NDQ4NTU5NjcwNyw5My45MzEzMjcxNjA0OTM4MiA5NjAsMCA5NjAsMjAwIiBmaWxsPSIjZTJlNWU5Ii8+Cjxwb2x5Z29uIHBvaW50cz0iODM0LjA4NzQ0ODU1OTY3MDcsOTMuOTMxMzI3MTYwNDkzODIgOTYwLDIwMCA3MjAsMjAwIiBmaWxsPSIjZDFkN2RlIi8+Cjxwb2x5Z29uIHBvaW50cz0iODM0LjA4NzQ0ODU1OTY3MDcsOTMuOTMxMzI3MTYwNDkzODIgNzIwLDIwMCA3MjAsMCIgZmlsbD0iI2U5ZWJlZSIvPgo8cG9seWdvbiBwb2ludHM9IjEwNTIuNDQyMzg2ODMxMjc1OCwxMjYuNjY1MzgwNjU4NDM2MiA5NjAsMCAxMjAwLDAiIGZpbGw9IiNlNWU4ZWMiLz4KPHBvbHlnb24gcG9pbnRzPSIxMDUyLjQ0MjM4NjgzMTI3NTgsMTI2LjY2NTM4MDY1ODQzNjIgMTIwMCwwIDEyMDAsMjAwIiBmaWxsPSIjZTVlOGVjIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTA1Mi40NDIzODY4MzEyNzU4LDEyNi42NjUzODA2NTg0MzYyIDEyMDAsMjAwIDk2MCwyMDAiIGZpbGw9IiNlNWU4ZWMiLz4KPHBvbHlnb24gcG9pbnRzPSIxMDUyLjQ0MjM4NjgzMTI3NTgsMTI2LjY2NTM4MDY1ODQzNjIgOTYwLDIwMCA5NjAsMCIgZmlsbD0iI2U1ZThlYyIvPgo8cG9seWdvbiBwb2ludHM9IjEzNDkuNjg2MjEzOTkxNzY5NiwxMTQuMDI5MDYzNzg2MDA4MjQgMTIwMCwwIDE0NDAsMCIgZmlsbD0iI2Q3ZGNlMiIvPgo8cG9seWdvbiBwb2ludHM9IjEzNDkuNjg2MjEzOTkxNzY5NiwxMTQuMDI5MDYzNzg2MDA4MjQgMTQ0MCwwIDE0NDAsMjAwIiBmaWxsPSIjZTllYmVlIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTM0OS42ODYyMTM5OTE3Njk2LDExNC4wMjkwNjM3ODYwMDgyNCAxNDQwLDIwMCAxMjAwLDIwMCIgZmlsbD0iI2RkZTFlNiIvPgo8cG9seWdvbiBwb2ludHM9IjEzNDkuNjg2MjEzOTkxNzY5NiwxMTQuMDI5MDYzNzg2MDA4MjQgMTIwMCwyMDAgMTIwMCwwIiBmaWxsPSIjZGRlMWU2Ii8+Cjxwb2x5Z29uIHBvaW50cz0iLTE1NC4xODEwNjk5NTg4NDc3MywyODkuMzU1NzA5ODc2NTQzMiAtMjQwLDIwMCAwLDIwMCIgZmlsbD0iI2VlZjBmMyIvPgo8cG9seWdvbiBwb2ludHM9Ii0xNTQuMTgxMDY5OTU4ODQ3NzMsMjg5LjM1NTcwOTg3NjU0MzIgMCwyMDAgMCw0MDAiIGZpbGw9IiNkMWQ3ZGUiLz4KPHBvbHlnb24gcG9pbnRzPSItMTU0LjE4MTA2OTk1ODg0NzczLDI4OS4zNTU3MDk4NzY1NDMyIDAsNDAwIC0yNDAsNDAwIiBmaWxsPSIjZTJlNWU5Ii8+Cjxwb2x5Z29uIHBvaW50cz0iLTE1NC4xODEwNjk5NTg4NDc3MywyODkuMzU1NzA5ODc2NTQzMiAtMjQwLDQwMCAtMjQwLDIwMCIgZmlsbD0iI2U1ZThlYyIvPgo8cG9seWdvbiBwb2ludHM9IjYwLjg0MDUzNDk3OTQyMzg2NSwyODUuOTc4NjUyMjYzMzc0NSAwLDIwMCAyNDAsMjAwIiBmaWxsPSIjZWVmMGYzIi8+Cjxwb2x5Z29uIHBvaW50cz0iNjAuODQwNTM0OTc5NDIzODY1LDI4NS45Nzg2NTIyNjMzNzQ1IDI0MCwyMDAgMjQwLDQwMCIgZmlsbD0iI2Q3ZGNlMiIvPgo8cG9seWdvbiBwb2ludHM9IjYwLjg0MDUzNDk3OTQyMzg2NSwyODUuOTc4NjUyMjYzMzc0NSAyNDAsNDAwIDAsNDAwIiBmaWxsPSIjZTllYmVlIi8+Cjxwb2x5Z29uIHBvaW50cz0iNjAuODQwNTM0OTc5NDIzODY1LDI4NS45Nzg2NTIyNjMzNzQ1IDAsNDAwIDAsMjAwIiBmaWxsPSIjZTVlOGVjIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzU0Ljc1MTAyODgwNjU4NDQsMzM3LjIzMTIyNDI3OTgzNTQgMjQwLDIwMCA0ODAsMjAwIiBmaWxsPSIjZWVmMGYzIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzU0Ljc1MTAyODgwNjU4NDQsMzM3LjIzMTIyNDI3OTgzNTQgNDgwLDIwMCA0ODAsNDAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzU0Ljc1MTAyODgwNjU4NDQsMzM3LjIzMTIyNDI3OTgzNTQgNDgwLDQwMCAyNDAsNDAwIiBmaWxsPSIjZTllYmVlIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzU0Ljc1MTAyODgwNjU4NDQsMzM3LjIzMTIyNDI3OTgzNTQgMjQwLDQwMCAyNDAsMjAwIiBmaWxsPSIjZDFkN2RlIi8+Cjxwb2x5Z29uIHBvaW50cz0iNjQ3LjU1MDQxMTUyMjYzMzgsMjc2LjQ0Njc1OTI1OTI1OTI0IDQ4MCwyMDAgNzIwLDIwMCIgZmlsbD0iI2U5ZWJlZSIvPgo8cG9seWdvbiBwb2ludHM9IjY0Ny41NTA0MTE1MjI2MzM4LDI3Ni40NDY3NTkyNTkyNTkyNCA3MjAsMjAwIDcyMCw0MDAiIGZpbGw9IiNlMmU1ZTkiLz4KPHBvbHlnb24gcG9pbnRzPSI2NDcuNTUwNDExNTIyNjMzOCwyNzYuNDQ2NzU5MjU5MjU5MjQgNzIwLDQwMCA0ODAsNDAwIiBmaWxsPSIjZWVmMGYzIi8+Cjxwb2x5Z29uIHBvaW50cz0iNjQ3LjU1MDQxMTUyMjYzMzgsMjc2LjQ0Njc1OTI1OTI1OTI0IDQ4MCw0MDAgNDgwLDIwMCIgZmlsbD0iI2VlZjBmMyIvPgo8cG9seWdvbiBwb2ludHM9Ijg1OS4yMzg2ODMxMjc1NzIsMzM2Ljk1ODU5MDUzNDk3OTQgNzIwLDIwMCA5NjAsMjAwIiBmaWxsPSIjZTJlNWU5Ii8+Cjxwb2x5Z29uIHBvaW50cz0iODU5LjIzODY4MzEyNzU3MiwzMzYuOTU4NTkwNTM0OTc5NCA5NjAsMjAwIDk2MCw0MDAiIGZpbGw9IiNkMWQ3ZGUiLz4KPHBvbHlnb24gcG9pbnRzPSI4NTkuMjM4NjgzMTI3NTcyLDMzNi45NTg1OTA1MzQ5Nzk0IDk2MCw0MDAgNzIwLDQwMCIgZmlsbD0iI2UyZTVlOSIvPgo8cG9seWdvbiBwb2ludHM9Ijg1OS4yMzg2ODMxMjc1NzIsMzM2Ljk1ODU5MDUzNDk3OTQgNzIwLDQwMCA3MjAsMjAwIiBmaWxsPSIjZTllYmVlIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTAyOS44MTU4NDM2MjEzOTkyLDI1Mi4xMDAwNTE0NDAzMjkyMiA5NjAsMjAwIDEyMDAsMjAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTAyOS44MTU4NDM2MjEzOTkyLDI1Mi4xMDAwNTE0NDAzMjkyMiAxMjAwLDIwMCAxMjAwLDQwMCIgZmlsbD0iI2QxZDdkZSIvPgo8cG9seWdvbiBwb2ludHM9IjEwMjkuODE1ODQzNjIxMzk5MiwyNTIuMTAwMDUxNDQwMzI5MjIgMTIwMCw0MDAgOTYwLDQwMCIgZmlsbD0iI2QxZDdkZSIvPgo8cG9seWdvbiBwb2ludHM9IjEwMjkuODE1ODQzNjIxMzk5MiwyNTIuMTAwMDUxNDQwMzI5MjIgOTYwLDQwMCA5NjAsMjAwIiBmaWxsPSIjZTJlNWU5Ii8+Cjxwb2x5Z29uIHBvaW50cz0iMTMxOS4yODE4OTMwMDQxMTUzLDI1NS4yMDQ0NzUzMDg2NDE5NyAxMjAwLDIwMCAxNDQwLDIwMCIgZmlsbD0iI2UyZTVlOSIvPgo8cG9seWdvbiBwb2ludHM9IjEzMTkuMjgxODkzMDA0MTE1MywyNTUuMjA0NDc1MzA4NjQxOTcgMTQ0MCwyMDAgMTQ0MCw0MDAiIGZpbGw9IiNkN2RjZTIiLz4KPHBvbHlnb24gcG9pbnRzPSIxMzE5LjI4MTg5MzAwNDExNTMsMjU1LjIwNDQ3NTMwODY0MTk3IDE0NDAsNDAwIDEyMDAsNDAwIiBmaWxsPSIjZTllYmVlIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTMxOS4yODE4OTMwMDQxMTUzLDI1NS4yMDQ0NzUzMDg2NDE5NyAxMjAwLDQwMCAxMjAwLDIwMCIgZmlsbD0iI2RkZTFlNiIvPgo8cG9seWdvbiBwb2ludHM9Ii0xNTIuMzYzMTY4NzI0Mjc5ODMsNDc5LjYwNTE5NTQ3MzI1MSAtMjQwLDQwMCAwLDQwMCIgZmlsbD0iI2QxZDdkZSIvPgo8cG9seWdvbiBwb2ludHM9Ii0xNTIuMzYzMTY4NzI0Mjc5ODMsNDc5LjYwNTE5NTQ3MzI1MSAwLDQwMCAwLDYwMCIgZmlsbD0iI2U5ZWJlZSIvPgo8cG9seWdvbiBwb2ludHM9Ii0xNTIuMzYzMTY4NzI0Mjc5ODMsNDc5LjYwNTE5NTQ3MzI1MSAwLDYwMCAtMjQwLDYwMCIgZmlsbD0iI2UyZTVlOSIvPgo8cG9seWdvbiBwb2ludHM9Ii0xNTIuMzYzMTY4NzI0Mjc5ODMsNDc5LjYwNTE5NTQ3MzI1MSAtMjQwLDYwMCAtMjQwLDQwMCIgZmlsbD0iI2U5ZWJlZSIvPgo8cG9seWdvbiBwb2ludHM9IjEzNC44ODA2NTg0MzYyMTQsNDU4LjYzNTU0NTI2NzQ4OTcgMCw0MDAgMjQwLDQwMCIgZmlsbD0iI2RkZTFlNiIvPgo8cG9seWdvbiBwb2ludHM9IjEzNC44ODA2NTg0MzYyMTQsNDU4LjYzNTU0NTI2NzQ4OTcgMjQwLDQwMCAyNDAsNjAwIiBmaWxsPSIjZTllYmVlIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTM0Ljg4MDY1ODQzNjIxNCw0NTguNjM1NTQ1MjY3NDg5NyAyNDAsNjAwIDAsNjAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTM0Ljg4MDY1ODQzNjIxNCw0NTguNjM1NTQ1MjY3NDg5NyAwLDYwMCAwLDQwMCIgZmlsbD0iI2RkZTFlNiIvPgo8cG9seWdvbiBwb2ludHM9IjMwMS4wMTMzNzQ0ODU1OTY3LDUyNS42Mjg4NTgwMjQ2OTEzIDI0MCw0MDAgNDgwLDQwMCIgZmlsbD0iI2Q3ZGNlMiIvPgo8cG9seWdvbiBwb2ludHM9IjMwMS4wMTMzNzQ0ODU1OTY3LDUyNS42Mjg4NTgwMjQ2OTEzIDQ4MCw0MDAgNDgwLDYwMCIgZmlsbD0iI2QxZDdkZSIvPgo8cG9seWdvbiBwb2ludHM9IjMwMS4wMTMzNzQ0ODU1OTY3LDUyNS42Mjg4NTgwMjQ2OTEzIDQ4MCw2MDAgMjQwLDYwMCIgZmlsbD0iI2RkZTFlNiIvPgo8cG9seWdvbiBwb2ludHM9IjMwMS4wMTMzNzQ0ODU1OTY3LDUyNS42Mjg4NTgwMjQ2OTEzIDI0MCw2MDAgMjQwLDQwMCIgZmlsbD0iI2U1ZThlYyIvPgo8cG9seWdvbiBwb2ludHM9IjYyNi4wMzQ5Nzk0MjM4NjgzLDUxMy45MTg0NjcwNzgxODkzIDQ4MCw0MDAgNzIwLDQwMCIgZmlsbD0iI2UyZTVlOSIvPgo8cG9seWdvbiBwb2ludHM9IjYyNi4wMzQ5Nzk0MjM4NjgzLDUxMy45MTg0NjcwNzgxODkzIDcyMCw0MDAgNzIwLDYwMCIgZmlsbD0iI2RkZTFlNiIvPgo8cG9seWdvbiBwb2ludHM9IjYyNi4wMzQ5Nzk0MjM4NjgzLDUxMy45MTg0NjcwNzgxODkzIDcyMCw2MDAgNDgwLDYwMCIgZmlsbD0iI2U5ZWJlZSIvPgo8cG9seWdvbiBwb2ludHM9IjYyNi4wMzQ5Nzk0MjM4NjgzLDUxMy45MTg0NjcwNzgxODkzIDQ4MCw2MDAgNDgwLDQwMCIgZmlsbD0iI2U1ZThlYyIvPgo8cG9seWdvbiBwb2ludHM9Ijc4OS45NDU0NzMyNTEwMjg4LDQ1Ni44Mzc3MDU3NjEzMTY5IDcyMCw0MDAgOTYwLDQwMCIgZmlsbD0iI2UyZTVlOSIvPgo8cG9seWdvbiBwb2ludHM9Ijc4OS45NDU0NzMyNTEwMjg4LDQ1Ni44Mzc3MDU3NjEzMTY5IDk2MCw0MDAgOTYwLDYwMCIgZmlsbD0iI2RkZTFlNiIvPgo8cG9seWdvbiBwb2ludHM9Ijc4OS45NDU0NzMyNTEwMjg4LDQ1Ni44Mzc3MDU3NjEzMTY5IDk2MCw2MDAgNzIwLDYwMCIgZmlsbD0iI2U5ZWJlZSIvPgo8cG9seWdvbiBwb2ludHM9Ijc4OS45NDU0NzMyNTEwMjg4LDQ1Ni44Mzc3MDU3NjEzMTY5IDcyMCw2MDAgNzIwLDQwMCIgZmlsbD0iI2VlZjBmMyIvPgo8cG9seWdvbiBwb2ludHM9IjEwNzIuNzQ0ODU1OTY3MDc4MSw0ODcuNzE5OTA3NDA3NDA3NCA5NjAsNDAwIDEyMDAsNDAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTA3Mi43NDQ4NTU5NjcwNzgxLDQ4Ny43MTk5MDc0MDc0MDc0IDEyMDAsNDAwIDEyMDAsNjAwIiBmaWxsPSIjZTVlOGVjIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTA3Mi43NDQ4NTU5NjcwNzgxLDQ4Ny43MTk5MDc0MDc0MDc0IDEyMDAsNjAwIDk2MCw2MDAiIGZpbGw9IiNkN2RjZTIiLz4KPHBvbHlnb24gcG9pbnRzPSIxMDcyLjc0NDg1NTk2NzA3ODEsNDg3LjcxOTkwNzQwNzQwNzQgOTYwLDYwMCA5NjAsNDAwIiBmaWxsPSIjZGRlMWU2Ii8+Cjxwb2x5Z29uIHBvaW50cz0iMTI3NC40MzMxMjc1NzIwMTY1LDUzOS44OTg0MDUzNDk3OTQyIDEyMDAsNDAwIDE0NDAsNDAwIiBmaWxsPSIjZWVmMGYzIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTI3NC40MzMxMjc1NzIwMTY1LDUzOS44OTg0MDUzNDk3OTQyIDE0NDAsNDAwIDE0NDAsNjAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTI3NC40MzMxMjc1NzIwMTY1LDUzOS44OTg0MDUzNDk3OTQyIDE0NDAsNjAwIDEyMDAsNjAwIiBmaWxsPSIjZTVlOGVjIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTI3NC40MzMxMjc1NzIwMTY1LDUzOS44OTg0MDUzNDk3OTQyIDEyMDAsNjAwIDEyMDAsNDAwIiBmaWxsPSIjZWVmMGYzIi8+Cjxwb2x5Z29uIHBvaW50cz0iLTEyNC45ODk3MTE5MzQxNTYzOCw3NDYuNzA2NTMyOTIxODEwNyAtMjQwLDYwMCAwLDYwMCIgZmlsbD0iI2U1ZThlYyIvPgo8cG9seWdvbiBwb2ludHM9Ii0xMjQuOTg5NzExOTM0MTU2MzgsNzQ2LjcwNjUzMjkyMTgxMDcgMCw2MDAgMCw4MDAiIGZpbGw9IiNkZGUxZTYiLz4KPHBvbHlnb24gcG9pbnRzPSItMTI0Ljk4OTcxMTkzNDE1NjM4LDc0Ni43MDY1MzI5MjE4MTA3IDAsODAwIC0yNDAsODAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iLTEyNC45ODk3MTE5MzQxNTYzOCw3NDYuNzA2NTMyOTIxODEwNyAtMjQwLDgwMCAtMjQwLDYwMCIgZmlsbD0iI2VlZjBmMyIvPgo8cG9seWdvbiBwb2ludHM9IjE1NC40NzYzMzc0NDg1NTk2Niw3NDEuNDc3NjIzNDU2NzkwMSAwLDYwMCAyNDAsNjAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTU0LjQ3NjMzNzQ0ODU1OTY2LDc0MS40Nzc2MjM0NTY3OTAxIDI0MCw2MDAgMjQwLDgwMCIgZmlsbD0iI2U1ZThlYyIvPgo8cG9seWdvbiBwb2ludHM9IjE1NC40NzYzMzc0NDg1NTk2Niw3NDEuNDc3NjIzNDU2NzkwMSAyNDAsODAwIDAsODAwIiBmaWxsPSIjZWVmMGYzIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTU0LjQ3NjMzNzQ0ODU1OTY2LDc0MS40Nzc2MjM0NTY3OTAxIDAsODAwIDAsNjAwIiBmaWxsPSIjZDFkN2RlIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzUyLjgzMTI3NTcyMDE2NDYsNjU3LjU0NTAxMDI4ODA2NTkgMjQwLDYwMCA0ODAsNjAwIiBmaWxsPSIjZTVlOGVjIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzUyLjgzMTI3NTcyMDE2NDYsNjU3LjU0NTAxMDI4ODA2NTkgNDgwLDYwMCA0ODAsODAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzUyLjgzMTI3NTcyMDE2NDYsNjU3LjU0NTAxMDI4ODA2NTkgNDgwLDgwMCAyNDAsODAwIiBmaWxsPSIjZWVmMGYzIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzUyLjgzMTI3NTcyMDE2NDYsNjU3LjU0NTAxMDI4ODA2NTkgMjQwLDgwMCAyNDAsNjAwIiBmaWxsPSIjZGRlMWU2Ii8+Cjxwb2x5Z29uIHBvaW50cz0iNjMwLjA3NTEwMjg4MDY1ODQsNzI4LjI0MjAyNjc0ODk3MTIgNDgwLDYwMCA3MjAsNjAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iNjMwLjA3NTEwMjg4MDY1ODQsNzI4LjI0MjAyNjc0ODk3MTIgNzIwLDYwMCA3MjAsODAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iNjMwLjA3NTEwMjg4MDY1ODQsNzI4LjI0MjAyNjc0ODk3MTIgNzIwLDgwMCA0ODAsODAwIiBmaWxsPSIjZTVlOGVjIi8+Cjxwb2x5Z29uIHBvaW50cz0iNjMwLjA3NTEwMjg4MDY1ODQsNzI4LjI0MjAyNjc0ODk3MTIgNDgwLDgwMCA0ODAsNjAwIiBmaWxsPSIjZDFkN2RlIi8+Cjxwb2x5Z29uIHBvaW50cz0iNzg2LjIwNzgxODkzMDA0MTIsNjg2LjkwMjAwNjE3MjgzOTUgNzIwLDYwMCA5NjAsNjAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iNzg2LjIwNzgxODkzMDA0MTIsNjg2LjkwMjAwNjE3MjgzOTUgOTYwLDYwMCA5NjAsODAwIiBmaWxsPSIjZTVlOGVjIi8+Cjxwb2x5Z29uIHBvaW50cz0iNzg2LjIwNzgxODkzMDA0MTIsNjg2LjkwMjAwNjE3MjgzOTUgOTYwLDgwMCA3MjAsODAwIiBmaWxsPSIjZWVmMGYzIi8+Cjxwb2x5Z29uIHBvaW50cz0iNzg2LjIwNzgxODkzMDA0MTIsNjg2LjkwMjAwNjE3MjgzOTUgNzIwLDgwMCA3MjAsNjAwIiBmaWxsPSIjZTJlNWU5Ii8+Cjxwb2x5Z29uIHBvaW50cz0iMTEwMS4yMjk0MjM4NjgzMTI4LDY2Ni44NTgyODE4OTMwMDQxIDk2MCw2MDAgMTIwMCw2MDAiIGZpbGw9IiNlMmU1ZTkiLz4KPHBvbHlnb24gcG9pbnRzPSIxMTAxLjIyOTQyMzg2ODMxMjgsNjY2Ljg1ODI4MTg5MzAwNDEgMTIwMCw2MDAgMTIwMCw4MDAiIGZpbGw9IiNkN2RjZTIiLz4KPHBvbHlnb24gcG9pbnRzPSIxMTAxLjIyOTQyMzg2ODMxMjgsNjY2Ljg1ODI4MTg5MzAwNDEgMTIwMCw4MDAgOTYwLDgwMCIgZmlsbD0iI2RkZTFlNiIvPgo8cG9seWdvbiBwb2ludHM9IjExMDEuMjI5NDIzODY4MzEyOCw2NjYuODU4MjgxODkzMDA0MSA5NjAsODAwIDk2MCw2MDAiIGZpbGw9IiNlOWViZWUiLz4KPHBvbHlnb24gcG9pbnRzPSIxMzc1LjEzOTkxNzY5NTQ3MzMsNzAxLjQ0NDE4NzI0Mjc5ODMgMTIwMCw2MDAgMTQ0MCw2MDAiIGZpbGw9IiNlOWViZWUiLz4KPHBvbHlnb24gcG9pbnRzPSIxMzc1LjEzOTkxNzY5NTQ3MzMsNzAxLjQ0NDE4NzI0Mjc5ODMgMTQ0MCw2MDAgMTQ0MCw4MDAiIGZpbGw9IiNkZGUxZTYiLz4KPHBvbHlnb24gcG9pbnRzPSIxMzc1LjEzOTkxNzY5NTQ3MzMsNzAxLjQ0NDE4NzI0Mjc5ODMgMTQ0MCw4MDAgMTIwMCw4MDAiIGZpbGw9IiNlMmU1ZTkiLz4KPHBvbHlnb24gcG9pbnRzPSIxMzc1LjEzOTkxNzY5NTQ3MzMsNzAxLjQ0NDE4NzI0Mjc5ODMgMTIwMCw4MDAgMTIwMCw2MDAiIGZpbGw9IiNlZWYwZjMiLz4KPHBvbHlnb24gcG9pbnRzPSItMTUyLjA2MDY5OTU4ODQ3NzM1LDkyMy45OTMwNTU1NTU1NTU1IC0yNDAsODAwIDAsODAwIiBmaWxsPSIjZGRlMWU2Ii8+Cjxwb2x5Z29uIHBvaW50cz0iLTE1Mi4wNjA2OTk1ODg0NzczNSw5MjMuOTkzMDU1NTU1NTU1NSAwLDgwMCAwLDEwMDAiIGZpbGw9IiNlNWU4ZWMiLz4KPHBvbHlnb24gcG9pbnRzPSItMTUyLjA2MDY5OTU4ODQ3NzM1LDkyMy45OTMwNTU1NTU1NTU1IDAsMTAwMCAtMjQwLDEwMDAiIGZpbGw9IiNlZWYwZjMiLz4KPHBvbHlnb24gcG9pbnRzPSItMTUyLjA2MDY5OTU4ODQ3NzM1LDkyMy45OTMwNTU1NTU1NTU1IC0yNDAsMTAwMCAtMjQwLDgwMCIgZmlsbD0iI2RkZTFlNiIvPgo8cG9seWdvbiBwb2ludHM9IjE1OS42Mjc1NzIwMTY0NjA5LDg2Ny44MzgyMjAxNjQ2MDkxIDAsODAwIDI0MCw4MDAiIGZpbGw9IiNkZGUxZTYiLz4KPHBvbHlnb24gcG9pbnRzPSIxNTkuNjI3NTcyMDE2NDYwOSw4NjcuODM4MjIwMTY0NjA5MSAyNDAsODAwIDI0MCwxMDAwIiBmaWxsPSIjZGRlMWU2Ii8+Cjxwb2x5Z29uIHBvaW50cz0iMTU5LjYyNzU3MjAxNjQ2MDksODY3LjgzODIyMDE2NDYwOTEgMjQwLDEwMDAgMCwxMDAwIiBmaWxsPSIjZTVlOGVjIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTU5LjYyNzU3MjAxNjQ2MDksODY3LjgzODIyMDE2NDYwOTEgMCwxMDAwIDAsODAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iMzEwLjIwNDczMjUxMDI4ODA3LDg2Ni4zMTMwMTQ0MDMyOTIyIDI0MCw4MDAgNDgwLDgwMCIgZmlsbD0iI2Q3ZGNlMiIvPgo8cG9seWdvbiBwb2ludHM9IjMxMC4yMDQ3MzI1MTAyODgwNyw4NjYuMzEzMDE0NDAzMjkyMiA0ODAsODAwIDQ4MCwxMDAwIiBmaWxsPSIjZTJlNWU5Ii8+Cjxwb2x5Z29uIHBvaW50cz0iMzEwLjIwNDczMjUxMDI4ODA3LDg2Ni4zMTMwMTQ0MDMyOTIyIDQ4MCwxMDAwIDI0MCwxMDAwIiBmaWxsPSIjZGRlMWU2Ii8+Cjxwb2x5Z29uIHBvaW50cz0iMzEwLjIwNDczMjUxMDI4ODA3LDg2Ni4zMTMwMTQ0MDMyOTIyIDI0MCwxMDAwIDI0MCw4MDAiIGZpbGw9IiNkN2RjZTIiLz4KPHBvbHlnb24gcG9pbnRzPSI1NzkuNjcwNzgxODkzMDA0MSw4NTIuNzUwNzcxNjA0OTM4MiA0ODAsODAwIDcyMCw4MDAiIGZpbGw9IiNlOWViZWUiLz4KPHBvbHlnb24gcG9pbnRzPSI1NzkuNjcwNzgxODkzMDA0MSw4NTIuNzUwNzcxNjA0OTM4MiA3MjAsODAwIDcyMCwxMDAwIiBmaWxsPSIjZDFkN2RlIi8+Cjxwb2x5Z29uIHBvaW50cz0iNTc5LjY3MDc4MTg5MzAwNDEsODUyLjc1MDc3MTYwNDkzODIgNzIwLDEwMDAgNDgwLDEwMDAiIGZpbGw9IiNkN2RjZTIiLz4KPHBvbHlnb24gcG9pbnRzPSI1NzkuNjcwNzgxODkzMDA0MSw4NTIuNzUwNzcxNjA0OTM4MiA0ODAsMTAwMCA0ODAsODAwIiBmaWxsPSIjZDdkY2UyIi8+Cjxwb2x5Z29uIHBvaW50cz0iODg4LjAyNTcyMDE2NDYwOTEsODYwLjQ4NDgyNTEwMjg4MDcgNzIwLDgwMCA5NjAsODAwIiBmaWxsPSIjZGRlMWU2Ii8+Cjxwb2x5Z29uIHBvaW50cz0iODg4LjAyNTcyMDE2NDYwOTEsODYwLjQ4NDgyNTEwMjg4MDcgOTYwLDgwMCA5NjAsMTAwMCIgZmlsbD0iI2UyZTVlOSIvPgo8cG9seWdvbiBwb2ludHM9Ijg4OC4wMjU3MjAxNjQ2MDkxLDg2MC40ODQ4MjUxMDI4ODA3IDk2MCwxMDAwIDcyMCwxMDAwIiBmaWxsPSIjZGRlMWU2Ii8+Cjxwb2x5Z29uIHBvaW50cz0iODg4LjAyNTcyMDE2NDYwOTEsODYwLjQ4NDgyNTEwMjg4MDcgNzIwLDEwMDAgNzIwLDgwMCIgZmlsbD0iI2U5ZWJlZSIvPgo8cG9seWdvbiBwb2ludHM9IjEwMzUuMjY5NTQ3MzI1MTAyOCw5MjIuODQ4NTA4MjMwNDUyNyA5NjAsODAwIDEyMDAsODAwIiBmaWxsPSIjZDFkN2RlIi8+Cjxwb2x5Z29uIHBvaW50cz0iMTAzNS4yNjk1NDczMjUxMDI4LDkyMi44NDg1MDgyMzA0NTI3IDEyMDAsODAwIDEyMDAsMTAwMCIgZmlsbD0iI2U5ZWJlZSIvPgo8cG9seWdvbiBwb2ludHM9IjEwMzUuMjY5NTQ3MzI1MTAyOCw5MjIuODQ4NTA4MjMwNDUyNyAxMjAwLDEwMDAgOTYwLDEwMDAiIGZpbGw9IiNkN2RjZTIiLz4KPHBvbHlnb24gcG9pbnRzPSIxMDM1LjI2OTU0NzMyNTEwMjgsOTIyLjg0ODUwODIzMDQ1MjcgOTYwLDEwMDAgOTYwLDgwMCIgZmlsbD0iI2UyZTVlOSIvPgo8cG9seWdvbiBwb2ludHM9IjEzMDEuNDAyMjYzMzc0NDg1NSw4NzMuMTc1MTU0MzIwOTg3NiAxMjAwLDgwMCAxNDQwLDgwMCIgZmlsbD0iI2QxZDdkZSIvPgo8cG9seWdvbiBwb2ludHM9IjEzMDEuNDAyMjYzMzc0NDg1NSw4NzMuMTc1MTU0MzIwOTg3NiAxNDQwLDgwMCAxNDQwLDEwMDAiIGZpbGw9IiNkN2RjZTIiLz4KPHBvbHlnb24gcG9pbnRzPSIxMzAxLjQwMjI2MzM3NDQ4NTUsODczLjE3NTE1NDMyMDk4NzYgMTQ0MCwxMDAwIDEyMDAsMTAwMCIgZmlsbD0iI2UyZTVlOSIvPgo8cG9seWdvbiBwb2ludHM9IjEzMDEuNDAyMjYzMzc0NDg1NSw4NzMuMTc1MTU0MzIwOTg3NiAxMjAwLDEwMDAgMTIwMCw4MDAiIGZpbGw9IiNlZWYwZjMiLz4KPC9zdmc+Cg==");
  background-size:cover;
  background-position:center;
  border:1px solid rgba(15,23,42,.08);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 24px 70px -24px rgba(15,23,42,.35), inset 0 1px 0 rgba(255,255,255,.6);
  font-family:'Segoe UI',system-ui,-apple-system,sans-serif;
  -webkit-tap-highlight-color:transparent;
}
.cssflipbook,.cssflipbook *{box-sizing:border-box}

/* shared glass recipe: translucent DARK fill + blur + a light hairline
   border + soft shadow + a subtle inner top highlight — dark glass
   reads cleanly over the light faceted backdrop and keeps light-on-
   dark text/icons legible, mirroring how the reference viewer's own
   status pill is a dark chip over its light background. */
.cssflipbook .cfb-arrow,
.cssflipbook .cfb-badge,
.cssflipbook .cfb-title,
.cssflipbook .cfb-close,
.cssflipbook .cfb-toolbar,
.cssflipbook .cfb-tool,
.cssflipbook .cfb-filmstrip-wrap{
  background:var(--glass-bg);
  backdrop-filter:var(--glass-blur);
  -webkit-backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);
  box-shadow:0 8px 24px rgba(15,23,42,.18), inset 0 1px 0 rgba(255,255,255,.15);
}

/* ---------- loading / error message ---------- */
.cssflipbook .cfb-msg{
  position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;
  color:#475569;font-size:14px;line-height:1.6;padding:20px;z-index:60;
}
.cssflipbook .cfb-msg code{color:var(--accent);word-break:break-all;font-size:12px}

/* animated book icon: 3 white "leaves" over an accent-colored cover,
   each riffling through a Y-axis flip on a staggered delay so they
   read as a continuously turning stack instead of a generic spinner */
.cssflipbook .cfb-loader-book{
  position:relative;width:52px;height:66px;perspective:280px;
  margin-bottom:4px;
}
.cssflipbook .cfb-loader-book::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(135deg,var(--accent),var(--accent-strong));
  border-radius:2px 7px 7px 2px;
  box-shadow:0 10px 22px -8px rgba(37,99,235,.55);
}
.cssflipbook .cfb-loader-book::after{
  content:"";position:absolute;left:0;top:2px;bottom:2px;width:3px;
  background:rgba(15,23,42,.25);border-radius:2px 0 0 2px;
}
.cssflipbook .cfb-loader-page{
  position:absolute;top:3px;bottom:3px;left:4px;right:2px;
  background:#fff;border-radius:1px 5px 5px 1px;
  transform-origin:left center;transform-style:preserve-3d;
  backface-visibility:hidden;-webkit-backface-visibility:hidden;
  box-shadow:1px 0 4px rgba(15,23,42,.18);
  animation:cfb-loader-flip 1.5s ease-in-out infinite;
}
.cssflipbook .cfb-loader-page:nth-child(2){animation-delay:.22s}
.cssflipbook .cfb-loader-page:nth-child(3){animation-delay:.44s}
@keyframes cfb-loader-flip{
  0%,100%{transform:rotateY(0deg)}
  50%{transform:rotateY(-165deg)}
}
.cssflipbook .cfb-loader-text{font-size:13px;font-weight:500;color:#334155}

.cssflipbook .cfb-bar{
  width:220px;height:6px;border-radius:3px;
  background:rgba(15,23,42,.08);border:1px solid rgba(15,23,42,.1);
  overflow:hidden;margin-top:14px;
}
.cssflipbook .cfb-bar i{
  display:block;height:100%;border-radius:3px;
  background:linear-gradient(90deg,#2563EB,var(--accent-strong));
  transition:width .2s;
  width:0%;
}

/* ---------- book ---------- */
.cssflipbook .cfb-book-outer{
  /* top/left/right/bottom are set inline by frameFit() in the JS, which
     measures the toolbar/badge/filmstrip's real rendered positions so
     the book never has to guess how much room their chrome needs —
     this is only a pre-JS fallback */
  position:absolute;top:16px;left:16px;right:16px;bottom:16px;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
}
/* zoomed in: .cfb-zoom-frame now occupies more room than the container
   (see applyZoom() in the JS), so switch to a scrollable, top-left-
   anchored layout the user can pan around — centered flex alignment
   would make the overflowing edges unreachable by scroll. */
.cssflipbook .cfb-book-outer.cfb-zoomed{
  overflow:auto;
  justify-content:flex-start;
  align-items:flex-start;
  cursor:grab;
}
.cssflipbook .cfb-book-outer.cfb-zoomed:active{cursor:grabbing}
/* zoomFrame: real box St.PageFlip's parent chain scrolls within, sized to
   natural-size × zoom. zoomInner: always the natural, UNZOOMED size —
   St.PageFlip lives here and only ever sees this size — visually scaled
   up with a plain transform, which the library's own layout math never
   sees (see applyZoom's doc comment in the JS for why that split matters). */
.cssflipbook .cfb-zoom-frame{position:relative;flex:none}
.cssflipbook .cfb-zoom-inner{position:absolute;left:0;top:0;transform-origin:top left}
.cssflipbook .cfb-book{
  position:relative;
  filter:drop-shadow(0 18px 36px rgba(15,23,42,.28));
}

/* ---------- arrows ---------- */
.cssflipbook .cfb-arrow{
  position:absolute;top:50%;transform:translateY(-50%);
  width:40px;height:40px;border-radius:50%;
  color:var(--ink);font-size:18px;line-height:1;cursor:pointer;z-index:50;
  display:flex;align-items:center;justify-content:center;
  transition:background .2s,box-shadow .2s,transform .15s;padding:0;touch-action:manipulation;
}
.cssflipbook .cfb-arrow:hover{
  background:var(--glass-bg-hover);color:#fff;
  box-shadow:0 8px 22px rgba(37,99,235,.3), inset 0 1px 0 rgba(255,255,255,.2);
}
.cssflipbook .cfb-arrow:active{transform:translateY(-50%) scale(.93)}
.cssflipbook .cfb-arrow:disabled{opacity:.25;cursor:not-allowed;box-shadow:none}
.cssflipbook .cfb-prev{left:10px}
.cssflipbook .cfb-next{right:10px}

/* ---------- page badge + title + close ---------- */
.cssflipbook .cfb-badge{
  position:absolute;bottom:10px;left:50%;transform:translateX(-50%);
  color:var(--ink);font-size:12px;
  padding:4px 12px;border-radius:999px;z-index:50;white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.cssflipbook .cfb-badge b{color:var(--accent-strong);font-weight:600}
/* raised above the filmstrip band while it's open (see openFilmstrip()/
   closeFilmstrip() in the JS) — otherwise it stays at its low default so
   the book can use that reclaimed space when the filmstrip is closed */
.cssflipbook .cfb-badge.cfb-badge-raised{bottom:66px}

.cssflipbook .cfb-title{
  position:absolute;top:10px;left:10px;z-index:50;max-width:60%;
  color:var(--ink);font-size:12px;font-weight:600;
  padding:5px 12px;border-radius:999px;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis;
}

/* only shown when this instance is inside a fullscreen popup, or opts in
   via data-closable="true" (see onCloseRequest in the JS) — same top-right
   corner slot the old fullscreen-toggle button used to occupy */
.cssflipbook .cfb-close{
  position:absolute;
  top:calc(env(safe-area-inset-top) + 10px);
  right:calc(env(safe-area-inset-right) + 10px);
  z-index:56;
  width:32px;height:32px;border-radius:50%;
  color:var(--ink);cursor:pointer;padding:0;
  transition:background .2s,box-shadow .2s,color .2s;
}
/* the × itself: two bars centered with translate(-50%,-50%), not text —
   a "×" glyph's ink sits off-center inside its own em box in most fonts,
   which flex/grid centering can't fix since it centers the box, not the
   ink within it. Two geometric bars center exactly in every browser. */
.cssflipbook .cfb-close::before,
.cssflipbook .cfb-close::after{
  content:"";position:absolute;top:50%;left:50%;
  width:14px;height:2px;border-radius:1px;
  background:currentColor;
  transform:translate(-50%,-50%) rotate(45deg);
}
.cssflipbook .cfb-close::after{transform:translate(-50%,-50%) rotate(-45deg)}
.cssflipbook .cfb-close:hover{
  background:rgba(225,29,72,.55);color:#fff;
  box-shadow:0 8px 22px rgba(225,29,72,.3), inset 0 1px 0 rgba(255,255,255,.2);
}

/* ---------- toolbar: auto-play + zoom + filmstrip toggle + download ---------- */
.cssflipbook .cfb-toolbar{
  position:absolute;top:10px;left:50%;transform:translateX(-50%);
  z-index:50;display:none;align-items:center;gap:6px;flex-wrap:nowrap;
  border-radius:999px;padding:5px 8px;
}
.cssflipbook .cfb-tool{
  width:26px;height:26px;border-radius:50%;flex:none;
  color:var(--ink);font-size:14px;line-height:1;cursor:pointer;padding:0;
  display:flex;align-items:center;justify-content:center;
  transition:background .2s,box-shadow .2s,color .2s;
}
.cssflipbook .cfb-tool:hover{
  background:var(--glass-bg-hover);color:#fff;
  box-shadow:0 6px 16px rgba(37,99,235,.3), inset 0 1px 0 rgba(255,255,255,.2);
}
.cssflipbook .cfb-tool:disabled{opacity:.3;cursor:not-allowed;box-shadow:none}
.cssflipbook .cfb-tool.cfb-auto-on{
  background:rgba(5,150,105,.55);color:#fff;border-color:rgba(255,255,255,.4);
  box-shadow:0 6px 16px rgba(5,150,105,.3), inset 0 1px 0 rgba(255,255,255,.2);
}
.cssflipbook .cfb-tool.cfb-tool-active{
  background:rgba(37,99,235,.6);color:#fff;border-color:rgba(255,255,255,.4);
  box-shadow:0 6px 16px rgba(37,99,235,.3), inset 0 1px 0 rgba(255,255,255,.2);
}

/* ---------- go-to-page filmstrip ---------- */
.cssflipbook .cfb-filmstrip-wrap{
  position:absolute;left:0;right:0;bottom:0;z-index:55;
  display:none;align-items:center;gap:2px;
  border-radius:0;border-width:1px 0 0 0;
  /* more room below the thumbnails than above -- otherwise they sit
     flush against the container's own bottom edge with no breathing
     room at all */
  padding:8px 4px 14px;
}
.cssflipbook .cfb-filmstrip{
  flex:1;display:flex;gap:6px;overflow-x:auto;scroll-behavior:smooth;
  padding:2px 4px;scrollbar-width:thin;
}
.cssflipbook .cfb-filmstrip::-webkit-scrollbar{height:5px}
.cssflipbook .cfb-filmstrip::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3);border-radius:3px}
.cssflipbook .cfb-film-item{
  flex:none;position:relative;width:34px;height:46px;border-radius:4px;overflow:hidden;
  border:2px solid transparent;padding:0;cursor:pointer;background:#fff;
  opacity:.65;transition:opacity .15s,border-color .15s,box-shadow .15s;
}
.cssflipbook .cfb-film-item:hover{opacity:.92}
.cssflipbook .cfb-film-item.cfb-film-active{
  opacity:1;border-color:var(--accent-strong);
  box-shadow:0 0 0 3px rgba(37,99,235,.28);
}
.cssflipbook .cfb-film-item img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.cssflipbook .cfb-film-item span{
  position:absolute;bottom:1px;right:2px;font-size:8px;color:#fff;
  text-shadow:0 0 2px #000,0 0 2px #000;font-variant-numeric:tabular-nums;
  pointer-events:none;
}
.cssflipbook .cfb-film-scroll{
  flex:none;width:20px;height:46px;border:none;background:transparent;
  color:var(--ink);font-size:15px;cursor:pointer;padding:0;
  transition:color .15s;
}
.cssflipbook .cfb-film-scroll:hover{color:var(--accent-strong)}

/* ---------- small containers / phones ---------- */
@media (max-width:700px){
  .cssflipbook{border-radius:14px}
  .cssflipbook .cfb-arrow{width:34px;height:34px;font-size:15px}
  .cssflipbook .cfb-prev{left:4px}
  .cssflipbook .cfb-next{right:4px}
  .cssflipbook .cfb-badge.cfb-badge-raised{bottom:56px}
  /* narrower cap than the base 60% -- otherwise a long PDF title collides
     with the auto-play/zoom toolbar centered in the same top row (checked
     directly: at 375px wide, an untrimmed 60%-wide title chip overlapped
     the toolbar by ~80px) */
  .cssflipbook .cfb-title{max-width:28%;font-size:11px}
  .cssflipbook .cfb-close{width:28px;height:28px}
  .cssflipbook .cfb-close::before,
  .cssflipbook .cfb-close::after{width:12px}
  .cssflipbook .cfb-toolbar{top:6px;gap:4px;padding:4px 6px}
  .cssflipbook .cfb-tool{width:22px;height:22px;font-size:12px}
  .cssflipbook .cfb-filmstrip-wrap{padding:6px 2px 12px}
  .cssflipbook .cfb-film-item{width:26px;height:36px}
  .cssflipbook .cfb-film-scroll{width:16px;height:36px;font-size:12px}
}

/* ---------- click-to-open trigger (img/div + .cfb-trigger class) ---------- */
.cfb-trigger{cursor:pointer}

/* ---------- fullscreen popup ---------- */
body.cfb-popup-open{overflow:hidden}
.cfb-popup-overlay{
  position:fixed;inset:0;z-index:99999;
  background:rgba(15,23,42,.55);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right))
          max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));
  animation:cfb-popup-in .18s ease-out;
}
@keyframes cfb-popup-in{from{opacity:0}to{opacity:1}}
.cfb-popup-stage{
  position:relative;width:100%;height:100%;
  height:100dvh;
}
.cfb-popup-overlay .cssflipbook{width:100%;height:100%;border-radius:0;border:none}
