body.stream-collect-guest #bottom-nav { display:none !important; }
#mobile-stream-dashboard-permissions[hidden], [data-card-stripe][hidden] { display:none !important; }
#mobile-stream-control-sheet [data-card-mode][aria-pressed="true"] { background:#111 !important; color:#fff !important; -webkit-text-fill-color:#fff !important; }
#mobile-stream-control-sheet .mobile-stream-control-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
#stream-collect-bar { position:fixed; z-index:1100; bottom:calc(16px + env(safe-area-inset-bottom)); left:16px; right:16px; max-width:448px; margin-inline:auto; display:flex; gap:10px; justify-content:flex-end; pointer-events:none; }
#stream-collect-bar[hidden], #stream-collect-bar button[hidden] { display:none; }
#stream-collect-bar button { box-sizing:border-box; height:54px; min-height:54px; border:1px solid rgba(255,255,255,.65); background:rgba(255,255,255,.76) !important; background-image:none !important; color:#111 !important; -webkit-text-fill-color:#111 !important; border-radius:999px; font-family:inherit; font-weight:700; box-shadow:0 6px 24px #0002,inset 0 1px 0 #ffffff80; -webkit-backdrop-filter:blur(22px) saturate(150%); backdrop-filter:blur(22px) saturate(150%); pointer-events:auto; cursor:pointer; display:flex; align-items:center; transition:transform .15s; }
#stream-collect-bar button:active { transform:scale(.97); }
#stream-collect-bar button:focus-visible { outline:2px solid #518bff; outline-offset:4px; }
#stream-collect-bar [data-collect] { flex:1; min-width:0; padding:6px 18px 6px 6px; gap:10px; }
#stream-collect-bar .stream-collect-avatar { position:relative; display:grid; place-items:center; overflow:hidden; flex:0 0 40px; width:40px; height:40px; border-radius:50%; background:#ffffff60; font-size:16px; }
#stream-collect-bar .stream-collect-avatar img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border-radius:50%; }
#stream-collect-bar .stream-collect-label { flex:1; text-align:left; font-size:14px; line-height:1.2; letter-spacing:0; }
#stream-collect-bar .stream-collect-chevron { width:6px; height:6px; flex:0 0 6px; border-top:1.5px solid currentColor; border-right:1.5px solid currentColor; transform:rotate(45deg); opacity:.6; }
#stream-collect-bar [data-chat] { position:relative; flex:0 0 54px; width:54px; padding:0; justify-content:center; font-size:21px; }
#stream-collect-bar .stream-chat-unread { position:absolute; top:2px; right:2px; min-width:18px; height:18px; padding:0 5px; border-radius:999px; background:#f04b2f; color:#fff !important; -webkit-text-fill-color:#fff !important; font-family:inherit; font-size:10px; font-weight:800; letter-spacing:0; line-height:18px; text-align:center; box-shadow:0 0 0 2px rgba(255,255,255,.76); }
#stream-collect-bar .stream-chat-unread[hidden] { display:none; }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  #stream-collect-bar button { background:rgba(255,255,255,.95) !important; }
}

html body #stream-collect-bar .stream-collect-label { display:grid; gap:3px; }
html body #stream-collect-bar .stream-collect-label strong { font-size:14px; font-weight:800; }
html body #stream-collect-bar .stream-collect-label small { font-size:11px; color:#737983 !important; -webkit-text-fill-color:#737983 !important; font-weight:500; }
html body #stream-collect-bar button { height:58px; }

/* The collect sheet, in the language of the login sheet and the join page:
   the app's picture across the top with its identity on it, paper below,
   mono eyebrows, filled pills, one black button at the foot. Doubled id and
   !important throughout because the page repaints anything fixed. */
