:root{--qrush-pwa-red:#e3162a;--qrush-pwa-blue:#0787ff;--qrush-pwa-yellow:#ffd21a;--qrush-pwa-navy:#061126;--qrush-pwa-panel:#09182d;--qrush-pwa-text:#fff;--qrush-pwa-muted:#a8bedb}
.qrush-pwa-hidden-in-app{display:none!important}
.qrush-pwa-install{position:fixed;left:50%;bottom:max(16px,env(safe-area-inset-bottom));z-index:2147483000;width:min(720px,calc(100vw - 24px));transform:translate(-50%,24px);opacity:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid rgba(0,135,255,.38);border-left:4px solid var(--qrush-pwa-red);background:linear-gradient(120deg,rgba(7,19,37,.98),rgba(3,10,23,.98));box-shadow:0 18px 60px rgba(0,0,0,.55);color:#fff;transition:.25s ease}.qrush-pwa-install.is-visible{opacity:1;transform:translate(-50%,0)}
.qrush-pwa-install__mark,.qrush-pwa-modal__logo{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#ed172b 0 48%,#073f9c 49% 100%);font-weight:1000;font-style:italic;font-size:26px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.15)}
.qrush-pwa-install__copy{min-width:0;display:grid;gap:4px}.qrush-pwa-install__copy strong{font-size:15px;line-height:1.1;text-transform:uppercase;letter-spacing:.03em}.qrush-pwa-install__copy span{font-size:12px;line-height:1.35;color:var(--qrush-pwa-muted)}.qrush-pwa-install__actions{display:flex;gap:8px;align-items:center}.qrush-pwa-install button{border:0;cursor:pointer;font-weight:900;text-transform:uppercase;font-size:11px}.qrush-pwa-install__primary{padding:11px 15px;background:var(--qrush-pwa-red);color:#fff;clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%)}.qrush-pwa-install__later{padding:10px 8px;background:transparent;color:#a8bedb}
.qrush-pwa-modal{position:fixed;inset:0;z-index:2147483640;display:grid;place-items:center;padding:20px;background:rgba(0,4,12,.78);backdrop-filter:blur(6px)}.qrush-pwa-modal__card{position:relative;width:min(440px,100%);padding:30px 26px;border:1px solid rgba(0,135,255,.35);border-top:3px solid var(--qrush-pwa-red);background:linear-gradient(150deg,#0b1b33,#050c18);box-shadow:0 24px 80px rgba(0,0,0,.65);color:#fff;text-align:center}.qrush-pwa-modal__close{position:absolute;top:8px;right:10px;border:0;background:transparent;color:#fff;font-size:26px;cursor:pointer}.qrush-pwa-modal__logo{margin:0 auto 14px}.qrush-pwa-modal h2{margin:0 0 10px;font-size:24px;text-transform:uppercase}.qrush-pwa-modal p{margin:0 auto 20px;max-width:360px;color:#bcd0ec;line-height:1.5}.qrush-pwa-ios-steps{display:grid;grid-template-columns:28px 1fr;gap:9px 12px;text-align:left;align-items:center}.qrush-pwa-ios-steps span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--qrush-pwa-blue);font-weight:900}.qrush-pwa-ios-steps strong{font-size:13px}
.qrush-pwa-toast{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));z-index:2147483200;transform:translate(-50%,20px);opacity:0;display:flex;gap:14px;align-items:center;max-width:min(560px,calc(100vw - 24px));padding:11px 14px;background:#071525;border:1px solid rgba(0,135,255,.45);color:#fff;box-shadow:0 12px 40px rgba(0,0,0,.45);transition:.2s ease;font-size:13px}.qrush-pwa-toast.is-visible{opacity:1;transform:translate(-50%,0)}.qrush-pwa-toast button{border:0;background:var(--qrush-pwa-red);color:#fff;font-weight:900;padding:8px 10px;text-transform:uppercase;font-size:10px;cursor:pointer}
.qrush-pwa-nav{position:fixed;left:0;right:0;bottom:0;z-index:2147482000;display:grid;grid-template-columns:repeat(var(--qrush-pwa-nav-count,5),1fr);padding:6px 8px calc(6px + env(safe-area-inset-bottom));border-top:1px solid rgba(0,134,255,.45);background:rgba(4,13,27,.96);backdrop-filter:blur(12px);box-shadow:0 -8px 30px rgba(0,0,0,.38)}.qrush-pwa-nav__item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:50px;color:#8ca6c7!important;text-decoration:none!important;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.02em}.qrush-pwa-nav__icon{width:23px;height:23px;display:block}.qrush-pwa-nav__icon svg{width:100%;height:100%;fill:currentColor}.qrush-pwa-nav__item.is-active{color:#fff!important}.qrush-pwa-nav__item.is-active:before{content:"";position:absolute;top:-6px;width:42%;height:3px;background:linear-gradient(90deg,var(--qrush-pwa-red),var(--qrush-pwa-yellow));box-shadow:0 0 12px rgba(227,22,42,.6)}
.qrush-pwa-standalone body{padding-bottom:calc(66px + env(safe-area-inset-bottom))}
@media (max-width:640px){.qrush-pwa-install{grid-template-columns:auto 1fr;gap:10px}.qrush-pwa-install__actions{grid-column:1/-1;justify-content:flex-end}.qrush-pwa-install__copy span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}
@media (display-mode:browser){.qrush-pwa-nav{display:none}}

/* QRUSH PWA v1.1.0 — interface mobile dédiée, uniquement en mode application installée */
.qrush-pwa-standalone body.qrush-pwa-has-appbar{padding-top:calc(58px + env(safe-area-inset-top))}
.qrush-pwa-standalone body.qrush-pwa-has-bottomnav{padding-bottom:calc(70px + env(safe-area-inset-bottom))}
.qrush-pwa-standalone body.qrush-pwa-has-appbar.qrush-pwa-has-bottomnav{min-height:100vh}

.qrush-pwa-appbar{position:fixed;top:0;left:0;right:0;z-index:2147482100;height:calc(58px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 10px 0;display:grid;grid-template-columns:minmax(96px,1fr) minmax(0,1.25fr) minmax(76px,1fr);align-items:center;border-bottom:1px solid rgba(0,135,255,.42);background:linear-gradient(180deg,rgba(6,17,38,.99),rgba(4,12,27,.97));box-shadow:0 8px 28px rgba(0,0,0,.38);backdrop-filter:blur(14px);color:#fff}
.qrush-pwa-appbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,#e3162a 0 18%,#0787ff 18% 82%,#ffd21a 82% 100%);opacity:.9}
.qrush-pwa-appbar__brand{display:flex;align-items:center;gap:8px;min-width:0;color:#fff!important;text-decoration:none!important;font-weight:1000;font-style:italic;letter-spacing:.03em}
.qrush-pwa-appbar__brand img{width:36px;height:36px;border-radius:9px;object-fit:cover;box-shadow:0 4px 14px rgba(0,0,0,.35)}
.qrush-pwa-appbar__brand span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.qrush-pwa-appbar__page{text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#bcd0ec}
.qrush-pwa-appbar__actions{justify-self:end;display:flex;align-items:center;gap:9px}
.qrush-pwa-appbar__status{width:9px;height:9px;border-radius:50%;background:#30dc78;box-shadow:0 0 0 4px rgba(48,220,120,.12),0 0 12px rgba(48,220,120,.55)}
.qrush-pwa-appbar__status.is-offline{background:#ff5f68;box-shadow:0 0 0 4px rgba(255,95,104,.12),0 0 12px rgba(255,95,104,.45)}
.qrush-pwa-appbar__menu{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:#0d213d;color:#fff;cursor:pointer}
.qrush-pwa-appbar__menu svg{width:22px;height:22px;fill:currentColor}

.qrush-pwa-nav{height:calc(64px + env(safe-area-inset-bottom));padding:4px 5px env(safe-area-inset-bottom);border-top:1px solid rgba(0,134,255,.5);background:linear-gradient(180deg,rgba(5,16,34,.98),rgba(2,8,18,.995))}
.qrush-pwa-nav__item{min-height:60px;gap:3px;font-size:9px}
.qrush-pwa-nav__icon{width:24px;height:24px}
.qrush-pwa-nav__item.is-active{color:#fff!important;background:linear-gradient(180deg,rgba(7,135,255,.09),transparent 80%)}
.qrush-pwa-nav__item.is-active:before{top:-4px;width:48%;height:3px;background:linear-gradient(90deg,#e3162a,#ffd21a);box-shadow:0 0 14px rgba(227,22,42,.7)}

.qrush-pwa-drawer-scrim{position:fixed;inset:0;z-index:2147482150;background:rgba(0,4,12,.68);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .22s ease}
.qrush-pwa-drawer-scrim.is-open{opacity:1;pointer-events:auto}
.qrush-pwa-drawer{position:fixed;top:0;right:0;bottom:0;z-index:2147482200;width:min(86vw,360px);padding:calc(18px + env(safe-area-inset-top)) 16px calc(18px + env(safe-area-inset-bottom));transform:translateX(104%);transition:transform .24s ease;background:linear-gradient(160deg,#0a1930,#030914 78%);border-left:1px solid rgba(0,135,255,.4);box-shadow:-24px 0 80px rgba(0,0,0,.55);color:#fff;overflow:auto}
.qrush-pwa-drawer.is-open{transform:translateX(0)}
.qrush-pwa-drawer-open{overflow:hidden}
.qrush-pwa-drawer__head{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.09)}
.qrush-pwa-drawer__head div{display:grid;gap:3px}.qrush-pwa-drawer__head span{color:#ffd21a;font-size:10px;font-weight:1000;letter-spacing:.15em}.qrush-pwa-drawer__head strong{font-size:21px;text-transform:uppercase}
.qrush-pwa-drawer__close{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:#0e223e;color:#fff;cursor:pointer}.qrush-pwa-drawer__close svg{width:22px;height:22px;fill:currentColor}
.qrush-pwa-drawer__links{display:grid;margin:16px 0}.qrush-pwa-drawer__links a{position:relative;padding:15px 14px 15px 18px;border-bottom:1px solid rgba(255,255,255,.07);color:#dbe8f9!important;text-decoration:none!important;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.02em}.qrush-pwa-drawer__links a:before{content:"";position:absolute;left:0;top:50%;width:4px;height:18px;transform:translateY(-50%);background:#0787ff}.qrush-pwa-drawer__links a:active{background:rgba(7,135,255,.12)}
.qrush-pwa-drawer__tools{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.qrush-pwa-drawer__tools button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:1px solid rgba(0,135,255,.24);background:#0d213d;color:#fff;font-size:11px;font-weight:900;text-transform:uppercase;cursor:pointer}.qrush-pwa-drawer__tools svg{width:18px;height:18px;fill:currentColor}

@media (max-width:420px){.qrush-pwa-appbar{grid-template-columns:minmax(90px,1fr) minmax(0,.95fr) minmax(66px,.7fr)}.qrush-pwa-appbar__brand span{font-size:13px}.qrush-pwa-appbar__page{font-size:10px}.qrush-pwa-nav__item{font-size:8px}.qrush-pwa-nav__icon{width:22px;height:22px}.qrush-pwa-drawer{width:min(90vw,350px)}}
@media (orientation:landscape) and (max-height:520px){.qrush-pwa-standalone body.qrush-pwa-has-appbar{padding-top:52px}.qrush-pwa-appbar{height:52px;padding-top:0}.qrush-pwa-nav{height:58px}.qrush-pwa-nav__item{min-height:54px}.qrush-pwa-standalone body.qrush-pwa-has-bottomnav{padding-bottom:58px}}

/* QRUSH PWA 1.12.3 — application chrome requires the current app display context. */
#qrush-pwa-server-shell{display:none}
html.qrush-pwa-app-context #qrush-pwa-server-shell{display:block!important}
html:not(.qrush-pwa-app-context) .qrush-pwa-appbar,html:not(.qrush-pwa-app-context) .qrush-pwa-nav,html:not(.qrush-pwa-app-context) .qrush-pwa-drawer,html:not(.qrush-pwa-app-context) .qrush-pwa-drawer-scrim,html:not(.qrush-pwa-app-context) .qrush-pwa-app-version{display:none!important}
.qrush-pwa-server-shell{display:none!important}
html.qrush-pwa-app-context .qrush-pwa-server-shell.qrush-pwa-appbar{display:grid!important}
html.qrush-pwa-app-context .qrush-pwa-server-shell.qrush-pwa-nav{display:grid!important}
html.qrush-pwa-app-context .qrush-pwa-server-shell.qrush-pwa-drawer{display:block!important}
html.qrush-pwa-app-context .qrush-pwa-server-shell.qrush-pwa-drawer-scrim{display:block!important}
html.qrush-pwa-app-context .qrush-pwa-app-version{display:block!important;position:fixed;right:6px;bottom:calc(67px + env(safe-area-inset-bottom));z-index:2147481999;padding:2px 5px;background:rgba(0,0,0,.48);color:#6f86a4;font:700 8px/1 Arial,sans-serif;border-radius:3px;pointer-events:none}
html.qrush-pwa-app-context body{padding-top:calc(58px + env(safe-area-inset-top));padding-bottom:calc(70px + env(safe-area-inset-bottom))}
html.qrush-pwa-app-context body.qrush-pwa-drawer-open{overflow:hidden}
html.qrush-pwa-app-context .qrush-pwa-hidden-in-app{display:none!important}
@media (display-mode:browser){html.qrush-pwa-app-context .qrush-pwa-nav{display:grid!important}}
@media (orientation:landscape) and (max-height:520px){html.qrush-pwa-app-context body{padding-top:52px;padding-bottom:58px}}

/* 1.8.1: hide the Gantry web menu only in the QRUSH application. */
html.qrush-pwa-app-context .g-offcanvas-toggle,html.qrush-pwa-app-context #g-offcanvas,html.qrush-pwa-app-context [data-offcanvas-toggle],html.qrush-pwa-standalone .g-offcanvas-toggle,html.qrush-pwa-standalone #g-offcanvas{display:none!important;visibility:hidden!important;pointer-events:none!important}
