:root{color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;background:var(--color-canvas, Canvas)}*,*:before,*:after{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}body{min-width:320px;overflow:hidden;color:var(--color-text, CanvasText);background:var(--color-canvas, Canvas);font-family:var(--font-family, system-ui, sans-serif)}button{font:inherit}.pwa-shell{--pwa-shell-visual-height: 100dvh;--pwa-shell-visual-offset-top: 0px;--pwa-shell-navigation-height: 0px;position:relative;isolation:isolate;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;width:100%;min-width:0;height:var(--pwa-shell-visual-height);min-height:min(100svh,var(--pwa-shell-visual-height));transform:translateY(var(--pwa-shell-visual-offset-top));padding-top:env(safe-area-inset-top,0px);overflow:hidden;color:var(--color-text, CanvasText);background:var(--color-canvas, Canvas)}.pwa-shell__announcements{position:relative;z-index:4;grid-row:1;display:grid;gap:var(--space-2, .5rem);padding:var(--space-2, .5rem) max(var(--space-3, .75rem),env(safe-area-inset-right,0px)) 0 max(var(--space-3, .75rem),env(safe-area-inset-left,0px))}.pwa-shell__back-bar{grid-row:2;position:relative;z-index:3;display:flex;align-items:center;padding:var(--space-1, .25rem) max(var(--space-3, .75rem),env(safe-area-inset-right,0px)) var(--space-1, .25rem) max(var(--space-3, .75rem),env(safe-area-inset-left,0px));border-block-end:1px solid var(--color-border, currentColor);background:var(--color-surface, Canvas)}.pwa-shell__back-button{display:inline-flex;align-items:center;gap:var(--space-2, .5rem);min-height:var(--minimum-touch-target, 44px);padding:var(--space-2, .5rem) var(--space-3, .75rem);border:0;border-radius:var(--radius-md, 12px);color:var(--color-text, CanvasText);background:transparent;font-family:var(--font-family, inherit);font-size:var(--type-label-size, .875rem);font-weight:var(--type-label-weight, 600);line-height:var(--type-label-line-height, 1.3);cursor:pointer;touch-action:manipulation;transition:color var(--motion-duration-fast, .12s) var(--motion-easing-standard, ease),background var(--motion-duration-fast, .12s) var(--motion-easing-standard, ease),transform var(--motion-duration-fast, .12s) var(--motion-easing-standard, ease)}@media(hover:hover){.pwa-shell__back-button:hover:not(:disabled){color:var(--color-accent, CanvasText)}}.pwa-shell__back-button:active:not(:disabled){transform:scale(.96)}.pwa-shell__back-button:focus-visible{outline:3px solid var(--color-focus-ring, Highlight);outline-offset:2px}.pwa-shell__back-icon{width:1.25rem;height:1.25rem;flex:none}@media(prefers-reduced-motion:reduce){.pwa-shell__back-button{transition-duration:0s}.pwa-shell__back-button:active:not(:disabled){transform:none}}.pwa-shell__content{--pwa-shell-content-bottom-safe-area: env(safe-area-inset-bottom, 0px);grid-row:3;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;scroll-behavior:smooth;scroll-padding-block:var(--space-4, 1rem) calc(var(--pwa-shell-navigation-height) + var(--pwa-shell-content-bottom-safe-area));padding:var(--space-4, 1rem) max(var(--space-4, 1rem),env(safe-area-inset-right,0px)) calc(var(--space-4, 1rem) + var(--pwa-shell-navigation-height) + var(--pwa-shell-content-bottom-safe-area)) max(var(--space-4, 1rem),env(safe-area-inset-left,0px))}.pwa-shell--navigation-visible:not([data-keyboard-open=true]) .pwa-shell__content{--pwa-shell-content-bottom-safe-area: 0px}.pwa-shell__content:has([data-shell-immersive])~.pwa-shell__navigation,.pwa-shell__content:has([aria-modal=true]:not([hidden]))~.pwa-shell__navigation{display:none}.pwa-shell .pwa-shell__content:has([data-shell-immersive]){--pwa-shell-content-bottom-safe-area: env(safe-area-inset-bottom, 0px)}.pwa-shell--fab-visible .pwa-shell__content{padding-block-end:calc(var(--space-4, 1rem) + 4rem + var(--pwa-shell-navigation-height) + var(--pwa-shell-content-bottom-safe-area))}.pwa-shell__route{width:min(100%,44rem);min-width:0;min-height:100%;margin-inline:auto}.pwa-shell--catalog-loading .pwa-shell__route{display:grid;place-items:center}.pwa-shell__navigation{position:relative;z-index:3;grid-row:4;min-width:0;padding:0 env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);background:var(--color-surface, Canvas)}.pwa-shell-route-fade-enter-active,.pwa-shell-route-fade-leave-active,.pwa-shell-route-fade-appear-active{transition:opacity var(--motion-duration-normal, .18s) var(--motion-easing-standard, ease),transform var(--motion-duration-normal, .18s) var(--motion-easing-standard, ease);will-change:opacity,transform}.pwa-shell-route-fade-enter-from,.pwa-shell-route-fade-appear-from{opacity:0;transform:translateY(4px)}.pwa-shell-route-fade-leave-to{opacity:0;transform:translateY(-4px)}@media(prefers-reduced-motion:reduce){.pwa-shell-route-fade-enter-active,.pwa-shell-route-fade-leave-active,.pwa-shell-route-fade-appear-active{transition-duration:0s}.pwa-shell-route-fade-enter-from,.pwa-shell-route-fade-appear-from,.pwa-shell-route-fade-leave-to{transform:none}}.pwa-shell__fab{position:fixed;z-index:4;inset-inline-end:max(var(--space-4, 1rem),env(safe-area-inset-right,0px));inset-block-end:calc(4.75rem + env(safe-area-inset-bottom,0px));display:grid;place-items:center;width:3.25rem;height:3.25rem;padding:0;border:0;border-radius:var(--radius-round, 50%);color:var(--color-surface, Canvas);background:var(--color-accent, Highlight);box-shadow:0 6px 18px color-mix(in oklab,var(--color-accent, Highlight) 32%,transparent),var(--elevation-control, 0 4px 12px rgba(0, 0, 0, .12));cursor:pointer;touch-action:manipulation;transition:background var(--motion-duration-fast, .12s) var(--motion-easing-standard, ease),box-shadow var(--motion-duration-normal, .22s) var(--motion-easing-standard, ease),transform var(--motion-duration-fast, .12s) var(--motion-easing-standard, ease)}.pwa-shell__fab>svg{width:1.5rem;height:1.5rem}@media(hover:hover){.pwa-shell__fab:hover:not(:disabled){background:color-mix(in oklab,var(--color-text, CanvasText) 10%,var(--color-accent, Highlight));box-shadow:0 8px 22px color-mix(in oklab,var(--color-accent, Highlight) 40%,transparent),0 0 0 6px color-mix(in oklab,var(--color-accent, Highlight) 18%,transparent)}}.pwa-shell__fab:active:not(:disabled){transform:scale(.92)}.pwa-shell__fab:focus-visible{outline:3px solid var(--color-focus-ring, Highlight);outline-offset:3px}@media(prefers-reduced-motion:reduce){.pwa-shell__fab{transition-duration:0s}.pwa-shell__fab:active:not(:disabled){transform:none}}.pwa-shell[data-keyboard-open=true] .pwa-shell__navigation{display:none}.pwa-shell-status{display:grid;align-content:center;justify-items:start;width:min(100%,34rem);min-height:min(25rem,70dvh);margin-inline:auto;padding:clamp(var(--space-5, 1.25rem),6vw,var(--space-8, 2rem));overflow-wrap:anywhere;border:1px solid var(--color-border, color-mix(in srgb, CanvasText 18%, transparent));border-radius:var(--radius-lg, 1.25rem);background:var(--color-surface, Canvas);box-shadow:var(--elevation-card, 0 .75rem 2.5rem color-mix(in srgb, CanvasText 10%, transparent))}.pwa-shell-status h1{max-width:24ch;margin:0;font-size:var(--type-title-size, clamp(1.5rem, 7vw, 2.125rem));font-weight:var(--type-title-weight, 700);line-height:var(--type-title-line-height, 1.15);letter-spacing:var(--type-title-letter-spacing, -.02em);text-wrap:balance}.pwa-shell-status p{max-width:58ch;margin-block:var(--space-3, .75rem) 0;color:var(--color-muted, color-mix(in srgb, CanvasText 72%, transparent));font-size:var(--type-body-size, 1rem);font-weight:var(--type-body-weight, 400);line-height:var(--type-body-line-height, 1.55);letter-spacing:var(--type-body-letter-spacing, 0)}.pwa-shell-status__actions{display:flex;flex-wrap:wrap;gap:var(--space-3, .75rem);margin-top:var(--space-5, 1.25rem)}.pwa-shell-status__actions button,.pwa-shell-update button,.pwa-shell-install button{min-width:var(--minimum-touch-target, 44px);min-height:var(--minimum-touch-target, 44px);padding:var(--space-2, .5rem) var(--space-4, 1rem);border:1px solid var(--color-border, ButtonBorder);border-radius:var(--radius-pill, 999px);color:var(--color-text, ButtonText);background:var(--color-elevated, ButtonFace);cursor:pointer}.pwa-shell-status__actions button:focus-visible,.pwa-shell-update button:focus-visible,.pwa-shell-install button:focus-visible,[data-shell-focus-target]:focus-visible{outline:3px solid var(--color-focus-ring, Highlight);outline-offset:3px}.pwa-shell-status__actions button:disabled,.pwa-shell-update button:disabled,.pwa-shell-install button:disabled{cursor:wait;opacity:.72}.pwa-shell-banner,.pwa-shell-update,.pwa-shell-install{display:flex;align-items:center;justify-content:center;gap:var(--space-2, .5rem);min-height:var(--minimum-touch-target, 44px);padding:var(--space-2, .5rem) var(--space-3, .75rem);overflow-wrap:anywhere;border:1px solid var(--color-border, color-mix(in srgb, CanvasText 18%, transparent));border-radius:var(--radius-md, .875rem);color:var(--color-text, CanvasText);background:var(--color-surface, Canvas);font-size:var(--type-caption-size, .875rem);font-weight:var(--type-caption-weight, 400);line-height:var(--type-caption-line-height, 1.4);letter-spacing:var(--type-caption-letter-spacing, normal);text-align:center}.pwa-shell-update,.pwa-shell-install{justify-content:space-between;flex-wrap:wrap}.pwa-shell-banner__indicator{width:.65rem;height:.65rem;flex:0 0 auto;border:2px solid currentColor;border-radius:50%}.pwa-shell-spinner{width:2rem;height:2rem;margin-bottom:var(--space-4, 1rem);border:3px solid color-mix(in srgb,CanvasText 18%,transparent);border-top-color:var(--color-accent, Highlight);border-radius:50%;animation:pwa-shell-spin .7s linear infinite}@keyframes pwa-shell-spin{to{transform:rotate(1turn)}}@media(max-width:359px){.pwa-shell__content{padding-inline:max(var(--space-3, .75rem),env(safe-area-inset-left,0px)) max(var(--space-3, .75rem),env(safe-area-inset-right,0px))}.pwa-shell-status{padding:var(--space-4, 1rem)}.pwa-shell-update,.pwa-shell-install{align-items:stretch}.pwa-shell-update button,.pwa-shell-install button{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media(forced-colors:active){.pwa-shell-status__actions button:focus-visible,.pwa-shell-update button:focus-visible,.pwa-shell-install button:focus-visible,[data-shell-focus-target]:focus-visible{outline-color:Highlight}}.pwa-shell-card.pwa-shell-update,.pwa-shell-card.pwa-shell-install{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-2, .5rem) var(--space-3, .75rem);align-items:center;padding:var(--space-3, .75rem) var(--space-4, 1rem);text-align:start;font-size:var(--type-body-size, 1rem);border-color:color-mix(in srgb,var(--color-accent, Highlight) 35%,var(--color-border, CanvasText));border-radius:var(--radius-lg, 1rem)}.pwa-shell-card.pwa-shell-update:has(>.pwa-shell-card__action),.pwa-shell-card.pwa-shell-install:has(>.pwa-shell-card__action){grid-template-columns:auto minmax(0,1fr) auto}.pwa-shell-card__glyph{width:2.25rem;height:2.25rem;color:var(--color-accent, Highlight)}.pwa-shell-card__copy{min-width:0;font-weight:var(--type-label-weight, 600)}.pwa-shell-card .pwa-shell-card__action{display:inline-flex;gap:.125rem;align-items:center;padding:var(--space-2, .5rem) 0 var(--space-2, .5rem) var(--space-2, .5rem);color:var(--color-accent, Highlight);font-weight:var(--type-label-weight, 600);white-space:nowrap;background:transparent;border-color:transparent}.pwa-shell-card .pwa-shell-card__action>svg{width:1.25rem;height:1.25rem}@media(max-width:22.49rem){.pwa-shell-card.pwa-shell-update:has(>.pwa-shell-card__action),.pwa-shell-card.pwa-shell-install:has(>.pwa-shell-card__action){grid-template-columns:auto minmax(0,1fr)}.pwa-shell-card .pwa-shell-card__action{grid-column:2;justify-self:start;padding-inline-start:0}}