html body #stream-collect-sheet.stream-collect-sheet {
  position:fixed !important; inset:0 !important; width:100% !important; max-width:none !important; height:100% !important; max-height:none !important;
  margin:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important; box-shadow:none !important;
  display:flex !important; flex-direction:column !important; overflow:hidden !important;
  background:#FBFBF9 !important; color:#111214 !important; -webkit-text-fill-color:#111214 !important; color-scheme:light !important;
  font-family:var(--font-family, Manrope), -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif !important;
}
html body #stream-collect-sheet:not([open]) { display:none !important; }
html body #stream-collect-sheet::backdrop { background:#0009; }
html body #stream-collect-sheet * { box-sizing:border-box; letter-spacing:0; }
html body #stream-collect-sheet *:not(.fas):not(.sc-bar-title):not(.sc-eyebrow):not(.sc-label):not(.sc-heading small):not([data-pay]):not(.sc-totals span) { font-family:var(--font-family, Manrope), -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif !important; }
html body #stream-collect-sheet .fas { font-family:"Font Awesome 6 Free","Font Awesome 5 Free",FontAwesome !important; font-weight:900 !important; }
html body #stream-collect-sheet [hidden] { display:none !important; }
html body #stream-collect-sheet button { backdrop-filter:none !important; -webkit-backdrop-filter:none !important; filter:none !important; text-shadow:none !important; }

/* Picture on top, identity on it */
html body #stream-collect-sheet .sc-art { position:relative !important; flex:1 1 40vh !important; min-height:250px !important; display:flex !important; flex-direction:column !important; justify-content:space-between !important; background-color:#111214 !important; background-size:cover !important; background-position:center !important; background-repeat:no-repeat !important; overflow:hidden !important; }
html body #stream-collect-sheet .sc-art::after { content:"" !important; position:absolute !important; inset:0 !important; pointer-events:none !important; background:linear-gradient(180deg, rgba(0,0,0,.42) 0%, rgba(0,0,0,0) 32%, rgba(0,0,0,0) 48%, rgba(0,0,0,.82) 100%) !important; }
html body #stream-collect-sheet .sc-bar { position:relative !important; z-index:1 !important; flex:none !important; display:grid !important; grid-template-columns:1fr auto 1fr !important; align-items:center !important; padding:calc(14px + env(safe-area-inset-top, 0px)) 18px 10px !important; }
html body #stream-collect-sheet [data-close] { justify-self:start !important; float:none !important; width:auto !important; height:auto !important; min-height:0 !important; margin:0 !important; padding:8px 0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; font-size:13px !important; font-weight:600 !important; color:rgba(255,255,255,.86) !important; -webkit-text-fill-color:rgba(255,255,255,.86) !important; cursor:pointer; }
html body #stream-collect-sheet .sc-bar-title { justify-self:center !important; font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace !important; font-size:9px !important; font-weight:500 !important; letter-spacing:.14em !important; text-transform:uppercase !important; color:rgba(255,255,255,.72) !important; -webkit-text-fill-color:rgba(255,255,255,.72) !important; white-space:nowrap !important; }
html body #stream-collect-sheet .sc-identity { position:relative !important; z-index:1 !important; padding:0 18px 14px !important; }
html body #stream-collect-sheet .sc-identity-name { display:flex !important; align-items:center !important; gap:10px !important; font-size:calc(34px * var(--identity-scale, 1)) !important; line-height:1.05 !important; font-weight:800 !important; letter-spacing:.02em !important; text-transform:uppercase !important; color:#fff !important; -webkit-text-fill-color:#fff !important; text-shadow:0 1px 12px rgba(0,0,0,.35); }
html body #stream-collect-sheet .sc-identity-name i { font-size:18px !important; color:#22C55E !important; -webkit-text-fill-color:#22C55E !important; }
html body #stream-collect-sheet .sc-identity-role { display:flex !important; align-items:center !important; flex-wrap:wrap !important; gap:8px !important; margin-top:6px !important; font-size:13px !important; font-weight:500 !important; }
html body #stream-collect-sheet .sc-identity-role span, html body #stream-collect-sheet .sc-identity-org span { color:rgba(255,255,255,.84) !important; -webkit-text-fill-color:rgba(255,255,255,.84) !important; }
html body #stream-collect-sheet .sc-identity-role i { width:4px !important; height:4px !important; border-radius:50% !important; background:rgba(255,255,255,.5) !important; display:inline-block !important; }
html body #stream-collect-sheet .sc-identity-rule { height:1px !important; margin:12px 0 !important; border:0 !important; background:rgba(255,255,255,.22) !important; }
html body #stream-collect-sheet .sc-identity-org { display:flex !important; align-items:center !important; flex-wrap:wrap !important; gap:10px !important; font-size:13px !important; font-weight:500 !important; }
html body #stream-collect-sheet .sc-identity-place { display:inline-flex !important; align-items:center !important; gap:5px !important; }
html body #stream-collect-sheet .sc-identity-place i { font-size:12px !important; color:rgba(255,255,255,.86) !important; -webkit-text-fill-color:rgba(255,255,255,.86) !important; }

