/* Inklura Caisse (pos.inklura.fr): the Inklura identity laid over the caisse.bzh skin.
   Linked by the layout on pos.inklura.fr only. Every rule is scoped under
   html[data-brand=inklura], so the file does nothing on caisse.bzh even if linked there.
   Palette from the Inklura design system: blue #146BFF, indigo #3A5AF4, ink #111111,
   lines #E5E7EB. No coloured border on rounded boxes. */

@font-face{font-family:"Inter Tight";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inklura/inter-tight-latin-ext-fd9bedda.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:"Inter Tight";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inklura/inter-tight-latin-77fefe8c.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:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-ext-34b9c504.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:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-3100e775.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}

/* 1. Variables. Public skin (CB_CSS), console and work pages (BRAND_CSS). */
html[data-brand=inklura]{
  --marine:#111111;--cire:#146BFF;--papier:#FFFFFF;--du:#111111;--gwenn:#FFFFFF;--granit:#6B7280;--ecume:#EDF3FF;
  --f-d:"Inter Tight","Inter",system-ui,sans-serif;--f-t:"Inter",system-ui,sans-serif;--line:#E5E7EB;--txt2:#4B4B4B;
  --brand:#146BFF;--brand-d:#1159D6;--brand-l:#3A5AF4;--brand-2:#146BFF;--on-brand:#FFFFFF;
  --grad:linear-gradient(135deg,#146BFF 0%,#3A5AF4 100%);
  --grad-soft:linear-gradient(135deg,rgba(20,107,255,.07),rgba(58,90,244,.07));
  --ink:#111111;--ink-2:#4B4B4B;--mut:#6B7280;--faint:#707070;
  --line-2:#F0F1F3;
  --bg:#FFFFFF;--bg-2:#F9FAFB;--card:#FFFFFF;--card-2:#F9FAFB;
  --soft:#EDF3FF;--soft-2:#D0E1FF;
  --glass:rgba(255,255,255,.80);
  --code-bg:#0E0F12;--code-fg:#E8F0FF;
  --dot:rgba(20,107,255,.05);
  --ok:#047857;--ok-bg:#ECFDF5;
  --shadow-sm:0 4px 12px rgba(0,0,0,.03);
  --shadow:0 8px 20px rgba(0,0,0,.05);
  --shadow-lg:0 8px 24px rgba(0,0,0,.12);
  --shadow-btn:0 2px 8px rgba(20,107,255,.25);
  --r:16px;--r-sm:12px;--r-xs:10px;
}
html[data-brand=inklura][data-theme=dark]{
  --brand:#146BFF;--brand-d:#1159D6;--brand-l:#8EB6FF;--brand-2:#8EB6FF;--on-brand:#FFFFFF;
  --grad:linear-gradient(135deg,#146BFF 0%,#3A5AF4 100%);
  --grad-soft:linear-gradient(135deg,rgba(20,107,255,.14),rgba(58,90,244,.10));
  --ink:#FFFFFF;--ink-2:#C8C9CC;--mut:#939394;--faint:#8A8B8E;
  --line:rgba(255,255,255,.10);--line-2:rgba(255,255,255,.06);
  --bg:#0B0B0F;--bg-2:#111111;--card:#0E0F12;--card-2:#101218;
  --soft:#152744;--soft-2:#1B2B49;
  --glass:rgba(14,15,18,.70);
  --code-bg:#060708;--code-fg:#E8F0FF;
  --dot:rgba(142,182,255,.05);
  --ok:#34D399;--ok-bg:#0B2A20;
  --shadow-btn:0 2px 8px rgba(20,107,255,.35);
}
html[data-brand=inklura],html[data-brand=inklura] body{font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
html[data-brand=inklura] body::before{background:radial-gradient(680px 520px at 86% -8%,rgba(20,107,255,.10),transparent 60%),radial-gradient(620px 560px at -6% 12%,rgba(58,90,244,.08),transparent 58%)}

/* 2. Public skin: roles a variable swap cannot fix (white text on blue). */
html[data-brand=inklura] .cb-head{background:rgba(255,255,255,.9)}
html[data-brand=inklura] .cb-brand .cb-svg,html[data-brand=inklura] .cb-brand .cb-svg svg{height:34px}
html[data-brand=inklura] .cb :focus-visible{outline-color:#146BFF}
html[data-brand=inklura] .cb-skip,
html[data-brand=inklura] .cb-btn.cb-pri,
html[data-brand=inklura] .auth-btn.pri,
html[data-brand=inklura] .mq-btn.prim{background:#146BFF;color:#FFFFFF;box-shadow:0 2px 8px rgba(20,107,255,.25)}
html[data-brand=inklura] .cb-btn.cb-pri:hover,html[data-brand=inklura] .auth-btn.pri:hover{background:#1159D6}
html[data-brand=inklura] .cb-btn.cb-pri:active,html[data-brand=inklura] .auth-btn.pri:active{box-shadow:0 1px 4px rgba(20,107,255,.25)}
html[data-brand=inklura] .cb-head .cb-btn{box-shadow:0 2px 8px rgba(20,107,255,.25)}
html[data-brand=inklura] .cb-btn{border-radius:12px}
html[data-brand=inklura] .cb-btn.cb-dark{background:#111111;color:#FFFFFF}
html[data-brand=inklura] .cb-label span,
html[data-brand=inklura] .lp-steps .cb-label span,
html[data-brand=inklura] .auth-head .step,
html[data-brand=inklura] .dv-method,
html[data-brand=inklura] .ft-y,
html[data-brand=inklura] .lp-faq summary::after,
html[data-brand=inklura] .mq-anat .k i{background:#146BFF;color:#FFFFFF}
html[data-brand=inklura] .cb-hl{background:linear-gradient(transparent 62%,#D0E1FF 62%)}
html[data-brand=inklura] .cb-nav a:hover{text-decoration-color:#146BFF}
html[data-brand=inklura] .cb-pattern{background-color:#146BFF;background-image:linear-gradient(135deg,#146BFF 0%,#3A5AF4 100%)}
html[data-brand=inklura] .cb-erm{display:none!important}
/* bands painted in the accent: text turns white, dark buttons stay dark */
html[data-brand=inklura] .ft-band,html[data-brand=inklura] .lp-band,html[data-brand=inklura] .cs-price,html[data-brand=inklura] .a-phone{background:linear-gradient(135deg,#146BFF 0%,#3A5AF4 100%);color:#FFFFFF}
html[data-brand=inklura] .ft-band :is(h2,h3,p,li,span,small,b,strong),
html[data-brand=inklura] .lp-band :is(h2,h3,p,li,span,small,b,strong),
html[data-brand=inklura] .cs-price :is(h2,h3,p,li,span,small,b,strong){color:#FFFFFF}
html[data-brand=inklura] :is(.ft-band,.lp-band,.cs-price) .cb-btn.cb-pri{background:#FFFFFF;color:#146BFF}
html[data-brand=inklura] :is(.ft-band,.lp-band,.cs-price) .cb-btn.cb-pri span{color:#146BFF}
html[data-brand=inklura] :is(.ft-band,.lp-band,.cs-price) .cb-btn.cb-dark span{color:#FFFFFF}
/* footer: ink surface, light blue accents */
html[data-brand=inklura] .cb-foot{background:#0E0F12}
html[data-brand=inklura] .cb-foot .cb-fh{color:#8EB6FF}
html[data-brand=inklura] .cb-foot ul a:hover,html[data-brand=inklura] .cb-foot-legal a:hover{text-decoration-color:#8EB6FF}
html[data-brand=inklura] .cb-foot-app:hover{border-color:#ffffff59}
html[data-brand=inklura] .cb-foot .cb-foot-home .cb-svg{width:200px}
/* sign-in pages */
html[data-brand=inklura] .ifield input{border-color:#E5E7EB}
html[data-brand=inklura] .ifield input:focus{border-color:#111111;box-shadow:0 0 0 4px rgba(20,107,255,.18)}
html[data-brand=inklura] .auth-card label .lrow a,html[data-brand=inklura] .auth-links a{text-decoration-color:#146BFF}
html[data-brand=inklura] .auth-sso{border-color:#E5E7EB}
html[data-brand=inklura] .auth-sep::before,html[data-brand=inklura] .auth-sep::after{background:#E5E7EB}
html[data-brand=inklura] .cba-panel .cba-list i{background:rgba(255,255,255,.2)}
html[data-brand=inklura] .cba-panel .cba-lead{color:#E8F0FF}
html[data-brand=inklura] .cba-panel h2 em{color:#FFFFFF;text-decoration:underline;text-decoration-color:rgba(255,255,255,.5);text-underline-offset:6px}
html[data-brand=inklura] .cba-panel .cba-foot{color:#D0E1FF}
html[data-brand=inklura] .auth-card .crumb .ico,html[data-brand=inklura] .auth-confirm .cbadge{background:#146BFF;color:#FFFFFF}

/* 3. Console (Manage kit). The caisse palette block is not emitted on this host,
   so the kit's native Inklura theme applies; only the caisse overrides that stay
   in the page need answering here. */
html[data-brand=inklura] body,html[data-brand=inklura] .mng-v2{font-family:"Inter",system-ui,sans-serif}
html[data-brand=inklura] .mng-v2-panel a.mng-v2-it[aria-current=page],html[data-brand=inklura] .mng-v2-rail a.mng-v2-sp[aria-current=page]{background:#146BFF!important;color:#FFFFFF!important}
html[data-brand=inklura] .mng-v2-panel a.mng-v2-it[aria-current=page] *,html[data-brand=inklura] .mng-v2-rail a.mng-v2-sp[aria-current=page] *{color:#FFFFFF!important}
html[data-brand=inklura] .mng-v2-panel a.mng-v2-it[aria-current=page]:hover,html[data-brand=inklura] .mng-v2-rail a.mng-v2-sp[aria-current=page]:hover{background:#1159D6!important}
html[data-brand=inklura] #mng-v2-ctx .mng-v2-sdot{background:#146BFF}
html[data-brand=inklura] .cb-shops{border-color:var(--mng-border,#E5E7EB);box-shadow:0 8px 24px rgba(0,0,0,.12)}
html[data-brand=inklura] .cb-shops a .ck{background:#146BFF;color:#FFFFFF}
html[data-brand=inklura] .mng-v2-logo>*{display:none!important}
html[data-brand=inklura] .mng-v2-logo{background:url(/marque/inklura/inklura-caisse-symbole.svg) center/28px no-repeat!important}

/* 4. Screenshot frames (lib/captures): the fake address bar names the host. */
html[data-brand=inklura] .cz-bar{background:#0E0F12;color:#C8C9CC}
html[data-brand=inklura] .cz-bar span{font-size:0}
html[data-brand=inklura] .cz-bar span::before{content:"pos.inklura.fr";font-size:11.5px}

/* 5. Legal and trust pages: the trade-name sentence above the unchanged text. */
html[data-brand=inklura] .ik-legal{margin:14px 0 22px;padding:14px 16px;border-radius:12px;background:#EDF3FF;color:#111111;font-size:15px;line-height:1.55;max-width:70ch}

/* 6. Home ticket: no ermine under the receipt on the Inklura host. */
html[data-brand=inklura] .cb-ticket .cb-te{display:none}

/* 7. Faces (phase 2). About fifty caisse.bzh stylesheets (console screens, POS
   tools, /tarifs, visitor pages) name "Unbounded" and "Instrument Sans". This
   file is linked on pos.inklura.fr only and after the caisse faces, so on that
   host the two names are declared again with the same descriptors and resolve
   to Inter Tight and Inter (the last identical face wins). An @font-face rule
   cannot be scoped under html[data-brand]; it is the one exception of this file,
   harmless because the file is never linked on caisse.bzh. */
@font-face{font-family:"Unbounded";font-style:normal;font-weight:200 900;font-display:swap;src:url(/fonts/inklura/inter-tight-latin-77fefe8c.woff2) format("woff2")}
@font-face{font-family:"Instrument Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-latin-3100e775.woff2) format("woff2")}

/* 8. The caisse.bzh mark drawn inline by the server (brand.tsx LogoMark on the
   POS tools, the console, /carte): shown as the Inklura tile on this host. The
   ermine group of that SVG is the only one with this transform. */
html[data-brand=inklura] span:has(> svg > g[transform="translate(22 19.6) scale(1)"]){background:url(/marque/inklura/inklura-caisse-symbole.svg) center/100% 100% no-repeat}
html[data-brand=inklura] span > svg:has(> g[transform="translate(22 19.6) scale(1)"]){visibility:hidden}

/* 9. /tarifs and /materiel: no marine card, no yellow block, no coloured border. */
html[data-brand=inklura] .price-card{border:0;border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.08);background:#FFFFFF}
html[data-brand=inklura] .price-card.connected{background:#111111;color:#FFFFFF}
html[data-brand=inklura] .price-extra{background:#EDF3FF;color:#111111;border-radius:12px}
html[data-brand=inklura] .price-table th,html[data-brand=inklura] .price-table td,html[data-brand=inklura] .pricing details{border-bottom-color:#E5E7EB}
html[data-brand=inklura] .price-note{color:#6B7280}
html[data-brand=inklura] .hw-card{border-color:#E5E7EB}
html[data-brand=inklura] .hw-card.featured{border:1px solid #E5E7EB;box-shadow:0 8px 24px rgba(0,0,0,.08)}
html[data-brand=inklura] .hw-badge{background:#EDF3FF;color:#111111}

/* 10. Visitor pages (ticket office, tickets, order, pass, depositor, group
   documents) on pos.inklura.fr: a museum without its own colour gets the
   Inklura blue instead of the caisse.bzh marine default. */
html[data-brand=inklura] .wt[style*="--wt-brand:#102A43"]{--wt-brand:#146BFF!important;--wt-on:#FFFFFF!important}

/* 11. Demo and training banners of the terminal, demo card of the dashboard:
   Inklura blue instead of the ciré yellow and marine. */
html[data-brand=inklura] .cb-train{background:#146BFF;color:#FFFFFF;border-bottom-color:#1159D6}
html[data-brand=inklura] .cb-train a{color:#FFFFFF}
html[data-brand=inklura] .cb-kind{border-color:transparent;background:rgba(255,255,255,.16);color:#FFFFFF}
html[data-brand=inklura] .cb-kind:hover{background:rgba(255,255,255,.28)}
html[data-brand=inklura] .cb-kind.on{background:#FFFFFF;color:#146BFF}
html[data-brand=inklura] .cb-demo{background:#EDF3FF;color:#111111}
html[data-brand=inklura] .cb-demo-tag{background:#146BFF;color:#FFFFFF}
html[data-brand=inklura] .cb-desk a.go{background:#146BFF;color:#FFFFFF}
html[data-brand=inklura] .cb-desk-tag{background:#146BFF;color:#FFFFFF}
html[data-brand=inklura] .cb-desk-opts input{accent-color:#146BFF}

/* 12. Kitchen screen, light theme (the dark theme keeps its own surfaces):
   Inklura surfaces and blue instead of the cream and marine. */
html[data-brand=inklura][data-theme=light] .kds{background:#F9FAFB;color:#111111}
html[data-brand=inklura][data-theme=light] .kds-top{background:rgba(255,255,255,.92);border-bottom-color:#E5E7EB}
html[data-brand=inklura][data-theme=light] .kds-count,html[data-brand=inklura][data-theme=light] .kds-seg,html[data-brand=inklura][data-theme=light] .kds-stn,html[data-brand=inklura][data-theme=light] .kds-link{border-color:#E5E7EB;color:#4B4B4B}
html[data-brand=inklura][data-theme=light] .kds-count b{color:#111111}
html[data-brand=inklura][data-theme=light] .kds-seg button[data-on="1"],html[data-brand=inklura][data-theme=light] .kds-stn[data-on="1"]{background:#146BFF;color:#FFFFFF}
html[data-brand=inklura][data-theme=light] .kds-stn:hover,html[data-brand=inklura][data-theme=light] .kds-link:hover{color:#111111;border-color:#E5E7EB}
html[data-brand=inklura][data-theme=light] .ko{border-color:#E5E7EB;box-shadow:0 8px 24px rgba(0,0,0,.06)}
html[data-brand=inklura][data-theme=light] .ko-h,html[data-brand=inklura][data-theme=light] .ko-item{border-bottom-color:#F0F1F3}
html[data-brand=inklura][data-theme=light] .ko-item .q{background:#111111}
html[data-brand=inklura][data-theme=light] .ko-st{background:#F9FAFB;border-color:#E5E7EB;color:#4B4B4B}
html[data-brand=inklura][data-theme=light] .ko-foot{background:#F9FAFB;border-top-color:#F0F1F3}
html[data-brand=inklura][data-theme=light] .ko-btn.serve{background:#EDF3FF;color:#146BFF}
html[data-brand=inklura] .fj-train{background:#EDF3FF;color:#111111}

/* 13. Headings drawn for Unbounded (a wide face) carry a tight letter-spacing;
   with Inter Tight it is too tight on the console, POS tools and visitor pages. */
html[data-brand=inklura] :is(.wt,.tkv,.ppb,.gdq,.gpf,.csgv,.console,.mng-v2) :is(h1,h2){letter-spacing:-.02em}

/* 14. Phase 3: the caisse.bzh navy (#102A43) still painted on this host.
   Navy used as a fill or an accent becomes the Inklura blue, navy used for text
   becomes ink. Left alone on purpose: colours a user picks (floor plan zones,
   the shop menu theme and its preview) and the shop menu pages. */
/* fiscal journal: closure tags Z, M, A */
html[data-brand=inklura] .fj-tag.Z,html[data-brand=inklura] .fj-tag.M,html[data-brand=inklura] .fj-tag.A,
html[data-brand=inklura][data-theme=dark] .fj-tag.Z,html[data-brand=inklura][data-theme=dark] .fj-tag.M,html[data-brand=inklura][data-theme=dark] .fj-tag.A{background:#146BFF;color:#FFFFFF}
/* role colour of a waiter (avatars and dots of the terminal, team and time clock) */
html[data-brand=inklura] :is(.a,.ava,.tm-av,.av,.rdot)[style*="#102A43" i]{background:#146BFF!important}
/* cash in the payment legends of the day summary and the sales history: the
   Inklura blue is already the card colour there, so cash turns ink */
html[data-brand=inklura] .dg-row .rd[style*="#102A43" i],
html[data-brand=inklura] :is(.hs-mixrow,.hs-chip) [style*="#102A43" i]{background:#111111!important}
html[data-brand=inklura][data-theme=dark] .dg-row .rd[style*="#102A43" i],
html[data-brand=inklura][data-theme=dark] :is(.hs-mixrow,.hs-chip) [style*="#102A43" i]{background:#C8C9CC!important}
/* sessions board: « last places » and warning chips keep their yellow, ink text */
html[data-brand=inklura] .sgb-chip.l-last,html[data-brand=inklura] .sgb-chip.warn{color:#111111}
/* console « Mon matériel »: order buttons */
html[data-brand=inklura] .hardware.console button[name=op]{background:#146BFF;color:#FFFFFF}
html[data-brand=inklura] .hardware.console button[name=op].secondary{background:#EDF3FF;color:#111111}
/* public hardware pages: product names over the photos, compatibility pill */
html[data-brand=inklura] .hw-showcase{color:#111111}
html[data-brand=inklura] .hwc-valide{background:#146BFF;color:#FFFFFF}
/* screenshot frames (lib/captures): neutral line instead of the navy border,
   ink phone bezel, lightbox close button in blue */
html[data-brand=inklura] .cz-web .cz-frame,html[data-brand=inklura] .cz-desktop .cz-frame{border-color:#E5E7EB;box-shadow:0 1px 0 rgba(0,0,0,.04),0 24px 60px -24px rgba(0,0,0,.30)}
html[data-brand=inklura] .cz-phone .cz-frame{background:#0E0F12;box-shadow:0 24px 60px -24px rgba(0,0,0,.40)}
html[data-brand=inklura] .cz-lb p b{color:#8EB6FF}
html[data-brand=inklura] .cz-lb button{background:#146BFF;color:#FFFFFF}
html[data-brand=inklura] .cz-frame:focus-visible{outline-color:#146BFF}
/* sign-in error page: retry button */
html[data-brand=inklura] .card a[href="/auth/login"]{background:linear-gradient(95deg,#146BFF,#3A5AF4)}
