.pwa-install{align-items:center;gap:var(--space-1);min-height:44px;padding:0 var(--space-2);color:var(--color-primary);font:inherit;font-size:var(--text-xs);font-weight:var(--weight-semibold);cursor:pointer;touch-action:manipulation;background:0 0;border:0;display:inline-flex}.pwa-install[hidden]{display:none}.pwa-install svg{width:14px;height:14px}.pwa-install:hover{text-decoration:underline}.pwa-install:focus-visible,.pwa-button:focus-visible,.pwa-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-button)}.pwa-dialog{width:min(28rem, calc(100vw - 2 * var(--space-4)));border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);box-shadow:var(--shadow-card);font-family:var(--font-brand-sans);padding:0}.pwa-dialog::backdrop{background-color:color-mix(in srgb, var(--color-text) 45%, transparent)}.pwa-dialog__body{padding:var(--space-4)}.pwa-dialog__title{margin:0 0 var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.pwa-dialog__lead,.pwa-dialog__note{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--color-text-soft)}.pwa-steps{margin:0 0 var(--space-3);padding-left:var(--space-4);font-size:var(--text-sm);line-height:1.5}.pwa-steps li+li{margin-top:var(--space-1)}.pwa-dialog__actions{justify-content:flex-end;display:flex}.pwa-button{min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-button);background:var(--color-primary);color:var(--color-bg);font:inherit;font-size:var(--text-base);font-weight:var(--weight-semibold);cursor:pointer;touch-action:manipulation;border:0}.pwa-link{min-height:44px;padding:0 var(--space-2);color:var(--color-primary);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;touch-action:manipulation;background:0 0;border:0}.pwa-update{left:50%;bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));z-index:60;align-items:center;gap:var(--space-2) var(--space-3);max-width:calc(100vw - 2 * var(--space-4));padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);box-shadow:var(--shadow-card);font-family:var(--font-brand-sans);font-size:var(--text-sm);flex-wrap:wrap;display:flex;position:fixed;transform:translate(-50%)}.pwa-update[hidden],.pwa-titlebar{display:none}@media (display-mode:window-controls-overlay){.fi-topbar{app-region:drag;-webkit-app-region:drag;padding-inline-start:max(var(--space-2), env(titlebar-area-x,0px));padding-inline-end:calc(100vw - env(titlebar-area-x,0px) - env(titlebar-area-width,100vw) + var(--space-2))}.fi-topbar a,.fi-topbar button,.fi-topbar input,.fi-topbar select,.fi-topbar [role=button],.fi-topbar [x-data]>*{app-region:no-drag;-webkit-app-region:no-drag}body:not(:has(.fi-topbar)) .pwa-titlebar{z-index:50;align-items:center;gap:var(--space-2);width:env(titlebar-area-width,100%);height:env(titlebar-area-height,33px);padding-inline:var(--space-3);background-color:var(--ui-navy);color:var(--color-bg);font-family:var(--font-brand-sans);font-size:var(--text-xs);font-weight:var(--weight-semibold);app-region:drag;-webkit-app-region:drag;display:flex;position:fixed;inset-block-start:env(titlebar-area-y,0px);inset-inline-start:env(titlebar-area-x,0px)}body:not(:has(.fi-topbar)) .pwa-titlebar img{object-fit:contain;width:16px;height:16px}body:not(:has(.fi-topbar)){padding-block-start:env(titlebar-area-height,33px)}}