/* The paper below */
html body #stream-collect-sheet .sc-body { flex:none !important; display:flex !important; flex-direction:column !important; gap:12px !important; padding:16px 18px 8px !important; }
html body #stream-collect-sheet .sc-heading { display:flex !important; flex-direction:column !important; gap:4px !important; }
html body #stream-collect-sheet .sc-heading small { display:none !important; }
html body #stream-collect-sheet h2 { margin:0 2px !important; font-size:26px !important; line-height:1.1 !important; font-weight:800 !important; letter-spacing:-.03em !important; color:#111214 !important; -webkit-text-fill-color:#111214 !important; }
html body #stream-collect-sheet p { margin:0 !important; font-size:12.5px !important; line-height:1.45 !important; font-weight:500 !important; color:#63635F !important; -webkit-text-fill-color:#63635F !important; }
html body #stream-collect-sheet .sc-card-intro { display:flex !important; gap:14px !important; align-items:center !important; margin:2px 0 0 !important; padding:12px !important; border:1px solid #EAEAE6 !important; border-radius:18px !important; background:#fff !important; box-shadow:0 1px 2px rgba(17,18,20,.03) !important; }
html body #stream-collect-sheet .sc-card-intro > img { width:78px !important; height:100px !important; flex:none !important; border-radius:14px !important; object-fit:cover !important; background:#111214 !important; }
html body #stream-collect-sheet .sc-card-intro > div { min-width:0 !important; display:flex !important; flex-direction:column !important; gap:4px !important; }
html body #stream-collect-sheet .sc-card-intro strong { font-size:15px !important; font-weight:800 !important; letter-spacing:-.01em !important; color:#111214 !important; -webkit-text-fill-color:#111214 !important; }
html body #stream-collect-sheet .sc-benefits { list-style:none !important; padding:0 !important; margin:4px 0 0 !important; display:grid !important; gap:6px !important; }
html body #stream-collect-sheet .sc-benefits li { display:flex !important; align-items:center !important; gap:8px !important; font-size:12.5px !important; font-weight:600 !important; line-height:1.35 !important; color:#111214 !important; -webkit-text-fill-color:#111214 !important; }
html body #stream-collect-sheet .sc-benefits li::before { content:'✓' !important; flex:none !important; width:20px !important; height:20px !important; border-radius:7px !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; background:rgba(15,191,164,.14) !important; color:#0B8F7B !important; -webkit-text-fill-color:#0B8F7B !important; font-size:11px !important; font-weight:800 !important; margin:0 !important; }
html body #stream-collect-sheet .sc-eyebrow, html body #stream-collect-sheet .sc-label { margin:6px 4px 0 !important; font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace !important; font-size:9px !important; font-weight:500 !important; letter-spacing:.14em !important; text-transform:uppercase !important; color:#70706B !important; -webkit-text-fill-color:#70706B !important; }

/* One-time / Monthly: the same two-pill track as Log in / Become a member */
html body #stream-collect-sheet .stream-collect-frequency { margin:0 !important; display:flex !important; flex-direction:column !important; gap:10px !important; }
html body #stream-collect-sheet .sc-frequency-tabs { display:grid !important; grid-template-columns:1fr 1fr !important; gap:4px !important; padding:4px !important; border-radius:999px !important; background:#EFEFEB !important; }
html body #stream-collect-sheet .sc-frequency-tabs button { height:38px !important; min-height:0 !important; margin:0 !important; padding:0 !important; border:0 !important; border-radius:999px !important; background:transparent !important; box-shadow:none !important; font-size:13px !important; font-weight:700 !important; color:#63635F !important; -webkit-text-fill-color:#63635F !important; cursor:pointer; }
html body #stream-collect-sheet .sc-frequency-tabs button[aria-pressed="true"] { background:#111214 !important; color:#FBFBF9 !important; -webkit-text-fill-color:#FBFBF9 !important; box-shadow:0 6px 14px -8px rgba(17,18,20,.5) !important; }
html body #stream-collect-sheet .stream-collect-frequency p { margin:0 4px !important; }
html body #stream-collect-sheet .sc-manage { margin:0 !important; }
html body #stream-collect-sheet .sc-manage summary { font-size:12.5px !important; font-weight:700 !important; color:#111214 !important; -webkit-text-fill-color:#111214 !important; cursor:pointer; padding:2px 4px !important; }
html body #stream-collect-sheet .sc-manage button { display:block !important; width:100% !important; height:44px !important; margin:8px 0 0 !important; padding:0 14px !important; border:1px solid #EAEAE6 !important; border-radius:14px !important; background:#fff !important; font-size:13px !important; font-weight:700 !important; color:#111214 !important; -webkit-text-fill-color:#111214 !important; }

/* Amount pills and the other-amount field */
html body #stream-collect-sheet .stream-collect-amounts { display:grid !important; grid-template-columns:repeat(3, 1fr) !important; gap:8px !important; margin:0 !important; }
html body #stream-collect-sheet .stream-collect-amounts button { height:50px !important; margin:0 !important; padding:0 !important; border:1.5px solid #EAEAE6 !important; border-radius:16px !important; background:#fff !important; font-size:15px !important; font-weight:800 !important; letter-spacing:-.01em !important; color:#111214 !important; -webkit-text-fill-color:#111214 !important; cursor:pointer; }
html body #stream-collect-sheet .stream-collect-amounts button[aria-pressed="true"] { background:#111214 !important; border-color:#111214 !important; color:#FBFBF9 !important; -webkit-text-fill-color:#FBFBF9 !important; }
html body #stream-collect-sheet .sc-custom { display:flex !important; flex-direction:column !important; gap:6px !important; margin:0 !important; }
html body #stream-collect-sheet .sc-field { display:flex !important; align-items:center !important; gap:8px !important; height:52px !important; padding:0 16px !important; border-radius:16px !important; background:#F4F4F1 !important; }
html body #stream-collect-sheet .sc-field b { font-size:16px !important; font-weight:700 !important; color:#63635F !important; -webkit-text-fill-color:#63635F !important; }
html body #stream-collect-sheet input { flex:1 1 auto !important; width:auto !important; min-width:0 !important; height:100% !important; margin:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important; outline:none !important; box-shadow:none !important; background:transparent !important; font-size:16px !important; font-weight:600 !important; color:#111214 !important; -webkit-text-fill-color:#111214 !important; caret-color:#111214 !important; -webkit-appearance:none !important; appearance:none !important; }
html body #stream-collect-sheet input:disabled { color:#8A8A84 !important; -webkit-text-fill-color:#8A8A84 !important; }

/* Totals as the plan card */
html body #stream-collect-sheet .sc-totals { display:flex !important; flex-direction:column !important; gap:8px !important; margin:0 !important; padding:14px !important; border:1.5px solid #111214 !important; border-radius:18px !important; background:#fff !important; }
html body #stream-collect-sheet .sc-totals > div { display:flex !important; align-items:baseline !important; justify-content:space-between !important; gap:12px !important; }
html body #stream-collect-sheet .sc-totals span { font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace !important; font-size:10px !important; letter-spacing:.1em !important; text-transform:uppercase !important; color:#70706B !important; -webkit-text-fill-color:#70706B !important; }
html body #stream-collect-sheet .sc-totals strong { font-size:14px !important; font-weight:700 !important; color:#111214 !important; -webkit-text-fill-color:#111214 !important; }
html body #stream-collect-sheet .sc-totals-grand { padding-top:8px !important; border-top:1px solid #EFEFEB !important; }
html body #stream-collect-sheet .sc-totals-grand strong { font-size:22px !important; font-weight:800 !important; letter-spacing:-.03em !important; }
html body #stream-collect-sheet .sc-totals-grand span { color:#111214 !important; -webkit-text-fill-color:#111214 !important; }
html body #stream-collect-sheet [data-payment] { margin:0 !important; }
html body #stream-collect-sheet [data-payment]:not(:empty) { margin-top:4px !important; }
html body #stream-collect-sheet [data-status] { margin:0 4px !important; font-size:11.5px !important; color:#8A8A84 !important; -webkit-text-fill-color:#8A8A84 !important; }
html body #stream-collect-sheet [data-status]:empty { display:none !important; }

/* The foot: Apple Pay when it can, then the one black button */
html body #stream-collect-sheet .sc-footer { flex:none !important; margin-top:auto !important; display:flex !important; flex-direction:column !important; gap:10px !important; padding:10px 18px calc(14px + env(safe-area-inset-bottom, 0px)) !important; background:linear-gradient(180deg, rgba(251,251,249,0), #FBFBF9 30%) !important; }
html body #stream-collect-sheet [data-apple-pay] { min-height:44px !important; }
html body #stream-collect-sheet button[data-pay], html body #stream-collect-sheet button[data-pay]:disabled { display:flex !important; align-items:center !important; justify-content:center !important; width:100% !important; height:54px !important; margin:0 !important; padding:0 !important; border:0 !important; border-radius:16px !important; background:#111214 !important; box-shadow:0 12px 24px -12px rgba(17,18,20,.55) !important; font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace !important; font-size:12px !important; font-weight:500 !important; letter-spacing:.22em !important; text-transform:uppercase !important; color:#FBFBF9 !important; -webkit-text-fill-color:#FBFBF9 !important; cursor:pointer; }
html body #stream-collect-sheet button[data-pay]:disabled { opacity:.55 !important; }
html body #stream-collect-sheet [data-recover] { width:auto !important; height:auto !important; margin:0 auto !important; padding:6px 0 !important; border:0 !important; background:transparent !important; box-shadow:none !important; font-size:12.5px !important; font-weight:700 !important; color:#111214 !important; -webkit-text-fill-color:#111214 !important; }
html body #stream-collect-sheet .sc-footer small { text-align:center !important; font-size:11px !important; color:#8A8A84 !important; -webkit-text-fill-color:#8A8A84 !important; }

/* The whole page scrolls as one, hero and all, so the foot never covers the form. */
html body #stream-collect-sheet.stream-collect-sheet { overflow:hidden auto !important; }
/* The picture takes whatever the content leaves, as on the login sheet: a
   short free sheet gets a taller photo instead of a run of blank paper. */
html body #stream-collect-sheet .sc-art { flex:1 1 40vh !important; height:auto !important; min-height:40vh !important; }

/* The dialog hands focus to Not now on open; no ring for a tap. Spinner off
   the amount field. */
html body #stream-collect-sheet [data-close]:focus, html body #stream-collect-sheet [data-close]:focus-visible { outline:none !important; box-shadow:none !important; }
html body #stream-collect-sheet input::-webkit-inner-spin-button, html body #stream-collect-sheet input::-webkit-outer-spin-button { -webkit-appearance:none !important; appearance:none !important; margin:0 !important; }
html body #stream-collect-sheet input[type="number"] { -moz-appearance:textfield !important; }

/* What you get, with the card preview folded under it */
html body #stream-collect-sheet .sc-perks { display:flex !important; flex-direction:column !important; gap:10px !important; padding:14px !important; border:1px solid #EAEAE6 !important; border-radius:18px !important; background:#fff !important; box-shadow:0 1px 2px rgba(17,18,20,.03) !important; }
html body #stream-collect-sheet .sc-perks .sc-benefits { margin:0 !important; gap:9px !important; }
html body #stream-collect-sheet .sc-perks .sc-benefits li { font-size:13.5px !important; font-weight:700 !important; }
html body #stream-collect-sheet .sc-preview-btn { display:flex !important; align-items:center !important; justify-content:space-between !important; width:100% !important; height:52px !important; margin:0 !important; padding:0 16px 0 18px !important; border:1.5px solid #111214 !important; border-radius:16px !important; background:#fff !important; box-shadow:0 1px 2px rgba(17,18,20,.04) !important; cursor:pointer; }
html body #stream-collect-sheet .sc-preview-btn span { font-size:14.5px !important; font-weight:800 !important; letter-spacing:-.01em !important; color:#111214 !important; -webkit-text-fill-color:#111214 !important; }
html body #stream-collect-sheet .sc-preview-btn i { font-style:normal !important; font-size:18px !important; line-height:1 !important; color:#63635F !important; -webkit-text-fill-color:#63635F !important; }
html body #stream-collect-sheet .sc-preview { margin:0 !important; }
/* The pass front inside the sheet: the dashboard stylesheet draws it; these
   keep the page's repaint off its ink and size it to the sheet. */
html body #stream-collect-sheet .sd-wallet-face { margin:0 !important; max-width:none !important; }
html body #stream-collect-sheet .sd-wallet-face * { color:var(--wallet-ink,#fff) !important; -webkit-text-fill-color:var(--wallet-ink,#fff) !important; }
html body #stream-collect-sheet .sd-wallet-face small { color:var(--wallet-label,#d1d1d6) !important; -webkit-text-fill-color:var(--wallet-label,#d1d1d6) !important; }
html body #stream-collect-sheet .sd-wallet-field span { font-weight:400 !important; }

/* The number, loud: this is the one thing about the card that is theirs alone. */
html body #stream-collect-sheet .sc-number { display:flex !important; align-items:center !important; gap:14px !important; padding:14px 16px !important; border-radius:18px !important; background:#111214 !important; box-shadow:0 12px 24px -14px rgba(17,18,20,.6) !important; }
html body #stream-collect-sheet .sc-number b { flex:none !important; font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace !important; font-size:26px !important; font-weight:600 !important; letter-spacing:-.02em !important; color:#FBFBF9 !important; -webkit-text-fill-color:#FBFBF9 !important; white-space:nowrap !important; }
html body #stream-collect-sheet .sc-number span { font-size:12px !important; line-height:1.4 !important; font-weight:500 !important; color:rgba(255,255,255,.72) !important; -webkit-text-fill-color:rgba(255,255,255,.72) !important; }
html body #stream-collect-sheet .sc-number strong { font-weight:800 !important; color:#FBFBF9 !important; -webkit-text-fill-color:#FBFBF9 !important; }
/* And on the pass itself */
html body #stream-collect-sheet .sd-wallet-face header .sd-wallet-field span { font-size:26px !important; font-weight:800 !important; line-height:1 !important; }
html body #stream-collect-sheet .sd-wallet-face header .sd-wallet-field { align-items:flex-end !important; }

/* Free card: Google Wallet on the left, Apple Wallet on the right. */
html body #stream-collect-sheet .sc-wallets { display:flex !important; flex-direction:row !important; align-items:center !important; justify-content:center !important; gap:10px !important; }
html body #stream-collect-sheet .sc-wallet-badge, html body #stream-collect-sheet .sc-wallet-badge:disabled { display:flex !important; align-items:center !important; justify-content:center !important; flex:1 1 0 !important; min-width:0 !important; width:auto !important; height:50px !important; margin:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; cursor:pointer; }
html body #stream-collect-sheet .sc-wallet-badge:disabled { opacity:.55 !important; }
html body #stream-collect-sheet .sc-wallet-badge img { width:auto !important; height:100% !important; max-width:100% !important; object-fit:contain !important; }

/* Last word on hidden: the component rules above set display with !important
   at the same weight, so this one carries the class too and comes last. */
html body #stream-collect-sheet.stream-collect-sheet [hidden], html body #stream-collect-sheet.stream-collect-sheet .sc-footer [hidden] { display:none !important; }
