  /* Text scale: 1 everywhere, bumped on Android (see the early inline
     script) where the same px sizes read noticeably smaller. */
  :root{--fs:1;}
  :root.is-android{--fs:1.1;}
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%;}
  :root{
    --bg:#f2f5f3;
    --panel:#ffffff;
    --panel2:#edf1ef;
    --border:#e5e9e6;
    --text:#16211c;
    --muted:#6c7973;
    --primary:#2371b5;
    --primary2:#70a3cf;
    --primary-rgb:35,113,181;
    --on-primary:#ffffff;
    --primary-ink:#2371b5;
    --navy:#1f2a37;
    --peach:#e5eef6;
    --peach-ink:#1b5a8c;
    --go:#2fae66;
    --stop:#e5484d;
    --timmy-mark-light: url("data:image/png;base64,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");
    --timmy-mark-dark: url("data:image/png;base64,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");
  }
  /* Dark mode is a manual per-device toggle (not OS-driven) — stamped as
     data-theme="dark" on <html> by applyTheme(), read from localStorage
     before first paint by the inline script right after this stylesheet. */
  :root[data-theme="dark"]{
    --bg:#121713;
    --panel:#1a2119;
    --panel2:#212a1f;
    --border:#2c362a;
    --text:#edf2ec;
    --muted:#93a397;
    --primary:#2371b5;
    --primary2:#70a3cf;
    --primary-rgb:35,113,181;
    --on-primary:#ffffff;
    --primary-ink:#70a3cf;
    --navy:#0f1620;
    --peach:#12283a;
    --peach-ink:#70a3cf;
    --go:#3ecb7e;
    --stop:#ff6b70;
  }
  /* This is almost certainly the real "shadow" reported all through this
     launch — a class of bug none of the earlier fixes (reCAPTCHA's badge,
     a leftover box-shadow on the role buttons, HTTP caching) could touch,
     because it isn't in the app's markup or CSS output at all: iOS Safari
     draws its OWN gray tap-highlight rectangle over whatever you touch, on
     every browser/OS in this family, whenever a page doesn't explicitly opt
     out of it. Two things about that default make it match every report
     exactly: it doesn't reliably respect an element's border-radius (so it
     reads as a squared-off "shaded rectangle" sitting near/behind a rounded
     button or pill, not shaped like anything in the actual UI), and it can
     stay stuck on screen after the tap ends until the next scroll/drag
     forces Safari to repaint and clear it — which is exactly "it appears
     sometimes and not others, in different places and sizes" (whatever was
     last tapped, wherever that was) and exactly "dragging the screen makes
     it go away". A hard reinstall was never going to touch this, because
     it was never stale code — every earlier deploy already behaved this
     way. Turning it off everywhere and relying on this app's own
     .active/:active styles (already used throughout onboarding) for tap
     feedback instead of the browser's default one is the standard fix. */
  *{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
  html,body{height:100%;}
  /* No iOS rubber-band: the page itself never drags (header and tab bar
     stay put), and the content area stops at its ends instead of bouncing,
     which used to pull the pinned tabs and message box away from their spots. */
  html,body{overscroll-behavior:none;}
  html{direction:rtl;}
  body{
    margin:0;background:var(--bg);color:var(--text);
    font-family:"Rubik","Segoe UI","Heebo",Arial,sans-serif;
    display:flex;justify-content:center;
    direction:rtl;text-align:right;
  }
  input,textarea,select,button{direction:rtl;text-align:right;font-family:inherit;}
  /* Belt-and-braces alongside the `*` rule above: some WebKit versions
     honor -webkit-tap-highlight-color more reliably when it's set directly
     on the tappable element itself rather than inherited from an ancestor. */
  button,a{-webkit-tap-highlight-color:transparent;}
  #app{width:100%;max-width:480px;min-height:100dvh;display:flex;flex-direction:column;position:relative;background:var(--bg);}
  :root.ios-fullh, :root.ios-fullh body{height:var(--app-h);overflow:hidden;}
  :root.ios-fullh #app{min-height:var(--app-h);height:var(--app-h);}
  :root.ios-fullh #splash, :root.ios-fullh #tutorial-overlay, :root.ios-fullh .confetti-layer{bottom:auto;height:var(--app-h);}

  /* header — top padding includes env(safe-area-inset-top): a plain 16px
     was enough in a normal Safari tab (the browser chrome/URL bar already
     clears the status bar), but the installed home-screen app has no such
     chrome — the page draws all the way under the notch/Dynamic
     Island/status bar unless it reserves that space itself. Without this,
     the badge/academy-name/notification area renders overlapping the real
     iOS status bar right after login — exactly what onboarding's own
     .ob-back-fab already accounts for via the same env() value, just missed
     here on the main app shell's header. */
  header{
    display:flex;align-items:center;gap:13px;
    padding:calc(16px + env(safe-area-inset-top,0px)) 18px 16px;border-bottom:1px solid var(--border);
    background:var(--panel);
  }
  .badge{
    width:46px;height:46px;border-radius:15px;flex:none;
    background:linear-gradient(135deg,var(--primary),var(--primary2));
    display:flex;align-items:center;justify-content:center;
    font-weight:800;color:var(--on-primary);font-size:calc(17px * var(--fs));
    box-shadow:0 6px 14px rgba(var(--primary-rgb),.28);
  }
  header .titles{flex:1;min-width:0;}
  header h1{margin:0;font-size:calc(17px * var(--fs));font-weight:800;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  header .sub{font-size:calc(13px * var(--fs));color:var(--muted);margin-top:1px;}

  /* group switcher */
  .group-bar{padding:10px 18px;border-bottom:1px solid var(--border);background:var(--panel);}
  .group-bar-btn{
    width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;
    background:var(--panel2);border:1px solid var(--border);border-radius:13px;
    padding:11px 14px;font-size:calc(14.5px * var(--fs));font-weight:700;color:var(--text);cursor:pointer;font-family:inherit;
  }
  .group-bar-btn svg{width:15px;height:15px;flex:none;color:var(--muted);}
  #group-sheet{
    position:absolute;inset:0;background:var(--bg);z-index:21;
    display:flex;justify-content:center;padding:20px;overflow-y:auto;
  }
  #group-sheet .box{width:100%;max-width:400px;text-align:right;}
  #group-sheet h2{margin:4px 0 14px;font-size:calc(19px * var(--fs));font-weight:800;}
  .group-row{display:flex;justify-content:space-between;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:13px 14px;margin-bottom:9px;cursor:pointer;box-shadow:0 4px 12px rgba(22,33,28,.04);}
  .group-row-main .wk{font-weight:700;font-size:calc(15px * var(--fs));}
  .group-row-main .dt{font-size:calc(13px * var(--fs));color:var(--muted);margin-top:1px;}
  .group-row-actions{display:flex;gap:6px;flex:none;}
  #group-add-row{display:flex;flex-direction:column;gap:8px;margin-top:6px;padding-top:14px;border-top:1px solid var(--border);}
  #group-add-row input, #group-add-row select{border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:12px;padding:10px 12px;font-size:calc(14.5px * var(--fs));font-family:inherit;}
  #tm-add-team-row input, #tm-add-team-row select{border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:12px;padding:10px 12px;font-size:calc(14.5px * var(--fs));font-family:inherit;}

  main{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:none;padding-bottom:var(--tabbar-h, 72px);}
  .panel{display:none;padding:18px 16px;}
  .panel.active{display:block;}

  .card{
    background:var(--panel);border:1px solid var(--border);
    border-radius:18px;padding:16px;margin-bottom:14px;
    box-shadow:0 6px 16px rgba(22,33,28,.05);
  }
  .eyebrow{display:inline-flex;align-items:center;font-size:calc(13px * var(--fs));font-weight:800;color:var(--peach-ink);background:var(--peach);text-transform:uppercase;letter-spacing:.04em;padding:4px 11px;border-radius:999px;margin:0 0 10px;}
  h2.title{margin:0 0 10px;font-size:calc(16px * var(--fs));font-weight:800;}

  /* academy-wide announcements — reach every team at once, unlike the per-group board/chat */
  #announce-wrap{margin-bottom:4px;}
  .announce-card{
    background:var(--navy);color:#fff;border-radius:16px;padding:13px 14px;margin-bottom:10px;
    display:flex;gap:10px;align-items:flex-start;box-shadow:0 6px 16px rgba(22,33,28,.08);
  }
  .announce-card .an-icon{flex:none;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;}
  .announce-card .an-icon svg{width:16px;height:16px;}
  .announce-card .an-body{flex:1;min-width:0;}
  .announce-card .an-txt{font-size:calc(14.5px * var(--fs));line-height:1.5;white-space:pre-wrap;}
  .announce-card .an-meta{font-size:calc(12px * var(--fs));opacity:.65;margin-top:6px;}
  .announce-card .an-link{display:inline-flex;align-items:center;gap:6px;margin-top:9px;padding:7px 13px;border-radius:999px;background:rgba(255,255,255,.16);color:inherit;font-weight:700;font-size:calc(13px * var(--fs));text-decoration:none;max-width:100%;}
  .announce-card .an-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .announce-card .an-link svg{width:14px;height:14px;flex:none;}
  .announce-card.an-scheduled .an-link, .announce-card.an-archived .an-link{background:var(--peach);color:var(--peach-ink);}
  .announce-card .an-del{flex:none;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.12);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;}
  .announce-card .an-del svg{width:14px;height:14px;}
  /* a scheduled-but-not-yet-posted announcement (coach view only, so they can
     see/cancel it before it goes out) reads as pending, not live — dashed
     border and the panel surface instead of the solid navy "this is showing
     right now" card. */
  .announce-card.an-scheduled{background:var(--panel2);color:var(--text);border:1px dashed var(--border);box-shadow:none;}
  .announce-card.an-scheduled .an-icon{background:rgba(255,122,26,.16);}
  .announce-card.an-scheduled .an-icon svg{color:var(--primary-ink);}
  .announce-card.an-scheduled .an-meta{opacity:.7;}
  .announce-card.an-scheduled .an-del{background:var(--border);color:var(--text);}

  /* updates tab */
  .player-row{display:flex;gap:13px;align-items:center;}
  .ph-sq{
    border-radius:16px;background:linear-gradient(135deg,var(--panel2),var(--border));
    display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:calc(11px * var(--fs));text-align:center;flex:none;
  }
  .player-row .ph-sq{width:62px;height:62px;border-radius:50%;border:3px solid var(--peach);box-shadow:0 4px 12px rgba(var(--primary-rgb),.15);}
  .player-row h3{margin:0 0 3px;font-size:calc(16px * var(--fs));font-weight:800;}
  .player-row p{margin:0;color:var(--muted);font-size:calc(14px * var(--fs));}
  .next-session{display:flex;justify-content:space-between;gap:10px;border-radius:14px;padding:2px;}
  .next-session .lbl{font-size:calc(12px * var(--fs));color:var(--muted);}
  .next-session .val{font-size:calc(14.5px * var(--fs));font-weight:700;}
  .coach-note{border-inline-start:4px solid var(--primary);background:var(--panel2);border-radius:0 14px 14px 0;padding:14px;font-size:calc(15px * var(--fs));line-height:1.5;}

  /* carousels (album + videos) */
  .carousel-wrap{position:relative;}
  .carousel{
    display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px;
  }
  .carousel::-webkit-scrollbar{display:none;}
  .carousel .slide{
    flex:0 0 82%;scroll-snap-align:center;aspect-ratio:4/3;border-radius:18px;overflow:hidden;
    background:linear-gradient(135deg,var(--panel2),var(--border));position:relative;
    display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:calc(13px * var(--fs));cursor:pointer;
  }
  .carousel .slide img{width:100%;height:100%;object-fit:cover;}
  .carousel .slide.placeholder{cursor:default;}
  /* Unlike photos (a swipeable card stack), a video thumbnail reads best as
     a full-width banner — one clip per screen-width, not an 82% peek-card. */
  .carousel .video-slide{flex:0 0 100%;}
  .dots{display:flex;justify-content:center;gap:6px;margin-top:10px;}
  .dots .dot{width:6px;height:6px;border-radius:50%;background:var(--border);transition:background .15s,transform .15s;cursor:pointer;}
  .dots .dot.active{background:var(--primary);transform:scale(1.35);}
  .album-btn{display:block;text-align:center;margin-top:12px;padding:13px;border-radius:999px;background:var(--primary);color:var(--on-primary);font-weight:800;font-size:calc(14.5px * var(--fs));text-decoration:none;box-shadow:0 8px 18px rgba(var(--primary-rgb),.28);}
  .video-slide .play-badge{
    position:absolute;inset:0;margin:auto;width:50px;height:50px;border-radius:50%;
    background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;color:#fff;
  }
  .video-slide .play-badge svg{width:20px;height:20px;}
  .video-slide .slide-caption{
    position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.78));
    color:#fff;font-size:calc(13px * var(--fs));padding:18px 10px 8px;text-align:right;
  }

  /* drills / tactics board */
  .drill-card{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:14px;margin-bottom:14px;box-shadow:0 6px 16px rgba(22,33,28,.05);}
  .drill-card .drow{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;gap:8px;}
  .drill-card .dname{font-weight:800;font-size:calc(15px * var(--fs));}
  .drill-court-wrap{width:100%;max-width:220px;margin:0 auto;}
  .drill-court-wrap svg{width:100%;height:auto;display:block;border-radius:14px;background:#dff0e2;color:rgba(31,42,55,.4);}
  .drill-card .drow2{display:flex;gap:12px;margin-top:10px;justify-content:center;}
  .drill-card .drow2 button.icon-btn{flex:none;}
  /* z-index 29: the drill editor can now be opened from ON TOP OF the
     composer's drill-pick sheet ("יצירת תרגיל חדש", z26, itself opened over
     the composer, z25) as well as from its older entry points (Team
     Management / the global library screen, both z24 or lower) — it needs
     to out-rank every screen it can be reached from, not just the
     lowest one, or the still-visible screen underneath swallows clicks
     meant for the editor. Stays below the lightbox/toast layer (z30+). */
  #drill-editor, #drill-view{
    position:absolute;inset:0;background:var(--bg);z-index:29;display:flex;flex-direction:column;
  }
  .de-header{display:flex;align-items:center;gap:12px;padding:16px 18px;background:var(--navy);color:#fff;}
  .de-header input{flex:1;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;border-radius:12px;padding:10px 12px;font-size:calc(14.5px * var(--fs));font-family:inherit;}
  .de-header input::placeholder{color:rgba(255,255,255,.55);}
  /* an <svg> with only a viewBox (no width/height) collapses to 0x0 as a
     flex child in some browsers — always give header back-icons an explicit
     size so they stay clickable. */
  .de-header button svg{width:20px;height:20px;flex:none;opacity:.85;}
  .de-body{flex:1;overflow-y:auto;padding:18px;}
  .drill-editor-court{max-width:280px;margin:0 auto 14px;touch-action:none;}
  .drill-editor-court svg{width:100%;height:auto;display:block;border-radius:16px;background:#dff0e2;cursor:crosshair;color:rgba(31,42,55,.4);touch-action:none;}
  .de-toolbar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;}
  .de-tool{border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:11px;padding:9px 11px;font-size:calc(13px * var(--fs));cursor:pointer;font-family:inherit;}
  .de-tool.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary);font-weight:700;}
  .de-legend{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;font-size:calc(12px * var(--fs));color:var(--muted);}
  .de-legend span{display:inline-flex;align-items:center;gap:5px;}
  .de-legend i{display:inline-block;width:16px;height:0;border-top:2px solid;}
  .de-actions{display:flex;gap:8px;}
  .de-actions button{flex:1;}
  .de-footer{padding:14px 18px;border-top:1px solid var(--border);background:var(--panel);}
  .album-btn.disabled{background:var(--panel2);color:var(--muted);pointer-events:none;box-shadow:none;}

  /* mini dialog (confirm/prompt) — a published page can't rely on native
     confirm()/prompt(), so these do the same job with in-page UI */
  #mini-dialog{
    position:absolute;inset:0;background:rgba(22,33,28,.5);z-index:45;
    display:flex;align-items:center;justify-content:center;padding:24px;
  }
  #mini-dialog .box{width:100%;max-width:320px;background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:20px;text-align:right;box-shadow:0 20px 50px rgba(22,33,28,.22);}
  #mini-dialog p{margin:0 0 14px;font-size:calc(15px * var(--fs));line-height:1.5;}
  #mini-dialog input{width:100%;margin-bottom:14px;border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:12px;padding:11px 12px;font-size:calc(14.5px * var(--fs));font-family:inherit;}
  #mini-dialog .row{display:flex;gap:8px;}
  #mini-dialog .row button{flex:1;padding:12px;border-radius:999px;border:none;font-weight:700;font-size:calc(14px * var(--fs));cursor:pointer;font-family:inherit;}
  #mini-dialog-ok{background:var(--primary);color:var(--on-primary);}
  #mini-dialog-cancel{background:var(--panel2);color:var(--text);border:1px solid var(--border) !important;}

  /* academy-wide announcement composer — its own overlay (not the generic
     mini-dialog's single-line prompt) since it needs a real multi-line
     textarea, an emoji picker, and a required expiry date. */
  #announce-composer{
    position:absolute;inset:0;background:rgba(22,33,28,.5);z-index:45;
    display:flex;align-items:center;justify-content:center;padding:20px;
  }
  #announce-composer .box{width:100%;max-width:400px;max-height:90vh;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:20px;text-align:right;box-shadow:0 20px 50px rgba(22,33,28,.22);}
  #announce-composer h2{margin:4px 0 6px;font-size:calc(19px * var(--fs));font-weight:800;}
  #an-text{min-height:150px;resize:vertical;line-height:1.5;}
  #an-emoji-row{display:flex;justify-content:flex-start;margin:-4px 0 13px;}
  .an-send-toggle{display:flex;gap:8px;}
  label.field.an-dt{display:flex;gap:8px;}
  .an-dt input[type=date]{flex:1.4;min-width:0;}
  .an-dt input[type=time]{flex:1;min-width:0;}
  .an-send-opt{flex:1;border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:12px;padding:10px 8px;font-size:calc(13px * var(--fs));font-weight:700;cursor:pointer;font-family:inherit;text-align:center;}
  .an-send-opt.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary);}

  /* sticker maker — its own full-screen overlay, same pattern as
     #announce-composer (a real modal, not the generic mini-dialog). Canvas
     is drawn at a fixed internal resolution (STICKER_SIZE) and displayed
     smaller via CSS so the exported PNG stays crisp. */
  #sticker-maker{
    position:absolute;inset:0;background:rgba(22,33,28,.5);z-index:45;
    display:flex;align-items:center;justify-content:center;padding:20px;
  }
  #sticker-maker .box{width:100%;max-width:400px;max-height:90vh;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:20px;text-align:right;box-shadow:0 20px 50px rgba(22,33,28,.22);}
  #sticker-maker h2{margin:4px 0 6px;font-size:calc(19px * var(--fs));font-weight:800;}
  #sm-canvas-wrap{display:flex;justify-content:center;margin-bottom:12px;}
  #sm-canvas{width:190px;height:190px;border-radius:18px;background:var(--panel2);box-shadow:0 4px 14px rgba(22,33,28,.12);}
  #sm-emoji-row{display:flex;flex-wrap:wrap;gap:6px;}
  #sm-emoji-row button{background:var(--panel2);border:1px solid var(--border);border-radius:10px;font-size:calc(20px * var(--fs));padding:5px 7px;cursor:pointer;line-height:1;font-family:inherit;}
  #sm-emoji-row button.active{background:var(--peach);border-color:var(--peach-ink);}
  #sm-color-row{display:flex;gap:8px;}
  .sm-swatch{width:30px;height:30px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;}
  .sm-swatch.active{border-color:var(--text);}
  .bubble-img{display:block;max-width:160px;max-height:160px;object-fit:contain;border-radius:14px;margin-top:4px;cursor:pointer;}

  /* toast — replaces showToast() for the same sandboxing reason */
  #toast{
    position:absolute;top:calc(10px + env(safe-area-inset-top,0px));left:14px;right:14px;z-index:70;
    display:flex;justify-content:center;pointer-events:none;
  }
  #toast .msg{
    max-width:100%;background:var(--navy);color:#fff;border:1px solid rgba(255,255,255,.08);
    border-radius:14px;padding:12px 16px;font-size:calc(14px * var(--fs));line-height:1.4;text-align:center;
    box-shadow:0 10px 26px rgba(22,33,28,.3);pointer-events:auto;
  }

  /* board & chat / merged group panel */
  .segmented{display:flex;gap:6px;background:var(--panel2);border-radius:16px;padding:6px;margin-bottom:16px;}
  .segmented .seg{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;border-radius:12px;font-size:calc(13px * var(--fs));color:var(--muted);font-weight:600;cursor:pointer;background:none;border:none;font-family:inherit;}
  .segmented .seg svg{width:18px;height:18px;}
  .segmented .seg.on{background:var(--panel);color:var(--primary-ink);font-weight:800;box-shadow:0 3px 10px rgba(22,33,28,.08);}
  .post{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:13px;margin-bottom:11px;box-shadow:0 5px 14px rgba(22,33,28,.04);}
  .post.pinned{background:var(--peach);border-color:var(--peach);}
  .post .meta{display:flex;justify-content:space-between;align-items:center;font-size:calc(12.5px * var(--fs));color:var(--muted);margin-bottom:5px;}
  .post .meta-left{display:flex;align-items:center;}
  .post .meta-right{display:flex;align-items:center;gap:6px;}
  .post .name{font-weight:700;color:var(--text);}
  .pin-badge{width:13px;height:13px;display:inline-flex;color:var(--peach-ink);margin-inline-end:4px;flex:none;}
  .post-pin-btn{width:24px;height:24px;flex:none;border-radius:50%;border:none;background:none;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;}
  .post-pin-btn svg{width:15px;height:15px;}
  .post-pin-btn.active{color:var(--peach-ink);background:rgba(0,0,0,.06);}
  .post-img{display:block;max-width:100%;border-radius:12px;margin-top:8px;cursor:pointer;}
  .post-file-row{margin:8px 0 0;text-decoration:none;color:inherit;}
  .role-tag{font-size:calc(11.5px * var(--fs));font-weight:700;padding:2px 9px;border-radius:999px;background:var(--peach);color:var(--peach-ink);margin-inline-start:6px;}
  .avatar{width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;font-weight:800;font-size:calc(14px * var(--fs));}
  .composer{position:sticky;bottom:0;background:var(--bg);padding:10px 0 4px;z-index:3;}
  .composer-row{display:flex;gap:10px;align-items:center;}
  .composer input, .composer textarea{
    flex:1;border:1px solid var(--border);background:var(--panel);color:var(--text);
    border-radius:16px;padding:12px 15px;font-size:calc(14.5px * var(--fs));font-family:inherit;resize:none;
    height:44px;box-sizing:border-box;
  }
  .composer button, .send-btn{
    border:none;background:var(--primary);color:var(--on-primary);font-weight:700;
    width:44px;height:44px;min-width:44px;border-radius:50%;padding:0;font-size:calc(14.5px * var(--fs));cursor:pointer;
    box-shadow:0 8px 18px rgba(var(--primary-rgb),.28);flex:none;
    display:flex;align-items:center;justify-content:center;
  }
  .composer button svg, .send-btn svg{width:19px;height:19px;}
  .emoji-btn{border:1px solid var(--border);background:var(--panel);color:var(--muted);
    width:44px;height:44px;min-width:44px;border-radius:50%;padding:0;flex:none;cursor:pointer;
    display:flex;align-items:center;justify-content:center;box-shadow:none;}
  .emoji-btn svg{width:19px;height:19px;}
  /* ".composer button" (the blue send style) was out-ranking .emoji-btn, so
     the emoji/sticker/poll icons all turned into big blue circles and pushed
     the send button off-screen. Icon buttons stay small and plain. */
  .composer .emoji-btn{width:38px;height:38px;min-width:38px;background:none;border:none;color:var(--muted);box-shadow:none;}
  .composer .emoji-btn svg{width:22px;height:22px;}
  .composer .emoji-btn:active{background:var(--panel2);}
  .composer-row{gap:6px;}
  .composer input, .composer textarea{min-width:0;}
  .emoji-btn:active{background:var(--panel2);}
  .empty{color:var(--muted);font-size:calc(14.5px * var(--fs));text-align:center;padding:26px 8px;}

  .chat-scroll{display:flex;flex-direction:column;justify-content:flex-end;gap:8px;padding-bottom:8px;}
  #chat-input{height:auto;min-height:44px;max-height:132px;line-height:1.4;overflow-y:auto;display:block;}
  .composer-row:has(#chat-input){align-items:flex-end;}
  .bubble{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;}
  .bubble-text{white-space:pre-wrap;word-break:break-word;}
  .swipe-wrap{position:relative;transition:transform .18s ease;touch-action:pan-y;}
  .swipe-wrap.dragging{transition:none;}
  .swipe-hint{position:absolute;top:50%;width:30px;height:30px;margin-top:-15px;border-radius:50%;background:var(--panel2);color:var(--muted);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s;}
  .swipe-hint svg{width:15px;height:15px;}
  .bubble-reacts{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;}
  .bubble-reacts button{border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:999px;padding:1px 8px;font:inherit;font-size:calc(12.5px * var(--fs));cursor:pointer;line-height:1.6;}
  .bubble-reacts button.mine{border-color:var(--primary);background:var(--peach);color:var(--peach-ink);}
  .bubble.held{filter:brightness(.92);}
  #msg-actions{position:absolute;inset:0;background:rgba(22,33,28,.5);z-index:28;display:flex;align-items:flex-end;justify-content:center;padding:20px 16px calc(20px + env(safe-area-inset-bottom,0px));}
  #msg-actions .box{width:100%;max-width:420px;background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:14px;box-shadow:0 20px 50px rgba(22,33,28,.22);}
  .ma-preview{color:var(--muted);font-size:calc(13px * var(--fs));padding:2px 4px 10px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
  .ma-reacts{display:flex;justify-content:space-between;gap:4px;background:var(--panel2);border-radius:999px;padding:6px 8px;margin-bottom:10px;}
  .ma-reacts button{border:none;background:none;font-size:26px;line-height:1;width:44px;height:44px;border-radius:50%;cursor:pointer;}
  .ma-reacts button.mine{background:var(--peach);}
  .ma-list .menu-row{margin-bottom:6px;}
  .ma-list .menu-row.danger .menu-row-title, .ma-list .menu-row.danger .menu-row-icon{color:var(--stop);}
  .bubble{max-width:78%;padding:8px 13px 9px;border-radius:16px;font-size:calc(14.5px * var(--fs));}
  .bubble .who{display:flex;align-items:center;gap:6px;font-size:calc(11.5px * var(--fs));color:var(--muted);margin-bottom:2px;}
  .bubble .who-name{font-weight:700;}
  .bubble .who-time{margin-inline-start:auto;opacity:.75;font-variant-numeric:tabular-nums;white-space:nowrap;}
  .bubble-reply-btn{background:none;border:none;padding:2px;margin:0;color:inherit;opacity:.65;cursor:pointer;display:inline-flex;align-items:center;flex:none;}
  .bubble-reply-btn svg{width:13px;height:13px;}
  .bubble-reply-btn:active{opacity:1;}
  .bubble-quote{border-inline-start:3px solid rgba(255,255,255,.55);background:rgba(255,255,255,.14);border-radius:8px;padding:5px 8px;margin-bottom:5px;font-size:calc(12.5px * var(--fs));cursor:pointer;}
  .bubble.theirs .bubble-quote{border-inline-start-color:var(--primary);background:var(--bg);}
  .bubble-quote .bq-author{font-weight:700;display:block;margin-bottom:1px;}
  .bubble-quote .bq-text{opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;}
  .bubble.mine{align-self:flex-start;background:var(--primary);color:var(--on-primary);border-end-end-radius:4px;}
  .bubble.mine .who{color:var(--on-primary);opacity:.85;}
  .bubble.theirs{align-self:flex-end;background:var(--panel2);border-end-start-radius:4px;}
  .bubble.flash{animation:bubble-flash 1s ease;}
  @keyframes bubble-flash{0%,100%{box-shadow:none;}30%{box-shadow:0 0 0 3px var(--primary);}}

  .chat-reply-preview{display:flex;align-items:center;gap:8px;background:var(--panel2);border-radius:12px;padding:8px 10px;margin-bottom:8px;font-size:calc(12.5px * var(--fs));}
  .chat-reply-preview .crp-bar{width:3px;align-self:stretch;background:var(--primary);border-radius:2px;flex:none;}
  .chat-reply-preview .crp-body{flex:1;min-width:0;}
  .chat-reply-preview .crp-author{font-weight:700;color:var(--primary-ink);display:block;}
  .chat-reply-preview .crp-text{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;}

  .emoji-picker{display:flex;flex-wrap:wrap;gap:4px;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:8px;margin-bottom:8px;max-height:132px;overflow-y:auto;}
  .emoji-picker button{background:none;border:none;font-size:calc(21px * var(--fs));padding:5px;cursor:pointer;border-radius:8px;line-height:1;}
  .emoji-picker button:active{background:var(--panel2);}

  /* settings */
  label.field{display:block;margin-bottom:13px;}
  label.field .lbl{display:block;font-size:calc(13px * var(--fs));color:var(--muted);margin-bottom:6px;}
  .ob-photo-field .lbl{display:block;font-size:calc(13px * var(--fs));color:var(--muted);margin-bottom:6px;}
  label.field input[type=text], label.field input[type=url], label.field input[type=number], label.field input[type=date], label.field input[type=time], label.field input[type=datetime-local], label.field textarea, label.field select,
  #sov-fields input, #sov-fields select{
    width:100%;border:1px solid var(--border);background:var(--panel2);color:var(--text);
    border-radius:12px;padding:10px 12px;font-size:calc(14.5px * var(--fs));font-family:inherit;
  }
  /* iOS Safari gives native date/time inputs an intrinsic minimum width that
     ignores width:100%, so they spill out of the card. Dropping the native
     appearance lets them size like every other field. */
  input[type=date], input[type=time], input[type=datetime-local]{
    -webkit-appearance:none;appearance:none;display:block;min-width:0;max-width:100%;min-height:44px;line-height:1.4;
  }
  input[type=date]::-webkit-date-and-time-value, input[type=time]::-webkit-date-and-time-value, input[type=datetime-local]::-webkit-date-and-time-value{text-align:start;margin:0;}
  .score-input-row{display:flex;align-items:flex-end;gap:8px;margin-bottom:13px;}
  .score-input-row .field{flex:1;}
  .score-input-row .score-input-sep{flex:none;padding-bottom:10px;color:var(--muted);font-weight:700;}
  /* game score/stats card (Story tab) */
  .game-head{display:flex;justify-content:space-between;align-items:center;gap:8px;}
  .game-opponent{font-size:calc(14px * var(--fs));font-weight:700;color:var(--muted);}
  .game-result-badge{font-size:calc(12px * var(--fs));font-weight:800;padding:3px 10px;border-radius:999px;flex:none;}
  .game-result-badge.win{background:rgba(47,174,102,.14);color:var(--go);}
  .game-result-badge.loss{background:rgba(229,72,77,.14);color:var(--stop);}
  .game-result-badge.draw{background:var(--panel2);color:var(--muted);}
  /* "62 – 58" is two independent numbers joined only by a neutral dash, so
     inside the page's RTL context the bidi algorithm can reorder the whole
     expression (swapping which score reads first) — force it to render in
     the order it was typed, still right-aligned to match the rest of the card. */
  .game-score{font-size:calc(33px * var(--fs));font-weight:800;font-variant-numeric:tabular-nums;margin:6px 0 0;direction:ltr;unicode-bidi:isolate;text-align:center;}
  .game-stats{margin:10px 0 0;color:var(--muted);font-size:calc(14px * var(--fs));line-height:1.5;white-space:pre-wrap;}
  .game-card.win{background:linear-gradient(160deg, rgba(47,174,102,.14), var(--panel) 70%);border-color:rgba(47,174,102,.45);transition:background .4s ease,border-color .4s ease;}
  .game-card.win .game-score{color:var(--go);}
  .game-card.win .game-result-badge.win{background:rgba(47,174,102,.22);}

  /* Win-state confetti — fixed overlay so it falls across the whole screen
     regardless of where the score card sits in the scroll; fires once per
     newly-displayed winning update (see fireConfetti / lastWinConfettiId). */
  .confetti-layer{position:fixed;inset:0;pointer-events:none;z-index:60;overflow:hidden;}
  .confetti-piece{position:absolute;top:-14px;opacity:.95;animation:confetti-fall linear forwards;}
  @keyframes confetti-fall{
    0%{transform:translate(0,0) rotate(0deg);opacity:1;}
    100%{transform:translate(var(--drift,0px),110vh) rotate(720deg);opacity:.85;}
  }
  @media (prefers-reduced-motion: reduce){
    .confetti-piece{animation:none!important;display:none;}
  }
  .toggle-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-top:1px solid var(--border);}
  .switch{width:42px;height:24px;border-radius:999px;background:var(--panel2);position:relative;cursor:pointer;border:1px solid var(--border);flex:none;}
  .switch.on{background:var(--primary);border-color:var(--primary);}
  .switch .knob{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;}
  .switch.on .knob{transform:translateX(18px);}
  .save-btn{width:100%;padding:15px;border:none;border-radius:999px;background:var(--primary);color:var(--on-primary);font-weight:800;font-size:calc(15.5px * var(--fs));margin-top:8px;cursor:pointer;min-height:48px;box-shadow:0 10px 22px rgba(var(--primary-rgb),.28);}
  .photo-add{display:flex;gap:8px;margin-bottom:10px;}
  /* mini-btn / x-btn are used everywhere — bigger, easier-to-tap targets on mobile */
  .mini-btn{border:1.5px solid rgba(var(--primary-rgb),.35);background:var(--panel);color:var(--primary-ink);border-radius:999px;padding:11px 16px;font-size:calc(14.5px * var(--fs));font-weight:700;cursor:pointer;min-height:44px;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:6px;}
  .photo-list-row{display:flex;align-items:center;gap:8px;background:var(--panel2);border-radius:12px;padding:9px 10px 9px 7px;margin-bottom:7px;font-size:calc(13.5px * var(--fs));}
  .photo-list-row span:not(.x-btn){flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);}
  .x-btn{color:var(--stop);cursor:pointer;font-weight:700;font-size:calc(17px * var(--fs));line-height:1;flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:34px;border-radius:10px;}
  .x-btn:active{background:rgba(229,72,77,.12);}
  /* photo album drag-to-reorder (composer only — #photo-list scope keeps this
     off the many other lists that reuse .photo-list-row for its plain row look) */
  #photo-list .photo-list-row{position:relative;}
  #photo-list .photo-list-row.dragging{z-index:5;background:var(--panel);box-shadow:0 8px 20px rgba(22,33,28,.18);user-select:none;}
  .photo-drag-handle{cursor:grab;touch-action:none;color:var(--muted);font-size:calc(17px * var(--fs));line-height:1;flex:none;padding:4px 6px;margin:-4px 0;user-select:none;}
  .photo-drag-handle:active{cursor:grabbing;}
  /* "follow us" social links — .mini-btn look, but on an <a> so it needs its
     own no-underline/centering rule instead of the <button> defaults */
  .mini-btn.social-link-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;width:44px;height:44px;padding:0;flex:none;}
  .social-link-btn svg{width:20px;height:20px;}

  /* scheduling: recurring weekly slot, one-off overrides, RSVP */
  .day-pill{border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:999px;padding:9px 14px;font-size:calc(13.5px * var(--fs));font-family:inherit;cursor:pointer;min-height:38px;font-weight:600;}
  .day-pill.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary);font-weight:700;}
  .mini-btn.rsvp-active-yes{background:var(--go);color:#fff;border-color:var(--go);font-weight:700;}
  .mini-btn.rsvp-active-no{background:var(--stop);color:#fff;border-color:var(--stop);font-weight:700;}
  .mini-btn.pay-active-partial{background:#d97706;color:#fff;border-color:#d97706;font-weight:700;}
  .att-row{display:flex;align-items:center;gap:10px;background:var(--panel2);border-radius:14px;padding:11px 13px;margin-bottom:8px;}
  .att-row span{flex:1;font-size:calc(14.5px * var(--fs));font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

  /* updates head / history / composer */
  .update-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:16px;}
  .btn-row{display:flex;gap:8px;flex:none;}
  .icon-btn{width:36px;height:36px;flex:none;border-radius:50%;border:1px solid var(--border);background:var(--panel);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;}
  .icon-btn svg{width:18px;height:18px;}
  .icon-btn.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary);}
  .icon-btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary);}
  .icon-btn:disabled{opacity:.55;cursor:default;}
  /* the story-tab header packs this icon-btn next to #upd-edit-btn, a
     44px-tall .mini-btn ("עריכה") — the default 36px icon-btn read as
     visibly undersized beside it, so this one spot gets a bigger frame
     and glyph to match its row-mate rather than bumping every icon-btn
     app-wide (most live in the compact 4-across drill-card row, where
     36px is the right size). */
  #story-search-btn{width:44px;height:44px;}
  #story-search-btn svg{width:20px;height:20px;}

  /* schedule tab: upcoming-session cards (Heja-style) */
  .sess-card{display:flex;gap:12px;background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:14px;margin-bottom:11px;box-shadow:0 5px 14px rgba(22,33,28,.04);border-right:4px solid var(--primary);}
  .sess-card.type-game{border-right-color:var(--go);}
  .sess-card.type-event{border-right-color:var(--navy);}
  .sess-card.is-cancelled{opacity:.62;border-right-color:var(--stop);}
  .sess-card-clickable{cursor:pointer;transition:box-shadow .15s,transform .15s;}
  .sess-card-clickable:hover{box-shadow:0 6px 18px rgba(22,33,28,.09);transform:translateY(-1px);}
  .sess-date-badge{flex:none;width:52px;height:52px;border-radius:12px;background:var(--panel2);display:flex;flex-direction:column;align-items:center;justify-content:center;}
  .sess-date-badge .dd{font-size:calc(19px * var(--fs));font-weight:800;line-height:1;font-variant-numeric:tabular-nums;}
  .sess-date-badge .mo{font-size:calc(11px * var(--fs));font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-top:2px;}
  .sess-main{flex:1;min-width:0;}
  .sess-type-row{display:flex;align-items:center;gap:6px;margin-bottom:4px;flex-wrap:wrap;}
  .sess-type-label{font-size:calc(12px * var(--fs));font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;}
  .sess-tag{font-size:calc(11.5px * var(--fs));font-weight:700;padding:2px 8px;border-radius:999px;flex:none;}
  .sess-tag.cancelled{background:rgba(229,72,77,.14);color:var(--stop);}
  .sess-tag.changed{background:rgba(var(--primary-rgb),.14);color:var(--primary-ink);}
  .sess-when{font-weight:700;font-size:calc(15px * var(--fs));margin-bottom:2px;}
  .sess-where{font-size:calc(13.5px * var(--fs));color:var(--muted);}
  .sess-note{font-size:calc(13px * var(--fs));color:var(--muted);margin-top:3px;}
  .side-pill{display:inline-flex;align-items:center;gap:5px;font-size:calc(12.5px * var(--fs));font-weight:800;padding:3px 10px 3px 9px;border-radius:999px;flex:none;vertical-align:middle;line-height:1.3;}
  .side-pill svg{width:16px;height:16px;flex:none;}
  .team-logo{object-fit:contain;flex:none;background:#fff;border-radius:6px;}
  .team-logo.tl-md{width:34px;height:34px;padding:2px;box-shadow:0 0 0 1px var(--border);}
  .team-logo.tl-sm{width:22px;height:22px;padding:1px;margin-inline-end:6px;vertical-align:middle;}
  .team-logo.tl-xs{width:20px;height:20px;border-radius:4px;}
  .sess-opp{display:flex;align-items:center;gap:8px;}
  .side-pill.home{background:rgba(47,174,102,.16);color:#1d7a47;}
  .side-pill.away{background:rgba(234,88,12,.15);color:#b3440a;}
  :root[data-theme="dark"] .side-pill.home{color:#6fd49b;}
  :root[data-theme="dark"] .side-pill.away{color:#fb9a5b;}
  .sess-card.type-game.side-away{border-right-color:#ea580c;}
  .ns-where .side-pill, .result-opponent .side-pill{margin-inline-end:6px;}
  .result-opponent.has-side{display:flex;align-items:center;flex-wrap:wrap;gap:0;}
  .sess-rsvp-row{display:flex;gap:8px;margin-top:10px;}
  .sess-rsvp-row .mini-btn{flex:1;padding:9px 10px;min-height:38px;}
  /* reminder (add-to-calendar) + navigate-to-location actions, offered to
     every user (coach and parent/player alike) on every non-cancelled
     session card — kept separate from the RSVP row above since RSVP is
     parent/player-only while these two are for everyone. */
  .sess-actions-row{display:flex;gap:8px;margin-top:10px;}
  .sess-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 10px;min-height:38px;}
  .sess-action-btn svg{width:15px;height:15px;flex:none;}

  /* updates tab: next-practice / next-game summary row — a compact, always-
     visible pair of the same date-badge language as .sess-card above (so it
     reads as "the same schedule, condensed"), side by side rather than
     stacked since there are always exactly two slots. */
  .next-sessions-row{display:flex;gap:10px;margin-bottom:16px;}
  .next-session-card{
    flex:1;min-width:0;display:flex;align-items:center;gap:10px;
    background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:12px;
    box-shadow:0 5px 14px rgba(22,33,28,.04);border-right:4px solid var(--primary);cursor:pointer;
  }
  .next-session-card.type-game{border-right-color:var(--go);}
  .next-session-card.empty{opacity:.6;border-right-color:var(--border);cursor:default;}
  .next-session-card .sess-date-badge{width:44px;height:44px;}
  .next-session-card .sess-date-badge .dd{font-size:calc(16px * var(--fs));}
  .next-session-card .sess-date-badge .mo{font-size:calc(10px * var(--fs));}
  .next-session-card .ns-main{flex:1;min-width:0;}
  .next-session-card .ns-label{font-size:calc(11px * var(--fs));font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:2px;}
  .next-session-card .ns-when{font-size:calc(13px * var(--fs));font-weight:700;margin-bottom:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .next-session-card .ns-where{font-size:calc(12px * var(--fs));color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

  /* schedule tab: results record — every scored game, newest first */
  .result-row{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:12px 14px;margin-bottom:8px;}
  .result-row.win{background:linear-gradient(160deg, rgba(47,174,102,.10), var(--panel) 70%);border-color:rgba(47,174,102,.35);}
  .result-date{flex:none;width:52px;font-size:calc(12.5px * var(--fs));color:var(--muted);font-weight:700;}
  .result-main{flex:1;min-width:0;}
  .result-opponent{font-size:calc(14.5px * var(--fs));font-weight:700;}
  .result-stats{font-size:calc(13px * var(--fs));color:var(--muted);margin-top:2px;line-height:1.4;}
  .result-right{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:4px;}
  .result-badge{font-size:calc(11.5px * var(--fs));font-weight:800;padding:2px 9px;border-radius:999px;}
  .result-badge.win{background:rgba(47,174,102,.16);color:var(--go);}
  .result-badge.loss{background:rgba(229,72,77,.16);color:var(--stop);}
  .result-badge.draw{background:var(--panel2);color:var(--muted);}
  .result-score{font-size:calc(18px * var(--fs));font-weight:800;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;}
  .result-score.win{color:var(--go);}
  .type-pill-row{display:flex;gap:8px;margin-bottom:14px;}
  .type-pill{flex:1;border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:12px;padding:10px 8px;font-size:calc(14px * var(--fs));font-weight:700;font-family:inherit;cursor:pointer;text-align:center;}
  .type-pill.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary);}
  /* drill libraries: search + sort toolbar, and a wrapping row of category filter chips */
  .drill-toolbar{display:flex;gap:8px;margin:0 0 10px;}
  .drill-toolbar input[type=text]{flex:1;min-width:0;border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:12px;padding:10px 12px;font-size:calc(14.5px * var(--fs));font-family:inherit;}
  .drill-toolbar select{flex:none;border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:12px;padding:10px 8px;font-size:calc(13.5px * var(--fs));font-family:inherit;}
  .drill-cat-chips{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px;}
  .drill-cat-chip{border:1px solid var(--border);background:var(--panel2);color:var(--muted);border-radius:999px;padding:6px 12px;font-size:calc(12.5px * var(--fs));font-weight:700;font-family:inherit;cursor:pointer;white-space:nowrap;}
  .drill-cat-chip.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary);}
  #event-sheet{position:absolute;inset:0;background:var(--bg);z-index:22;display:flex;justify-content:center;padding:20px;overflow-y:auto;}
  #event-sheet .box{width:100%;max-width:400px;text-align:right;}
  #event-sheet h2{margin:4px 0 14px;font-size:calc(19px * var(--fs));font-weight:800;}
  /* generic small action sheet — reused for both "add reminder" and
     "navigate to location" choice menus */
  #action-sheet{position:absolute;inset:0;background:rgba(22,33,28,.5);z-index:27;display:flex;align-items:flex-end;justify-content:center;padding:20px;}
  #action-sheet .box{width:100%;max-width:400px;text-align:right;background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:18px;box-shadow:0 20px 50px rgba(22,33,28,.22);}
  #action-sheet h2{margin:2px 0 14px;font-size:calc(16.5px * var(--fs));font-weight:800;}
  #action-sheet .mini-btn{display:flex;align-items:center;justify-content:center;}
  #staff-consent{position:absolute;inset:0;background:rgba(22,33,28,.5);z-index:28;display:flex;align-items:flex-end;justify-content:center;padding:20px 20px calc(20px + env(safe-area-inset-bottom,0px));}
  #staff-consent .box{width:100%;max-width:400px;text-align:right;background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:18px;box-shadow:0 20px 50px rgba(22,33,28,.22);}
  #staff-consent h2{margin:2px 0 8px;font-size:calc(16.5px * var(--fs));font-weight:800;}
  #staff-consent p{margin:0 0 14px;color:var(--muted);font-size:calc(14px * var(--fs));line-height:1.55;}
  /* autocomplete dropdown for the "add location" field, offered as the coach
     types — suggests matching entries from a bundled offline library of
     known Israeli sports/community facilities, so navigation later stays
     accurate; picking one fills in a consistent, correctly-spelled label.
     A facility not in the list still falls back to free text as before. */
  .loc-suggest{position:absolute;top:100%;right:0;left:0;margin-top:6px;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:0 14px 30px rgba(22,33,28,.18);z-index:30;max-height:230px;overflow-y:auto;}
  .loc-suggest-item{padding:10px 12px;font-size:calc(13.5px * var(--fs));cursor:pointer;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;}
  .loc-suggest-item:last-child{border-bottom:none;}
  .loc-suggest-item:hover, .loc-suggest-item.active{background:var(--panel2);}
  .loc-suggest-item b{color:var(--primary-ink);font-weight:700;}
  .loc-suggest-item svg{width:14px;height:14px;flex:none;color:var(--muted);}
  .fab{position:absolute;z-index:15;left:18px;bottom:calc(78px + env(safe-area-inset-bottom,0px));width:56px;height:56px;border-radius:50%;background:var(--primary);color:var(--on-primary);border:none;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(var(--primary-rgb),.35);cursor:pointer;}
  .fab svg{width:26px;height:26px;}
  /* timmy's own product wordmark (not the academy's logo) — a single
     pair of embedded images reused everywhere via CSS custom properties,
     switching light/dark automatically with the existing theme toggle. */
  .timmy-wordmark{background-image:var(--timmy-mark-light);background-repeat:no-repeat;background-position:center;background-size:contain;display:block;}
  :root[data-theme="dark"] .timmy-wordmark{background-image:var(--timmy-mark-dark);}
  .history-item{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:14px;margin-bottom:11px;box-shadow:0 5px 14px rgba(22,33,28,.04);}
  .history-item .hrow{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;}
  .history-item .wk{font-weight:800;font-size:calc(15px * var(--fs));}
  .history-item .dt{font-size:calc(12.5px * var(--fs));color:var(--muted);white-space:nowrap;display:flex;align-items:center;gap:6px;}
  .hist-chev{font-size:calc(12px * var(--fs));color:var(--muted);}
  .hist-search-row{display:flex;gap:8px;margin-bottom:14px;}
  .hist-search-row input{border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:12px;padding:10px 12px;font-size:calc(14px * var(--fs));font-family:inherit;}
  .hist-search-row input[type=text]{flex:1;min-width:0;}
  .hist-search-row input[type=date]{flex:none;width:132px;padding:10px 8px;}
  .video-list-card{background:var(--panel2);border-radius:12px;overflow:hidden;margin-bottom:7px;}
  .video-list-card .vlc-thumb{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:var(--border);}
  .video-list-card .vlc-row{display:flex;align-items:center;gap:8px;padding:8px 10px;}
  .video-list-card .vlc-row span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:calc(13.5px * var(--fs));}
  .pill{font-size:calc(11px * var(--fs));padding:3px 9px;border-radius:999px;background:var(--primary);color:var(--on-primary);font-weight:700;margin-inline-start:6px;}
  .pill.warn{background:#d97706;}
  .pill.med{background:var(--stop);}
  .pill.potw{background:#b7791f;}

  /* player page (opened from any roster row) — sits above Team Management
     (z-index 24) since it can be reached from inside it, and above the
     Group tab's own roster list, but below the lightbox/toast layer. */
  #player-page{position:absolute;inset:0;background:var(--bg);z-index:28;display:flex;flex-direction:column;}
  #pp-avatar{display:flex;align-items:center;justify-content:center;font-weight:800;}
  #pp-potw-badge{display:none;align-items:center;gap:5px;font-size:calc(13px * var(--fs));padding:5px 12px;}
  #pp-potw-badge svg{width:14px;height:14px;}
  .pp-kv{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid var(--border);font-size:calc(14px * var(--fs));}
  .pp-kv:last-child{border-bottom:none;}
  .pp-kv .k{color:var(--muted);}
  .pp-kv .v{font-weight:700;}
  #composer{
    position:absolute;inset:0;background:var(--bg);z-index:25;
    display:flex;justify-content:center;padding:20px;overflow-y:auto;
  }
  #composer .box{width:100%;max-width:400px;text-align:right;}
  #composer h2{margin:4px 0 14px;font-size:calc(19px * var(--fs));font-weight:800;}
  #drill-pick-sheet{
    position:absolute;inset:0;background:var(--bg);z-index:26;
    display:flex;justify-content:center;padding:20px;overflow-y:auto;
  }
  #drill-pick-sheet .box{width:100%;max-width:400px;text-align:right;}
  #drill-pick-sheet h2{margin:4px 0 14px;font-size:calc(19px * var(--fs));font-weight:800;}
  #tm-drill-import-sheet{
    position:absolute;inset:0;background:var(--bg);z-index:26;
    display:flex;justify-content:center;padding:20px;overflow-y:auto;
  }
  #tm-drill-import-sheet .box{width:100%;max-width:400px;text-align:right;}
  #tm-drill-import-sheet h2{margin:4px 0 14px;font-size:calc(19px * var(--fs));font-weight:800;}
  .drill-pick-row{display:flex;justify-content:space-between;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:13px 14px;margin-bottom:9px;cursor:pointer;box-shadow:0 4px 12px rgba(22,33,28,.04);}
  .drill-pick-row.picked{border-color:var(--primary);}
  .c-drill-row{display:flex;justify-content:space-between;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:11px 14px;margin-bottom:8px;}

  /* lightbox: enlarge / save / share / tag */
  #lightbox{
    position:absolute;inset:0;background:rgba(22,33,28,.94);z-index:30;
    display:flex;align-items:center;justify-content:center;padding:20px;
  }
  .lb-inner{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:420px;}
  .lb-inner img{max-width:100%;max-height:52vh;border-radius:16px;object-fit:contain;}
  /* Save / share: round icon buttons, centred under the photo */
  .lb-actions{display:flex;gap:14px;justify-content:center;}
  .lb-actions button{width:48px;height:48px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;}
  .lb-actions button svg{width:22px;height:22px;}
  .lb-actions button:active{background:rgba(255,255,255,.24);}
  .lb-close{position:absolute;top:16px;left:16px;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;border:none;font-size:calc(17px * var(--fs));cursor:pointer;line-height:1;}
  .lb-tags{display:flex;flex-wrap:wrap;gap:6px;width:100%;}
  .tag-chip{display:inline-flex;align-items:center;gap:5px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:4px 10px;font-size:calc(13px * var(--fs));color:#fff;}
  .tag-chip .x{color:#ff8f8f;cursor:pointer;font-weight:700;}
  .lb-tag-row{display:flex;gap:8px;width:100%;}
  .lb-tag-row select{flex:1;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:12px;padding:10px 11px;font-size:calc(14px * var(--fs));font-family:inherit;}
  .lb-tag-row button{white-space:nowrap;}
  .lb-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;}
  .lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:none;background:rgba(0,0,0,.45);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;}
  .lb-nav svg{width:22px;height:22px;}
  .lb-nav.prev{right:6px;}
  .lb-nav.next{left:6px;}
  .lb-count{color:rgba(255,255,255,.75);font-size:calc(13px * var(--fs));font-weight:700;font-variant-numeric:tabular-nums;margin-top:-4px;}
  .tag-chip .nm{cursor:pointer;}
  .tag-chip .ic{width:14px;height:14px;opacity:.8;flex:none;}
  /* personal galleries (player / coach page) */
  .pg-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;}
  .pg-count{color:var(--muted);font-weight:700;font-size:calc(13px * var(--fs));font-variant-numeric:tabular-nums;}
  .pg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;border-radius:12px;overflow:hidden;margin-top:10px;}
  .pg-tile{position:relative;aspect-ratio:1;border:none;padding:0;margin:0;background:var(--panel2);cursor:pointer;overflow:hidden;display:block;width:100%;}
  .pg-tile img{width:100%;height:100%;object-fit:cover;display:block;}
  .pg-tile .pg-star{position:absolute;top:5px;right:5px;background:rgba(0,0,0,.55);color:#ffd35a;border-radius:999px;padding:2px 6px;font-size:calc(10.5px * var(--fs));font-weight:800;}
  .pg-more{width:100%;margin-top:10px;}
  .pg-hint{margin:8px 0 0;color:var(--muted);font-size:calc(13.5px * var(--fs));line-height:1.5;}
  .media-tile .mt-tags{position:absolute;bottom:5px;right:5px;display:flex;align-items:center;gap:3px;background:rgba(0,0,0,.55);color:#fff;border-radius:999px;padding:2px 7px;font-size:calc(11px * var(--fs));font-weight:800;}
  .media-tile .mt-tags svg{width:12px;height:12px;}
  /* push notifications */
  /* sub-options, nested under "התראות במכשיר הזה": indented, with a guide line on the start side */
  .push-cats{margin:0 0 6px;margin-inline-start:6px;padding-inline-start:16px;border-inline-start:2px solid var(--border);}
  .push-cats .toggle-row{padding:10px 0;}
  .push-cats .toggle-row:first-child{border-top:none;padding-top:4px;}
  .push-cats .toggle-row > div:first-child{color:var(--muted);}
  .push-note{font-size:calc(12.5px * var(--fs));color:var(--muted);line-height:1.5;}
  .push-note.warn{color:#b45309;}
  .push-card{display:flex;gap:12px;align-items:flex-start;background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:14px;margin:0 0 14px;box-shadow:0 4px 12px rgba(22,33,28,.04);}
  .push-card .pc-ic{width:40px;height:40px;border-radius:12px;background:var(--peach);color:var(--peach-ink);display:flex;align-items:center;justify-content:center;flex:none;}
  .push-card .pc-ic svg{width:22px;height:22px;}
  .push-card .pc-body{flex:1;min-width:0;}
  .push-card .pc-t{font-weight:800;font-size:calc(15px * var(--fs));}
  .push-card .pc-s{color:var(--muted);font-size:calc(13px * var(--fs));margin:2px 0 10px;line-height:1.45;}
  .push-card .pc-acts{display:flex;gap:8px;}
  .push-card .pc-acts .mini-btn{flex:1;}
  /* header bell + in-app notifications */
  .bell-btn{position:relative;width:40px;height:40px;border-radius:12px;border:none;background:var(--panel2);color:var(--text);display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer;padding:0;}
  .bell-btn svg{width:21px;height:21px;}
  .bell-count{position:absolute;top:-4px;left:-4px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--stop);color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid var(--panel);font-variant-numeric:tabular-nums;line-height:1;}
  #inbox-sheet{position:absolute;inset:0;z-index:32;background:var(--bg);display:flex;justify-content:center;padding:calc(14px + env(safe-area-inset-top,0px)) 16px calc(20px + env(safe-area-inset-bottom,0px));overflow-y:auto;}
  #inbox-sheet .box{width:100%;max-width:440px;text-align:right;}
  .chat-tool-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:999px;padding:7px 13px;font:inherit;font-size:calc(13px * var(--fs));font-weight:700;cursor:pointer;}
  .chat-tool-btn svg{width:16px;height:16px;color:var(--muted);}
  #chat-search{position:absolute;inset:0;z-index:30;background:var(--bg);display:flex;justify-content:center;padding:calc(14px + env(safe-area-inset-top,0px)) 16px calc(20px + env(safe-area-inset-bottom,0px));overflow-y:auto;}
  #chat-search .box{width:100%;max-width:440px;text-align:right;}
  .cs-fields{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 6px;}
  .cs-q{flex:1 1 100%;display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:0 12px;}
  .cs-q svg{width:18px;height:18px;color:var(--muted);flex:none;}
  .cs-q input{flex:1;border:none;background:none;color:var(--text);font:inherit;font-size:calc(15px * var(--fs));padding:12px 0;outline:none;min-width:0;}
  .cs-date{display:flex;align-items:center;gap:8px;flex:1;color:var(--muted);font-size:calc(13px * var(--fs));}
  .cs-date input{flex:1;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:12px;padding:9px 10px;font:inherit;min-width:0;}
  .cs-day{font-size:calc(12.5px * var(--fs));font-weight:800;color:var(--muted);margin:14px 2px 6px;}
  .cs-item{display:block;width:100%;text-align:right;font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:10px 12px;margin-bottom:7px;cursor:pointer;}
  .cs-item .cs-meta{display:flex;justify-content:space-between;gap:8px;font-size:calc(12px * var(--fs));color:var(--muted);margin-bottom:3px;}
  .cs-item .cs-meta b{color:var(--text);}
  .cs-item .cs-text{font-size:calc(14px * var(--fs));line-height:1.45;white-space:pre-wrap;word-break:break-word;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;}
  .cs-item mark{background:rgba(var(--primary-rgb),.22);color:inherit;border-radius:3px;padding:0 1px;}
  .inbox-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 10px;}
  .inbox-top .mini-btn{padding:8px 14px;}
  .inbox-item{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:right;font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:12px 14px;margin:0 0 8px;cursor:pointer;}
  .inbox-item.unread{border-color:rgba(var(--primary-rgb),.45);background:linear-gradient(0deg, rgba(var(--primary-rgb),.05), rgba(var(--primary-rgb),.05)), var(--panel);}
  .inbox-item .ii-ic{width:36px;height:36px;border-radius:11px;background:var(--peach);color:var(--peach-ink);display:flex;align-items:center;justify-content:center;flex:none;}
  .inbox-item .ii-ic svg{width:19px;height:19px;}
  .inbox-item .ii-body{flex:1;min-width:0;}
  .inbox-item .ii-t{font-weight:700;font-size:calc(14.5px * var(--fs));line-height:1.35;}
  .inbox-item .ii-s{color:var(--muted);font-size:calc(13.5px * var(--fs));margin-top:2px;line-height:1.4;}
  .inbox-item .ii-time{color:var(--muted);font-size:calc(12px * var(--fs));margin-top:4px;font-variant-numeric:tabular-nums;}
  .inbox-item .ii-dot{width:9px;height:9px;border-radius:50%;background:var(--primary);flex:none;margin-top:6px;}
  .inbox-empty{text-align:center;color:var(--muted);padding:40px 0;font-size:calc(14.5px * var(--fs));}
  /* design library */
  #assets-sheet{position:absolute;inset:0;z-index:35;background:var(--bg);display:flex;justify-content:center;padding:calc(14px + env(safe-area-inset-top,0px)) 16px calc(20px + env(safe-area-inset-bottom,0px));overflow-y:auto;}
  #assets-sheet .box{width:100%;max-width:460px;text-align:right;display:flex;flex-direction:column;}
  .as-chips{display:flex;gap:6px;overflow-x:auto;padding:2px 0 10px;margin:0 0 4px;scrollbar-width:none;}
  .as-chips::-webkit-scrollbar{display:none;}
  .as-chip{flex:none;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:999px;padding:7px 14px;font:inherit;font-weight:700;font-size:calc(13.5px * var(--fs));cursor:pointer;}
  .as-chip.on{background:var(--text);color:var(--bg);border-color:var(--text);}
  .as-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
  .as-tile{position:relative;border:2px solid transparent;border-radius:14px;overflow:hidden;background:var(--panel);padding:0;cursor:pointer;display:flex;flex-direction:column;font:inherit;color:var(--text);text-align:right;box-shadow:0 2px 8px rgba(22,33,28,.06);}
  .as-tile img{width:100%;aspect-ratio:1;object-fit:cover;display:block;background:var(--panel2);}
  .as-tile .as-name{padding:7px 9px;font-size:calc(12.5px * var(--fs));font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .as-tile.sel{border-color:var(--primary);}
  .as-tile .as-check{position:absolute;top:7px;right:7px;width:26px;height:26px;border-radius:50%;border:2px solid #fff;background:rgba(0,0,0,.3);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;}
  .as-tile.sel .as-check{background:var(--primary);color:var(--on-primary);}
  .as-empty{text-align:center;color:var(--muted);padding:34px 8px;font-size:calc(14.5px * var(--fs));line-height:1.5;}
  .as-bar{position:sticky;bottom:0;padding:12px 0 0;background:linear-gradient(0deg, var(--bg) 70%, transparent);margin-top:auto;}
  /* invite parents & players */
  #invite-sheet{position:absolute;inset:0;z-index:29;background:var(--bg);display:flex;justify-content:center;padding:calc(14px + env(safe-area-inset-top,0px)) 20px calc(20px + env(safe-area-inset-bottom,0px));overflow-y:auto;}
  #invite-sheet .box{width:100%;max-width:420px;text-align:right;}
  .inv-code{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:14px;text-align:center;margin:0 0 12px;}
  .inv-code .lbl{color:var(--muted);font-size:calc(12.5px * var(--fs));font-weight:700;}
  .inv-code .cd{font-family:ui-monospace,Menlo,monospace;font-size:calc(28px * var(--fs));font-weight:800;letter-spacing:5px;direction:ltr;margin:2px 0;}
  .inv-code .tm{font-weight:700;font-size:calc(14px * var(--fs));}
  #inv-text{display:block;width:100%;min-height:230px;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:14px;padding:12px;font:inherit;font-size:calc(14.5px * var(--fs));line-height:1.5;resize:vertical;margin:0 0 12px;}
  .inv-acts{display:flex;flex-direction:column;gap:8px;}
  .inv-acts .row{display:flex;gap:8px;}
  .inv-acts .row .mini-btn{flex:1;padding:12px;}
  .inv-wa{background:#25d366 !important;color:#fff !important;border-color:#25d366 !important;box-shadow:0 10px 22px rgba(37,211,102,.25);}
  .inv-guide{margin-top:14px;padding-top:12px;border-top:1px solid var(--border);}

  nav.tabbar{
    position:absolute;bottom:0;left:0;right:0;
    display:flex;background:var(--panel);border-top:1px solid var(--border);
    padding:8px 6px calc(8px + env(safe-area-inset-bottom));
  }
  nav.tabbar button{
    flex:1;background:none;border:none;color:var(--muted);
    display:flex;flex-direction:column;align-items:center;gap:4px;
    font-size:calc(12px * var(--fs));font-weight:600;font-family:inherit;padding:7px 1px;border-radius:14px;cursor:pointer;
  }
  nav.tabbar button.active{color:var(--primary-ink);background:var(--peach);font-weight:800;}
  nav.tabbar svg{width:21px;height:21px;}
  /* icons only — the label lives in aria-label */
  nav.tabbar button{padding:11px 1px;gap:0;}
  nav.tabbar svg{width:26px;height:26px;}

  /* onboarding overlay */
  #onboard{
    position:absolute;inset:0;background:var(--bg);z-index:20;
    display:flex;align-items:flex-start;justify-content:center;padding:24px;overflow-y:auto;
  }
  #onboard .box{width:100%;max-width:340px;text-align:center;margin:auto 0;}
  #onboard .badge{width:60px;height:60px;margin:0 auto 16px;font-size:calc(22px * var(--fs));border-radius:19px;}
  #onboard h2{margin:0 0 5px;font-size:calc(20px * var(--fs));font-weight:800;}
  #onboard p.sub{color:var(--muted);font-size:calc(14.5px * var(--fs));margin:0 0 22px;line-height:1.5;}
  #onboard input, #onboard select{
    width:100%;margin-bottom:12px;border:1px solid var(--border);background:var(--panel);color:var(--text);
    border-radius:14px;padding:13px;font-size:calc(15px * var(--fs));font-family:inherit;
  }
  /* Checkboxes/radios (the group picker) are <input> elements too — without
     this they'd inherit the text-field styling above (width:100%, 13px
     padding, a bordered pill), rendering each as a giant blank box instead
     of a normal small toggle control. */
  #onboard input[type=checkbox], #onboard input[type=radio]{
    width:16px;height:16px;flex:none;margin:0;padding:0;border-radius:4px;
  }
  #onboard button{width:100%;padding:14px;border:none;border-radius:999px;background:var(--primary);color:var(--on-primary);font-weight:800;font-size:calc(15px * var(--fs));cursor:pointer;box-shadow:0 10px 22px rgba(var(--primary-rgb),.28);}
  .ob-role-picker{display:flex;gap:8px;margin-bottom:14px;}
  /* FOUND IT — this is the "shadow" that's been reported repeatedly: three
     of these sit side by side, and without this override each one silently
     inherits #onboard button's box-shadow:0 10px 22px rgba(var(--primary-rgb),.28)
     (an ID selector beats this plain class one regardless of source order —
     the exact same specificity trap already worked around for .mini-btn,
     .type-pill and .ob-choice-card just below, but missed here). Three
     overlapping 22px-blur shadows edge to edge read as one continuous soft
     band under the whole row rather than three separate button shadows —
     which is why it looked like a stray rectangle rather than anything
     button-shaped, and why it only ever showed up on steps with a button
     row like this one. */
  .ob-role-btn{flex:1;width:auto;padding:13px 6px;border-radius:14px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:calc(13.5px * var(--fs));font-weight:600;font-family:inherit;cursor:pointer;box-shadow:none;}
  .ob-role-btn.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary);font-weight:800;}
  .ob-role-btn[hidden]{display:none;}
  /* The "add a new team" button is a .mini-btn, not a submission button —
     without this it inherits #onboard button's width:100% (no competing
     flex-basis on .mini-btn, so width IS used for flex sizing here), which
     hogs the whole row and squeezes the name input beside it down to a
     sliver. */
  #onboard .mini-btn{width:auto;flex:none;background:var(--panel2);color:var(--text);box-shadow:none;padding:11px 16px;font-size:calc(14px * var(--fs));font-weight:600;}
  /* Same specificity problem as the .mini-btn fix above, for the new
     boys/girls toggle inside onboarding's add-team row: #onboard button
     would otherwise stamp both pills full-width and primary-orange
     regardless of which is active. */
  #onboard .type-pill{width:auto;flex:1;padding:10px 8px;border-radius:12px;border:1px solid var(--border);background:var(--panel2);color:var(--text);font-weight:700;font-size:calc(14px * var(--fs));box-shadow:none;}
  #onboard .type-pill.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary);}

  /* onboarding: step wizard ("a series of quick questions" instead of one
     long scrolling form) — one .ob-step visible at a time, native [hidden]
     handles the rest. #onboard h2 / p.sub / input / select already style
     generically regardless of nesting, so each step reuses them for free. */
  .ob-progress{position:relative;height:68px;margin:0 auto 14px;max-width:210px;}
  .ob-progress-track{position:absolute;bottom:4px;left:0;right:0;height:3px;border-radius:2px;background:var(--border);overflow:hidden;}
  .ob-progress-fill{position:absolute;top:0;bottom:0;right:0;width:0%;border-radius:2px;background:linear-gradient(to left, var(--primary), var(--primary2));transition:width .5s cubic-bezier(.4,0,.2,1);}
  .ob-dots{position:absolute;bottom:2.5px;left:0;right:0;display:flex;justify-content:space-between;margin:0;padding:0 1px;}
  .ob-dot{width:6px;height:6px;border-radius:50%;background:var(--border);transition:background .3s,transform .3s;box-shadow:0 0 0 3px var(--panel);}
  .ob-dot.active{background:var(--primary);transform:scale(1.3);}
  .ob-dot.done{background:var(--primary2);}
  /* The Lottie player (see initObBallLottie()) mounts its own <svg> into
     this box, sized so the animation's baked-in ground shadow lands right
     on .ob-progress-track — rides along the bar via the `right` transition,
     same technique the fill/dots use, computed in renderObDots(). */
  .ob-progress-ball{position:absolute;bottom:2px;right:0%;width:64px;height:64px;pointer-events:none;transition:right .5s cubic-bezier(.34,1.56,.64,1);}
  .ob-progress-ball svg{width:100%;height:100%;display:block;}
  /* Boot splash — see the HTML comment on #splash for why this exists.
     #splash-ball is deliberately the same 64x64 as .ob-progress-ball
     above: landing in onboarding, hideSplash() computes a transform from
     this element's real rect onto that one's, and starting both at the
     same size keeps that transform a plain translate with a scale at or
     near 1 instead of a distorting jump. */
  #splash{position:fixed;inset:0;z-index:9999;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;transition:opacity .4s ease;}
  #splash.splash-out{opacity:0;}
  #splash[hidden]{display:none;}
  /* .timmy-wordmark (defined above) already supplies the themed
     background-image; this just sizes it and gives it its own fade,
     independent of #splash's own opacity transition. */
  #splash-logo{width:150px;height:56px;transition:opacity .25s ease;}
  #splash-ball{width:64px;height:64px;transition:transform .5s cubic-bezier(.4,0,.2,1);}
  #splash-ball svg{width:100%;height:100%;display:block;}
  .ob-nav{display:flex;gap:8px;}
  .ob-nav button{width:auto;flex:1;}
  /* Persistent top-corner "back" — see the #ob-back-fab element itself
     (a sibling of .box, like the wordmark) for why this replaced the old
     inline "→ חזרה" button that used to sit in .ob-nav on every step:
     wherever a step had extra bottom-of-card content (the phone step's
     reCAPTCHA widget, most notably), that inline button ended up sitting
     right next to whatever Google chose to render there. Pulling it up to
     its own corner, away from the bottom of the card entirely, sidesteps
     that collision regardless of what Google does down there. */
  /* #onboard's own generic `button` rule (width:100%, primary-blue fill —
     see its definition below) is an ID selector, which beats a plain class
     selector regardless of source order — the same specificity trap
     already worked around for .mini-btn/.type-pill just below it, and
     exactly what silently turned this into a full-width blue bar the first
     time, before this was caught in testing. Scoping under #onboard here
     is what actually wins. */
  #onboard .ob-back-fab{position:absolute;top:calc(14px + env(safe-area-inset-top,0px));right:14px;width:38px;height:38px;border-radius:50%;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:calc(18px * var(--fs));font-weight:700;font-family:inherit;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px rgba(22,33,28,.08);z-index:5;padding:0;}
  .ob-back-fab[hidden]{display:none;}
  #onboard .ob-choice-row{display:flex;gap:10px;margin-bottom:14px;}
  #onboard .ob-choice-card{width:auto;flex:1;display:flex;flex-direction:column;gap:4px;text-align:right;padding:14px 12px;border-radius:16px;border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;font-family:inherit;box-shadow:none;}
  #onboard .ob-choice-card.active{border-color:var(--primary);background:var(--peach);}
  .ob-choice-title{display:block;font-size:calc(14.5px * var(--fs));font-weight:800;}
  .ob-choice-sub{display:block;font-size:calc(12.5px * var(--fs));color:var(--muted);line-height:1.4;}
  .ob-team-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;}
  .ob-team-chip{display:inline-flex;align-items:center;gap:6px;background:var(--peach);color:var(--peach-ink);border-radius:999px;padding:6px 10px;font-size:calc(13px * var(--fs));font-weight:700;}
  /* This ✕ is a real <button> too (see renderObCoachTeamsList()'s markup),
     so the same #onboard button specificity trap fixed on .ob-role-btn
     above applies here as well — without an override it silently inherits
     width:100%, padding:14px and the button shadow, ballooning a small
     inline "remove" glyph into a full-width blue bar inside the chip.
     Scoped under #onboard for the same reason .mini-btn/.type-pill are. */
  #onboard .ob-team-chip-x{width:auto;padding:0;margin:0;border:none;border-radius:50%;background:transparent;color:inherit;font-size:inherit;font-weight:inherit;font-family:inherit;box-shadow:none;cursor:pointer;opacity:.7;}

  /* onboarding motion — the progress ball itself (its bounce, spin and
     ground shadow) is baked into the Lottie animation lottie-web plays
     into #ob-progress-ball — see initObBallLottie() — so there's no CSS
     keyframe animation for the ball at all here; reduced-motion is handled
     by not autoplaying that animation (initObBallLottie() checks
     prefers-reduced-motion itself, same effect as this media query gating
     everything else below). The academy badge still pops in once on the
     welcome screen, and every step's own content staggers in on a quick
     fade-up each time it appears (including re-visits via back/next — an
     element restarts its CSS animation for free the moment it goes from
     [hidden]/display:none back to visible, no JS needed). */
  @media (prefers-reduced-motion: no-preference){
    #ob-step-welcome .ob-welcome-scene{position:relative;width:60px;height:60px;margin:0 auto 16px;}
    #ob-step-welcome .ob-welcome-scene .badge{margin:0;animation:obBadgePop .45s cubic-bezier(.34,1.56,.64,1) .5s both;}
    @keyframes obBadgePop{
      0%{transform:scale(.4);opacity:0;}
      65%{transform:scale(1.12);opacity:1;}
      100%{transform:scale(1);opacity:1;}
    }

    .ob-step:not([hidden]) > h2{animation:obFadeUp .4s ease both;}
    .ob-step:not([hidden]) > p.sub{animation:obFadeUp .4s ease .05s both;}
    .ob-step:not([hidden]) > input,
    .ob-step:not([hidden]) > select,
    .ob-step:not([hidden]) > div:not(.ob-nav):not(.ob-welcome-scene){animation:obFadeUp .4s ease .1s both;}
    .ob-step:not([hidden]) > .ob-nav,
    .ob-step:not([hidden]) > button{animation:obFadeUp .4s ease .16s both;}
    @keyframes obFadeUp{
      from{opacity:0;transform:translateY(8px);}
      to{opacity:1;transform:translateY(0);}
    }
  }

  /* one-time dismissible product tour, shown right after onboarding */
  #tutorial-overlay{position:fixed;inset:0;z-index:80;}
  .tutorial-highlight{position:fixed;border-radius:14px;box-shadow:0 0 0 9999px rgba(15,20,17,.62);pointer-events:none;transition:top .25s,left .25s,width .25s,height .25s;}
  .tutorial-bubble{position:fixed;left:16px;right:16px;max-width:360px;margin:0 auto;background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:16px 18px 18px;box-shadow:0 16px 40px rgba(22,33,28,.25);transition:top .25s,bottom .25s;}
  .tutorial-bubble h3{margin:2px 0 6px;font-size:calc(16px * var(--fs));font-weight:800;color:var(--text);}
  .tutorial-bubble p{margin:0 0 14px;font-size:calc(14px * var(--fs));color:var(--muted);line-height:1.5;}
  .tutorial-progress{font-size:calc(12px * var(--fs));color:var(--muted);font-weight:700;margin-bottom:6px;}
  .tutorial-skip{position:absolute;top:12px;left:14px;background:none;border:none;color:var(--muted);font-size:calc(12.5px * var(--fs));font-family:inherit;cursor:pointer;text-decoration:underline;}
  #tutorial-next{width:100%;padding:12px;border:none;border-radius:999px;background:var(--primary);color:var(--on-primary);font-weight:800;font-size:calc(14.5px * var(--fs));cursor:pointer;font-family:inherit;}

  .hint{font-size:calc(12.5px * var(--fs));color:var(--muted);margin-top:14px;line-height:1.5;}
  /* Weekly-update composer: section titles + clear actions */
  #composer .box{padding-bottom:8px;}
  .c-topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 6px;}
  .c-topbar h2{margin:0 !important;font-size:calc(22px * var(--fs)) !important;}
  .c-close{width:40px;height:40px;border-radius:50%;border:none;background:var(--panel2);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none;}
  .c-close svg{width:18px;height:18px;}
  .c-sec{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:16px;margin:12px 0 0;}
  .c-sec-title{display:flex;align-items:center;gap:9px;font-size:calc(17px * var(--fs));font-weight:800;margin:0 0 12px;color:var(--text);}
  .c-sec-title svg{width:22px;height:22px;color:var(--primary-ink);flex:none;}
  .c-input{display:block;width:100%;border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:12px;padding:11px 12px;font-size:calc(15px * var(--fs));font-family:inherit;}
  select.c-input{min-height:46px;}
  .c-sec > .c-input + .c-input{margin-top:8px;}
  .c-hint{margin:8px 0 0 !important;}
  .c-potw-row{display:flex;align-items:center;gap:10px;margin-bottom:8px;}
  .c-potw-photo{width:46px;height:46px;border-radius:12px;background:var(--panel2);flex:none;overflow:hidden;}
  .c-potw-row select{flex:1;min-width:0;border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:12px;padding:11px 12px;font-size:calc(15px * var(--fs));font-family:inherit;min-height:46px;}
  .c-thumb-row{display:flex;align-items:center;gap:10px;margin:8px 0 0;}
  .c-thumb-prev{width:56px;height:42px;border-radius:8px;background:var(--panel2);flex:none;overflow:hidden;}
  .c-thumb-row .mini-btn{flex:1;}
  #photo-list:not(:empty), #video-list:not(:empty), #c-drill-list:not(:empty){margin-bottom:10px;}
  .add-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;margin-top:10px;border:1.5px dashed rgba(var(--primary-rgb),.55);background:rgba(var(--primary-rgb),.06);color:var(--primary-ink);border-radius:14px;font-size:calc(15px * var(--fs));font-weight:800;font-family:inherit;cursor:pointer;}
  .c-sec-title + .add-btn, .c-sec-title + #photo-list:empty + input + .add-btn{margin-top:0;}
  .add-btn svg{width:18px;height:18px;flex:none;}
  .tm-ib-title{font-size:calc(15px * var(--fs));font-weight:800;margin:0 0 10px;}
  #tm-ib-url{text-align:left;}
  .sess-ext-badge{display:inline-block;font-size:calc(11px * var(--fs));font-weight:700;color:var(--muted);background:var(--panel2);border-radius:999px;padding:1px 7px;margin-inline-start:6px;vertical-align:1px;}
  .mini-btn[hidden], .add-btn[hidden]{display:none;}
  .c-actions{position:sticky;bottom:0;display:flex;flex-direction:column;gap:8px;margin:16px -20px -20px;padding:12px 20px calc(14px + env(safe-area-inset-bottom,0px));background:var(--bg);border-top:1px solid var(--border);z-index:2;}
  .c-actions .save-btn{margin-top:0;}
  .c-actions .mini-btn{width:100%;}
  /* Google's invisible reCAPTCHA still renders its own floating corner
     badge — a hard-edged, unstyled gray box with none of the app's soft
     shadows/rounding, sitting on top of whatever screen is showing. Google's
     terms permit hiding it as long as the equivalent disclosure text stays
     visible in its place — see the .hint right after #recaptcha-container
     on the phone-verification step, which is that required text.
     display:none, not visibility:hidden — confirmed live (via the actual
     rendered widget, DevTools-style inspection of its real class chain,
     not guesswork) that Google's own markup sets an inline
     `visibility:visible` on a DESCENDANT (.grecaptcha-logo, inside this
     badge), which silently overrides an inherited visibility:hidden here.
     display:none on this ancestor can't be overridden that way — nothing
     inside a display:none subtree can un-hide itself.

     This alone didn't fully account for every report of a stray shaded
     box (still seen, in varying sizes/positions, after this rule shipped)
     — the badge is one specific, stable element Google always names
     .grecaptcha-badge, but the iframe(s) it or the widget underneath it
     creates are NOT guaranteed to keep that exact class across API
     versions, and can end up appended directly to <body> rather than
     inside #recaptcha-container if a previous verifier wasn't fully torn
     down before the next one was created (see ensureRecaptcha() and the
     sweepStrayRecaptchaFrames() safety net it now calls). Belt-and-braces:
     hide any iframe Google's own script points at recaptcha, by src,
     regardless of what wrapper class happens to surround it this month.

     BUT only the badge/anchor iframe (src ".../recaptcha/api2/anchor...").
     The previous blanket iframe[src*="recaptcha"] rule also hid the IMAGE
     CHALLENGE iframe (src ".../bframe...") that Google shows when it wants
     the user to prove they're human (common in iOS home-screen apps) —
     leaving Google's empty white bordered popup on screen with nothing
     inside it and no way to finish sign-in. The challenge must stay
     visible. */
  /* Academy color picker — fixed palette instead of typing a hex code */
  .color-field{margin-bottom:13px;}
  .color-field .lbl{display:block;font-size:calc(13px * var(--fs));color:var(--muted);margin-bottom:8px;}
  .color-swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;justify-items:center;}
  .color-swatch{width:100%;max-width:46px;aspect-ratio:1;border-radius:50%;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12);}
  .color-swatch svg{width:55%;height:55%;display:none;}
  .color-swatch.on{box-shadow:0 0 0 3px var(--panel),0 0 0 5px var(--text);}
  .color-swatch.on svg{display:block;}
  .color-swatch:focus-visible{outline:2px solid var(--text);outline-offset:3px;}

  /* Archives: academy announcements + team media library */
  .arch-intro{margin:0 0 12px;}
  .arch-status{display:inline-block;font-size:calc(11.5px * var(--fs));font-weight:700;padding:2px 8px;border-radius:999px;margin-inline-start:6px;vertical-align:1px;}
  .arch-status.live{background:rgba(22,163,74,.16);color:#15803d;}
  .arch-status.ended{background:var(--panel2);color:var(--muted);}
  .arch-status.sched{background:rgba(255,122,26,.16);color:#c2410c;}
  .announce-card.an-archived{background:var(--panel);color:var(--text);border:1px solid var(--border);box-shadow:none;}
  .announce-card.an-archived .an-icon{background:var(--panel2);color:var(--muted);}
  .announce-card.an-archived .an-del{background:var(--panel2);color:var(--muted);}
  .arch-month{font-size:calc(12.5px * var(--fs));font-weight:800;color:var(--muted);margin:16px 0 8px;letter-spacing:.02em;}
  .arch-month:first-child{margin-top:0;}
  .media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;border-radius:14px;overflow:hidden;}
  .media-tile{position:relative;aspect-ratio:1;background:var(--panel2);cursor:pointer;overflow:hidden;border:none;padding:0;display:block;width:100%;}
  .media-tile img{width:100%;height:100%;object-fit:cover;display:block;}
  .media-tile .mt-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0,0,0,.18);}
  .media-tile .mt-play svg{width:30px;height:30px;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4));}
  .media-tile .mt-cap{position:absolute;inset-inline:0;bottom:0;padding:14px 6px 5px;font-size:calc(11px * var(--fs));color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.6));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:start;}
  .media-tile.no-thumb{background:var(--navy);}
  .media-tile .mt-del{position:absolute;top:5px;inset-inline-end:5px;width:26px;height:26px;border-radius:50%;border:none;background:rgba(0,0,0,.5);color:#fff;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;}
  .media-tile .mt-del svg{width:13px;height:13px;}
  .media-actions{display:flex;flex-direction:column;gap:6px;margin:0 0 14px;}
  .media-actions .save-btn{margin-top:0;}
  .media-lib-link{display:block;text-align:center;margin-top:10px;font-size:calc(14px * var(--fs));font-weight:700;color:var(--primary-ink);background:none;border:none;width:100%;padding:8px;cursor:pointer;font-family:inherit;}

  /* Quick posts + polls */
  #qp-composer, #poll-editor{position:absolute;inset:0;background:var(--bg);display:flex;justify-content:center;padding:20px;overflow-y:auto;}
  #qp-composer{z-index:25;}
  #poll-editor{z-index:28;}
  #qp-composer .box, #poll-editor .box{width:100%;max-width:400px;text-align:right;}
  #qp-composer h2, #poll-editor h2{margin:4px 0 14px;font-size:calc(19px * var(--fs));font-weight:800;}
  .qp-images{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:0 0 10px;}
  .qp-images:empty{display:none;}
  .qp-thumb{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--panel2);}
  .qp-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
  .qp-thumb button, .poll-chip .pc-x, .pe-opt-row button{width:24px;height:24px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;flex:none;}
  .qp-thumb button{position:absolute;top:4px;inset-inline-end:4px;background:rgba(0,0,0,.55);color:#fff;}
  .qp-thumb button svg, .poll-chip .pc-x svg, .pe-opt-row button svg{width:12px;height:12px;}
  #qp-composer{padding:16px 16px 0;}
  .qp-box{display:flex;flex-direction:column;min-height:100%;}
  .qp-textarea{flex:1;min-height:220px;width:100%;border:none;background:var(--panel);color:var(--text);border-radius:18px;padding:16px;font-size:calc(17px * var(--fs));line-height:1.55;font-family:inherit;resize:none;margin:8px 0 12px;box-shadow:inset 0 0 0 1px var(--border);}
  .qp-textarea:focus{outline:none;box-shadow:inset 0 0 0 2px rgba(var(--primary-rgb),.5);}
  .qp-files{display:flex;flex-direction:column;gap:6px;margin:0 0 10px;}
  .qp-files:empty{display:none;}
  .qp-file-row{display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:9px 12px;font-size:calc(14px * var(--fs));}
  .qp-file-row svg{width:18px;height:18px;flex:none;color:var(--primary-ink);}
  .qp-file-row .qf-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;}
  .qp-file-row button{width:24px;height:24px;border-radius:50%;border:none;background:var(--panel2);color:var(--muted);display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;flex:none;}
  .qp-file-row button svg{width:12px;height:12px;color:inherit;}
  .qp-bar{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:auto -16px 0;padding:10px 16px calc(12px + env(safe-area-inset-bottom,0px));background:var(--bg);border-top:1px solid var(--border);}
  .qp-icons{display:flex;gap:4px;}
  .qp-icon{width:46px;height:46px;border-radius:50%;border:none;background:none;color:var(--primary-ink);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;}
  .qp-icon svg{width:25px;height:25px;}
  .qp-icon:active{background:rgba(var(--primary-rgb),.12);}
  .qp-icon:disabled{opacity:.35;cursor:default;}
  .qp-send{width:54px;height:54px;border-radius:50%;border:none;background:var(--primary);color:var(--on-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none;box-shadow:0 8px 18px rgba(var(--primary-rgb),.3);}
  .qp-send svg{width:24px;height:24px;transform:scaleX(-1);}
  .qp-send:disabled{opacity:.5;}
  .fp-files{display:flex;flex-direction:column;gap:6px;margin-top:10px;}
  .fp-file{display:flex;align-items:center;gap:10px;background:var(--panel2);border-radius:12px;padding:10px 12px;color:var(--text);text-decoration:none;font-size:calc(14px * var(--fs));font-weight:600;}
  .fp-file svg{width:18px;height:18px;flex:none;color:var(--primary-ink);}
  .fp-file span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .poll-chip{display:flex;align-items:center;gap:10px;background:var(--peach);color:var(--peach-ink);border-radius:12px;padding:10px 12px;margin:0 0 10px;cursor:pointer;font-size:calc(14px * var(--fs));font-weight:700;}
  .poll-chip > svg{width:18px;height:18px;flex:none;}
  .poll-chip .pc-txt{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .poll-chip .pc-x{background:rgba(0,0,0,.08);color:inherit;}
  .pe-lbl{display:block;font-size:calc(13px * var(--fs));color:var(--muted);margin-bottom:6px;}
  .pe-opt-row{display:flex;gap:8px;align-items:center;margin-bottom:8px;}
  .pe-opt-row input{flex:1;min-width:0;border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:12px;padding:10px 12px;font-size:calc(14.5px * var(--fs));font-family:inherit;}
  .pe-opt-row button{background:var(--panel2);color:var(--muted);width:30px;height:30px;}
  .poll-widget{margin-top:10px;}
  .poll-widget:first-child{margin-top:0;}
  .poll-q{font-weight:800;font-size:calc(15px * var(--fs));line-height:1.4;margin-bottom:2px;text-wrap:pretty;}
  .poll-meta{font-size:calc(12px * var(--fs));color:var(--muted);margin-bottom:8px;}
  .poll-opt{position:relative;display:block;width:100%;text-align:start;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:12px;padding:10px 12px;margin-bottom:6px;cursor:pointer;font-family:inherit;font-size:calc(14px * var(--fs));overflow:hidden;}
  .poll-opt:last-of-type{margin-bottom:0;}
  .poll-opt:focus-visible{outline:2px solid var(--primary);outline-offset:2px;}
  .poll-opt .po-bar{position:absolute;top:0;bottom:0;inset-inline-start:0;background:rgba(var(--primary-rgb),.13);transition:width .3s ease;}
  .poll-opt.mine{border-color:var(--primary);}
  .poll-opt.mine .po-bar{background:rgba(var(--primary-rgb),.24);}
  .poll-opt .po-row{position:relative;display:flex;justify-content:space-between;gap:8px;align-items:center;}
  .poll-opt .po-label{font-weight:600;display:flex;align-items:center;gap:6px;min-width:0;}
  .poll-opt .po-label svg{width:15px;height:15px;color:var(--primary-ink);flex:none;}
  .poll-opt .po-pct{font-size:calc(12.5px * var(--fs));color:var(--muted);font-variant-numeric:tabular-nums;flex:none;}
  .poll-opt .po-names{position:relative;font-size:calc(11.5px * var(--fs));color:var(--muted);margin-top:3px;line-height:1.4;}
  .poll-hint{font-size:calc(12px * var(--fs));color:var(--muted);margin-top:6px;}
  .bubble .poll-widget{min-width:220px;margin-top:6px;}
  .bubble.mine .poll-meta, .bubble.mine .poll-hint{color:inherit;opacity:.8;}
  .bubble .poll-opt{color:var(--text);}
  .feed-post{margin-bottom:12px;}
  .fp-head{display:flex;align-items:center;gap:10px;margin-bottom:9px;}
  .fp-head .avatar{width:36px;height:36px;overflow:hidden;}
  .fp-head .avatar img{width:100%;height:100%;object-fit:cover;}
  .fp-who{flex:1;min-width:0;}
  .fp-name{font-weight:800;font-size:calc(14.5px * var(--fs));}
  .fp-sub{font-size:calc(12px * var(--fs));color:var(--muted);}
  .fp-del{width:30px;height:30px;border-radius:50%;border:none;background:var(--panel2);color:var(--muted);display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;flex:none;}
  .fp-del svg{width:15px;height:15px;}
  .fp-text{font-size:calc(15px * var(--fs));line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;}
  .fp-imgs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:10px;border-radius:12px;overflow:hidden;}
  .fp-imgs:first-child{margin-top:0;}
  .fp-imgs img{width:100%;aspect-ratio:1;object-fit:cover;display:block;cursor:pointer;background:var(--panel2);}
  .fp-imgs.n1{grid-template-columns:1fr;}
  .fp-imgs.n1 img{aspect-ratio:auto;max-height:440px;}
  .fp-imgs.n3 img:first-child{grid-column:1 / -1;aspect-ratio:2 / 1;}
  .fp-text + .poll-widget, .fp-imgs + .poll-widget, .fp-files + .poll-widget{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);}

  /* Story: invitation to post the first weekly update (coach view) */
  .first-update-card{text-align:center;padding:22px 18px;margin-bottom:14px;}
  .first-update-card .fu-icon{width:52px;height:52px;border-radius:50%;margin:0 auto 12px;background:var(--peach);color:var(--peach-ink);display:flex;align-items:center;justify-content:center;}
  .first-update-card .fu-icon svg{width:26px;height:26px;}
  .first-update-card .fu-title{font-size:calc(17px * var(--fs));font-weight:800;margin:0 0 6px;text-wrap:balance;}
  .first-update-card .save-btn{display:flex;align-items:center;justify-content:center;text-align:center;}
  .first-update-card .fu-text{font-size:calc(14px * var(--fs));line-height:1.55;color:var(--muted);margin:0 auto 14px;max-width:34ch;text-wrap:pretty;}

  /* Team photo slot — top of Team > Team members */
  .team-photo-slot{margin:0 0 14px;}
  .team-photo-frame{border-radius:16px;overflow:hidden;background:var(--panel2);border:1px solid var(--border);}
  .team-photo-frame img{display:block;width:100%;height:auto;}
  .team-photo-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;aspect-ratio:16/9;border:1.5px dashed var(--border);background:var(--panel2);color:var(--muted);border-radius:16px;font-family:inherit;font-size:calc(14.5px * var(--fs));font-weight:600;cursor:pointer;}
  .team-photo-empty svg{width:30px;height:30px;}
  .team-photo-actions{display:flex;gap:8px;margin-top:8px;}
  .team-photo-actions .mini-btn{flex:1;}
  .grecaptcha-badge{display:none !important;}
  iframe[src*="recaptcha"][src*="anchor"]{display:none !important;}

  /* build-the-week coach overlay + shared step/stat/pill components */
  .icon-badge{width:40px;height:40px;border-radius:13px;background:var(--panel2);color:var(--muted);display:flex;align-items:center;justify-content:center;flex:none;}
  .icon-badge svg{width:19px;height:19px;}
  .step{background:var(--panel);border-radius:20px;padding:18px;box-shadow:0 6px 18px rgba(22,33,28,.05);margin-bottom:14px;}
  .step.active{box-shadow:0 10px 24px rgba(var(--primary-rgb),.14);}
  .step.active .icon-badge{background:var(--peach);color:var(--peach-ink);}
  .step-head{display:flex;align-items:center;gap:14px;}
  .step-head h2{margin:0;font-size:calc(16px * var(--fs));font-weight:800;}
  .step-head .n{font-size:calc(12px * var(--fs));color:var(--muted);font-weight:700;margin-bottom:2px;text-transform:uppercase;letter-spacing:.03em;}
  .step-head .chev{color:var(--muted);font-size:calc(16px * var(--fs));margin-inline-start:auto;}
  .step-sub{font-size:calc(14px * var(--fs));color:var(--muted);margin:10px 0 0 54px;line-height:1.5;}
  .step-body{margin-top:16px;}
  .stat-row{display:flex;gap:10px;margin-bottom:14px;}
  .stat{flex:1;background:var(--panel2);border-radius:14px;padding:11px 12px;}
  .stat .v{font-size:calc(20px * var(--fs));font-weight:800;}
  .stat .l{font-size:calc(12px * var(--fs));color:var(--muted);margin:1px 0 7px;}
  .stat .bar{height:5px;border-radius:3px;background:var(--border);overflow:hidden;}
  .stat .bar i{display:block;height:100%;border-radius:3px;}
  .pill-btn{border:none;border-radius:999px;padding:9px 16px;font-size:calc(13.5px * var(--fs));font-weight:700;cursor:pointer;font-family:inherit;}
  .pill-btn.ghost{background:var(--panel);border:1.5px solid var(--border);color:var(--text);}
  .pill-btn.go{background:var(--go);color:#fff;}
  .cta{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;background:var(--primary);color:var(--on-primary);font-weight:800;border-radius:999px;padding:16px;font-size:calc(15.5px * var(--fs));border:none;cursor:pointer;box-shadow:0 12px 26px rgba(var(--primary-rgb),.3);}
  .cta svg{width:18px;height:18px;}
  .fine{font-size:calc(13px * var(--fs));color:var(--muted);text-align:center;margin-top:14px;line-height:1.6;}
  #coach-flow{position:absolute;inset:0;background:var(--bg);z-index:24;display:flex;flex-direction:column;}
  #coach-flow .de-body{flex:1;overflow-y:auto;padding:18px;}
  .cf-cta-row{padding:14px 16px calc(14px + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--border);}
  #team-mgmt{position:absolute;inset:0;background:var(--bg);z-index:24;display:flex;flex-direction:column;}
  #access-mgmt{position:absolute;inset:0;background:var(--bg);z-index:30;display:flex;flex-direction:column;}
  .am-row{display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:13px 14px;margin-bottom:9px;box-shadow:0 4px 12px rgba(22,33,28,.04);}
  .am-row-head{display:flex;align-items:center;gap:12px;}
  .am-teams{display:flex;flex-wrap:wrap;gap:6px;}
  .am-team-chip{border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:999px;padding:5px 11px;font-size:calc(12.5px * var(--fs));font-weight:700;cursor:pointer;font-family:inherit;}
  .am-team-chip.on{background:var(--peach);color:var(--peach-ink);border-color:var(--peach-ink);}
  .am-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:8px;}
  .am-toggle-row .lbl{font-size:calc(13px * var(--fs));color:var(--muted);}
  .am-role-row{display:flex;align-items:center;justify-content:space-between;gap:8px;}
  .am-role-row .lbl{font-size:calc(13px * var(--fs));color:var(--muted);flex:none;}
  .am-role-row select{border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:10px;padding:7px 10px;font-size:calc(13px * var(--fs));font-family:inherit;max-width:60%;}
  .tm-team-row{display:flex;justify-content:space-between;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:13px 14px;margin-bottom:9px;cursor:pointer;box-shadow:0 4px 12px rgba(22,33,28,.04);}
  .tm-team-row .wk{font-weight:700;font-size:calc(15px * var(--fs));}
  .tm-team-row .dt{font-size:calc(13px * var(--fs));color:var(--muted);margin-top:1px;}
  .tm-staff-row, .tm-player-row{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:12px 14px;margin-bottom:9px;box-shadow:0 4px 12px rgba(22,33,28,.04);}
  .tm-player-row.pending{border-color:#d97706;}
  /* settings home: hamburger-style category menu */
  .menu-list{margin-bottom:20px;}
  .menu-row{display:flex;align-items:center;gap:12px;width:100%;background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:12px 14px;margin-bottom:9px;box-shadow:0 4px 12px rgba(22,33,28,.04);cursor:pointer;font-family:inherit;text-align:right;}
  .menu-row-icon{width:38px;height:38px;border-radius:11px;background:var(--peach);color:var(--peach-ink);display:flex;align-items:center;justify-content:center;flex:none;}
  .menu-row-icon svg{width:19px;height:19px;}
  .menu-row-body{flex:1;min-width:0;}
  .menu-row-title{font-weight:700;font-size:calc(15px * var(--fs));}
  .menu-row-sub{font-size:calc(12.5px * var(--fs));color:var(--muted);margin-top:2px;}
  .menu-row-chev{flex:none;width:18px;height:18px;color:var(--muted);}
  .tm-staff-row .body, .tm-player-row .body{flex:1;min-width:0;}
  .tm-staff-row .nm, .tm-player-row .nm{font-weight:700;font-size:calc(15px * var(--fs));}
  .tm-staff-row .sub, .tm-player-row .sub{font-size:calc(13px * var(--fs));color:var(--muted);margin-top:2px;}
  .tm-player-id{font-family:monospace;font-size:calc(11.5px * var(--fs));color:var(--muted);}

  [hidden]{display:none!important;}

  /* ---------- consistent navigation: one back arrow, top corner ---------- */
  .back-btn{width:42px;height:42px;border-radius:50%;border:none;background:var(--panel2);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none;padding:0;}
  .back-btn svg{width:22px;height:22px;flex:none;opacity:1 !important;}
  .back-btn:active{background:rgba(var(--primary-rgb),.16);}
  .back-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px;}
  .screen-top{display:flex;align-items:center;gap:12px;margin:0 0 16px;}
  .screen-title{margin:0 !important;font-size:calc(21px * var(--fs)) !important;font-weight:800;line-height:1.25;flex:1;min-width:0;text-wrap:balance;}
  /* the full-screen sections that used a dark navy strip now share the same light top bar */
  .de-header{background:var(--bg) !important;color:var(--text) !important;border-bottom:1px solid var(--border);padding:calc(10px + env(safe-area-inset-top,0px)) 16px 10px !important;}
  .de-header input{border:1px solid var(--border) !important;background:var(--panel2) !important;color:var(--text) !important;}
  .de-header input::placeholder{color:var(--muted) !important;}
  .de-header h1{font-size:calc(19px * var(--fs)) !important;}
  /* nothing sits under the status bar / notch */
  #group-sheet, #composer, #drill-pick-sheet, #tm-drill-import-sheet, #event-sheet, #poll-editor{padding-top:calc(14px + env(safe-area-inset-top,0px)) !important;}
  #qp-composer{padding-top:calc(12px + env(safe-area-inset-top,0px)) !important;}
  #onboard{padding-top:calc(24px + env(safe-area-inset-top,0px)) !important;}
  #mini-dialog, #announce-composer, #sticker-maker{padding-top:calc(20px + env(safe-area-inset-top,0px)) !important;}
  #action-sheet{padding-bottom:calc(20px + env(safe-area-inset-bottom,0px)) !important;}
  .lb-close{top:calc(14px + env(safe-area-inset-top,0px)) !important;left:auto !important;right:14px;width:42px !important;height:42px !important;display:flex;align-items:center;justify-content:center;padding:0;}
  .lb-close svg{width:22px;height:22px;}
  /* iOS home-screen apps have no system back swipe — this is ours */
  #edge-back{position:fixed;top:50%;left:0;width:44px;height:44px;margin-top:-22px;border-radius:50%;background:var(--panel);color:var(--text);box-shadow:0 6px 18px rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center;z-index:9000;pointer-events:none;opacity:0;transform:translateX(-50px);}
  #edge-back svg{width:22px;height:22px;transform:scaleX(-1);}
  #edge-back.ready{background:var(--primary);color:var(--on-primary);}

  /* score card: logos side by side, score centered, scorers under our logo */
  .gc-grid{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:10px;text-align:center;}
  .gc-team{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;}
  .gc-logo{width:64px;height:64px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px var(--border),0 4px 12px rgba(22,33,28,.08);display:flex;align-items:center;justify-content:center;overflow:hidden;flex:none;}
  .gc-logo img{width:82%;height:82%;object-fit:contain;}
  .gc-logo-text{background:var(--peach);color:var(--peach-ink);font-weight:800;font-size:calc(20px * var(--fs));}
  .gc-name{font-weight:800;font-size:calc(13.5px * var(--fs));line-height:1.3;text-wrap:balance;overflow-wrap:anywhere;}
  .gc-scorers{font-size:calc(12.5px * var(--fs));color:var(--muted);line-height:1.45;white-space:pre-wrap;max-width:100%;}
  .gc-mid{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:10px;}
  .gc-score{display:flex;align-items:center;gap:6px;font-size:calc(36px * var(--fs));font-weight:800;font-variant-numeric:tabular-nums;line-height:1;}
  .gc-dash{color:var(--muted);font-size:.7em;}
  .gc-n{color:var(--text);}
  .game-card.win .gc-n.lead{color:var(--go);}
  .gc-vs{font-weight:800;font-size:calc(18px * var(--fs));color:var(--muted);padding-top:12px;letter-spacing:.06em;}

  /* weekly update as a feed card: sections inside sit flat, not as nested cards */
  .feed-update{padding-bottom:6px;}
  .feed-update .fu-kind{font-weight:800;color:var(--primary-ink);}
  .feed-update #upd-content > div > .eyebrow:first-child,
  .feed-update #upd-content > div:first-child > .eyebrow{margin-top:6px !important;}
  .feed-update .card{box-shadow:none;border:1px solid var(--border);margin-bottom:0;}
  .feed-update .card:not(.game-card){background:var(--panel2);border-color:transparent;}
  .feed-update .eyebrow{margin-top:16px !important;}
  .feed-update #game-section .eyebrow{margin-top:4px !important;}
  .feed-update .coach-note{background:var(--panel2);}
  .hist-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:24px 0 10px;}

  /* coach profile page */
  #coach-page{position:absolute;inset:0;background:var(--bg);z-index:28;display:flex;flex-direction:column;}
  .cp-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;margin:4px 0 16px;}
  .cp-avatar{width:104px;height:104px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:calc(38px * var(--fs));font-weight:800;color:#fff;box-shadow:0 0 0 4px var(--panel),0 0 0 6px var(--peach);margin-bottom:8px;}
  .cp-avatar img{width:100%;height:100%;object-fit:cover;}
  .cp-name{margin:0;font-size:calc(22px * var(--fs));font-weight:800;}
  .cp-title{color:var(--muted);font-size:calc(14.5px * var(--fs));font-weight:600;}
  .cp-actions{display:flex;gap:10px;margin:0 0 14px;}
  .cp-act{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:999px;background:var(--primary);color:var(--on-primary);font-weight:800;text-decoration:none;font-size:calc(15px * var(--fs));}
  .cp-act.wa{background:#1f9d55;color:#fff;}
  .cp-act svg{width:20px;height:20px;}
  .cp-bio{font-size:calc(15px * var(--fs));line-height:1.6;white-space:pre-wrap;}
  .cp-chips{display:flex;flex-wrap:wrap;gap:8px;}
  .cp-sec-title{margin:0 0 10px;font-size:calc(13px * var(--fs));font-weight:700;color:var(--muted);}
  .cp-chip{background:var(--panel);color:var(--text);border:1.5px solid var(--border);border-radius:12px;padding:7px 12px;font-weight:700;font-size:calc(14px * var(--fs));}
  #coach-page .card{margin-bottom:12px;}
  .roster-sec-title{font-size:calc(13px * var(--fs));font-weight:800;color:var(--muted);margin:4px 2px 8px;}
  .post.staff-row{cursor:pointer;}
  .fp-head .avatar.linkable, .fp-name.linkable{cursor:pointer;}

  /* next practice/game: time inside the badge, opponent gets the full text line */
  .next-session-card .sess-date-badge{width:52px;height:62px;gap:1px;}
  .next-session-card .sess-date-badge .tm{font-size:calc(11px * var(--fs));font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;margin-top:2px;}
  .next-session-card .ns-when{white-space:normal !important;overflow:visible !important;display:flex;align-items:center;gap:6px;line-height:1.25;}
  .next-session-card .ns-when .team-logo{margin:0;}
  .next-session-card .ns-where{white-space:normal !important;margin-top:4px;}
  .next-session-card .ns-where .side-pill{margin:0;}

  /* schedule: recurring-practices sheet, tap-to-expand events, admin pencil */
  #recur-sheet{position:absolute;inset:0;background:var(--bg);z-index:22;display:flex;justify-content:center;padding:calc(14px + env(safe-area-inset-top,0px)) 20px 20px;overflow-y:auto;}
  #recur-sheet .box{width:100%;max-width:400px;text-align:right;}
  .sess-card{position:relative;}
  .sess-more{display:none;margin-top:6px;}
  .sess-card.expanded .sess-more{display:block;}
  .sess-card:not(.expanded) .sess-main::after{content:'';display:block;width:18px;height:3px;border-radius:2px;background:var(--border);margin:8px auto 0;}
  .sess-edit-btn{position:absolute;top:10px;left:10px;width:34px;height:34px;border-radius:50%;border:none;background:var(--panel2);color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;}
  .sess-edit-btn svg{width:16px;height:16px;}
  .sess-edit-btn:active{background:rgba(var(--primary-rgb),.16);color:var(--primary-ink);}
  .sess-card .sess-type-row{padding-left:40px;}

  /* player stats */
  .ps-tiles{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;}
  .ps-row{display:grid;grid-template-columns:1fr repeat(3, 38px);gap:6px;align-items:center;padding:8px 2px;border-top:1px solid var(--border);font-size:calc(13.5px * var(--fs));font-variant-numeric:tabular-nums;}
  .ps-row span:not(.ps-game){text-align:center;font-weight:700;}
  .ps-head{border-top:none;color:var(--muted);font-size:calc(11.5px * var(--fs));font-weight:700;padding-top:0;}
  .ps-game{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);}
  .ld-row{display:flex;align-items:center;gap:12px;padding:10px 2px;border-top:1px solid var(--border);cursor:pointer;}
  .ld-row:first-child{border-top:none;padding-top:0;}
  .ld-av{width:42px;height:42px;}
  .ld-info{flex:1;min-width:0;}
  .ld-stat{font-size:calc(12px * var(--fs));color:var(--muted);font-weight:700;}
  .ld-name{font-weight:800;font-size:calc(15px * var(--fs));}
  .ld-val{text-align:center;line-height:1.1;}
  .ld-val b{display:block;font-size:calc(22px * var(--fs));font-weight:800;color:var(--primary-ink);font-variant-numeric:tabular-nums;}
  .ld-val span{font-size:calc(11px * var(--fs));color:var(--muted);}
  #box-sheet{position:absolute;inset:0;background:var(--bg);z-index:27;display:flex;justify-content:center;padding:calc(14px + env(safe-area-inset-top,0px)) 20px 20px;overflow-y:auto;}
  #box-sheet .box{width:100%;max-width:420px;text-align:right;}
  .box-head{color:var(--muted);font-weight:700;margin:-8px 0 12px;}
  .bx-row{display:grid;grid-template-columns:1fr repeat(3, 56px);gap:6px;align-items:center;padding:6px 0;border-top:1px solid var(--border);}
  .bx-headrow{border-top:none;color:var(--muted);font-weight:700;font-size:calc(12px * var(--fs));}
  .bx-headrow span{text-align:center;}
  .bx-name{font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .bx-row input{width:100%;min-width:0;border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:10px;padding:8px 4px;text-align:center;font-size:calc(15px * var(--fs));font-family:inherit;}
  .result-row{flex-wrap:wrap;}
  .result-box-btn{flex-basis:100%;margin-top:2px;border:1px dashed rgba(var(--primary-rgb),.5);background:rgba(var(--primary-rgb),.05);color:var(--primary-ink);border-radius:10px;padding:7px;font-weight:700;font-family:inherit;font-size:calc(13px * var(--fs));cursor:pointer;width:100%;}

  /* own profile photo (החשבון שלי) */
  .acct-photo{position:relative;width:60px;height:60px;border:none;padding:0;background:none;cursor:pointer;flex:none;}
  .acct-photo-img{width:60px;height:60px;border-radius:50%;overflow:hidden;background:var(--panel2);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:calc(22px * var(--fs));color:#fff;}
  .acct-photo-img img{width:100% !important;height:100% !important;object-fit:cover;}
  .acct-photo-cam{position:absolute;bottom:-2px;left:-2px;width:26px;height:26px;border-radius:50%;background:var(--primary);color:var(--on-primary);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--panel);}
  .acct-photo-cam svg{width:14px;height:14px;}
  /* chat: sender photo beside other people's bubbles */
  .msg-row{display:flex;align-items:flex-end;gap:6px;align-self:flex-end;max-width:86%;}
  .msg-row .bubble{max-width:none;min-width:0;}
  .msg-av{width:30px;height:30px;border-radius:50%;flex:none;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:calc(13px * var(--fs));}
  .msg-av img{width:100%;height:100%;object-fit:cover;}
  .msg-av.spacer{visibility:hidden;}

  .pp-number{font-size:calc(56px * var(--fs));font-weight:900;line-height:1;letter-spacing:-.02em;color:var(--primary-ink);font-variant-numeric:tabular-nums;direction:ltr;margin-top:-2px;}

  .jersey-badge{flex:none;min-width:38px;height:38px;padding:0 6px;border-radius:10px;background:var(--panel2);color:var(--text);font-weight:900;font-size:calc(18px * var(--fs));display:inline-flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums;letter-spacing:-.02em;}

  /* Roster claim sheet: a parent/player picks themselves from the real roster */
  #claim-sheet{position:absolute;inset:0;background:var(--bg);z-index:29;display:flex;justify-content:center;padding:calc(14px + env(safe-area-inset-top,0px)) 20px calc(20px + env(safe-area-inset-bottom,0px));overflow-y:auto;}
  #claim-sheet .box{width:100%;max-width:420px;text-align:right;display:flex;flex-direction:column;}
  .claim-list{display:flex;flex-direction:column;gap:8px;margin:12px 0;}
  .claim-row{display:flex;align-items:center;gap:12px;width:100%;background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:10px 12px;font:inherit;color:var(--text);text-align:right;cursor:pointer;}
  .claim-row:active{transform:scale(.99);}
  .claim-row .av{width:44px;height:44px;border-radius:50%;flex:none;overflow:hidden;background:var(--panel2);}
  .claim-row .av img{width:100%;height:100%;object-fit:cover;}
  .claim-row .av, .claim-picked .av{display:flex;align-items:center;justify-content:center;}
  .claim-row .nm{flex:1;min-width:0;font-weight:700;font-size:calc(15.5px * var(--fs));}
  .claim-row .tag{font-size:calc(12px * var(--fs));color:var(--muted);font-weight:600;}
  .claim-picked{display:flex;flex-direction:column;align-items:center;gap:8px;margin:18px 0 20px;}
  .claim-picked .av{width:96px;height:96px;border-radius:50%;overflow:hidden;background:var(--panel2);}
  .claim-picked .av img{width:100%;height:100%;object-fit:cover;}
  .claim-picked .nm{font-weight:900;font-size:calc(21px * var(--fs));}
  .claim-picked .no{font-weight:900;font-size:calc(15px * var(--fs));color:var(--muted);}
  .claim-ghost{background:none;border:none;color:var(--muted);font:inherit;font-size:calc(14px * var(--fs));font-weight:700;padding:12px;cursor:pointer;text-decoration:underline;}
  .claim-missing{margin-top:4px;width:100%;padding:13px;border-radius:15px;border:1.5px dashed var(--border);background:none;color:var(--text);font:inherit;font-weight:700;font-size:calc(14.5px * var(--fs));cursor:pointer;}
  .claim-empty{color:var(--muted);text-align:center;padding:20px 0;font-size:calc(14px * var(--fs));}
  .tm-req{background:var(--panel);border:1px solid #d97706;border-radius:15px;padding:12px 14px;margin-bottom:9px;}
  .pending-coach-card{display:flex;flex-direction:column;gap:3px;background:var(--peach);color:var(--peach-ink);border-radius:15px;padding:12px 14px;margin-bottom:10px;font-size:calc(13.5px * var(--fs));line-height:1.45;}
  .pending-coach-card b{font-size:calc(14.5px * var(--fs));}
  .tm-req .t{font-weight:700;font-size:calc(14.5px * var(--fs));}
  .tm-req .s{color:var(--muted);font-size:calc(12.5px * var(--fs));margin-top:3px;}
  .tm-req .acts{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap;}
  .tm-req .acts .mini-btn{flex:1;min-width:0;}
  .tm-req .warn-txt{color:#d97706;font-weight:700;}
  #account-links{margin-top:12px;border-top:1px solid var(--border);padding-top:12px;}
  #account-links .lnk{font-size:calc(13.5px * var(--fs));margin-bottom:8px;}
  #account-links .lnk-req{background:var(--panel2);border-radius:12px;padding:10px 12px;margin-bottom:8px;font-size:calc(13.5px * var(--fs));}
  #account-links .lnk-req .acts{display:flex;gap:8px;margin-top:8px;}
  #account-links .lnk-req .acts .mini-btn{flex:1;}
  /* legal: consent at signup, re-consent gate, in-app reader, player approval gate */
  .ob-consent{display:flex;align-items:flex-start;gap:10px;text-align:right;margin:0 0 14px;font-size:calc(14px * var(--fs));line-height:1.5;cursor:pointer;}
  .ob-consent input{width:20px;height:20px;flex:none;margin:2px 0 0;accent-color:var(--primary);}
  .ob-consent a, .legal-links a{color:var(--primary-ink);font-weight:700;}
  #legal-sheet{position:absolute;inset:0;z-index:50;background:var(--bg);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px);}
  #legal-sheet .screen-top{padding:10px 16px 6px;}
  #legal-frame{flex:1;width:100%;border:0;background:var(--bg);}
  .gate{position:absolute;inset:0;background:var(--bg);display:flex;justify-content:center;align-items:center;padding:calc(20px + env(safe-area-inset-top,0px)) 22px calc(24px + env(safe-area-inset-bottom,0px));overflow-y:auto;}
  #consent-gate{z-index:40;}
  #approval-gate{z-index:28;}
  .gate .box{width:100%;max-width:380px;text-align:center;}
  .gate .gate-icon{width:64px;height:64px;border-radius:20px;background:var(--peach);color:var(--peach-ink);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;}
  .gate .gate-icon svg{width:32px;height:32px;}
  .gate h2{margin:0 0 8px;font-size:calc(22px * var(--fs));font-weight:900;text-wrap:balance;}
  .gate p{margin:0 0 18px;color:var(--muted);font-size:calc(15px * var(--fs));line-height:1.55;}
  .gate .ob-consent{margin:0 0 16px;}
  .legal-links{display:flex;justify-content:center;gap:14px;margin-top:14px;font-size:calc(13.5px * var(--fs));}
  .acct-legal{display:flex;gap:14px;justify-content:center;margin-top:12px;font-size:calc(13.5px * var(--fs));}
  .acct-legal a{color:var(--muted);}
  /* support: report a problem */
  #report-sheet{position:absolute;inset:0;z-index:45;background:var(--bg);display:flex;justify-content:center;padding:calc(14px + env(safe-area-inset-top,0px)) 20px calc(20px + env(safe-area-inset-bottom,0px));overflow-y:auto;}
  #report-sheet .box{width:100%;max-width:420px;text-align:right;}
  #rp-text{display:block;width:100%;min-height:150px;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:14px;padding:12px;font:inherit;font-size:calc(15.5px * var(--fs));resize:vertical;margin:0 0 12px;}
  .rp-shot{display:flex;align-items:center;gap:10px;margin:0 0 12px;}
  .rp-shot img{width:56px;height:56px;border-radius:10px;object-fit:cover;border:1px solid var(--border);}
  .rp-diag{margin:0 0 14px;font-size:calc(13px * var(--fs));color:var(--muted);}
  .rp-diag summary{cursor:pointer;font-weight:700;}
  .rp-diag pre{direction:ltr;text-align:left;white-space:pre-wrap;word-break:break-word;background:var(--panel2);border-radius:10px;padding:10px;font-size:calc(11.5px * var(--fs));margin:8px 0 0;max-height:220px;overflow:auto;}
  /* #onboard button (an id rule) styles every onboarding button as the big
     primary pill, so both of these need #onboard-level selectors:
     sending the code is the step's main action (primary pill); the help
     link is a quiet text link under it. */
  #onboard .ob-help-link{display:block;width:auto;margin:14px auto 0;padding:8px 12px;background:none;border:none;box-shadow:none;color:var(--muted);font-weight:600;font-size:calc(13.5px * var(--fs));text-decoration:underline;text-underline-offset:3px;}
  #onboard #ob-save, #onboard #ob-phone-send-btn{text-align:center;}
  #onboard #ob-phone-send-btn{width:100%;padding:14px;background:var(--primary);color:var(--on-primary);font-weight:800;font-size:calc(15px * var(--fs));box-shadow:0 10px 22px rgba(var(--primary-rgb),.28);}

  /* Chat: floating search button (top corner of the messages) */
  .chat-search-fab{position:sticky;top:calc(var(--seg-h, 76px) + 34px);z-index:4;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;margin:0 0 -40px;margin-inline-start:auto;border-radius:50%;border:1px solid var(--border);background:var(--panel);color:var(--text);box-shadow:0 4px 14px rgba(0,0,0,.14);cursor:pointer;}
  .chat-search-fab svg{width:19px;height:19px;}
  .chat-search-fab:active{background:var(--panel2);}
  /* Chat: + button and its tray (emoji, sticker, poll) */
  .chat-tray{display:flex;gap:6px;padding:10px 8px;margin:0 0 8px;background:var(--panel);border:1px solid var(--border);border-radius:18px;box-shadow:0 8px 24px rgba(0,0,0,.12);}
  .chat-tray[hidden]{display:none;}
  .composer .chat-tray .emoji-btn{width:68px;min-width:68px;height:auto;flex-direction:column;gap:6px;border-radius:14px;color:var(--text);padding:2px 0;}
  .composer .chat-tray .emoji-btn svg{width:48px;height:48px;padding:13px;box-sizing:border-box;border-radius:14px;background:var(--panel2);color:var(--primary);}
  .chat-tray .emoji-btn span{font-size:calc(12px * var(--fs));font-weight:700;}
  #chat-more-btn svg{transition:transform .18s ease;}
  #chat-more-btn.open{color:var(--text);}
  #chat-more-btn.open svg{transform:rotate(45deg);}
  @media (prefers-reduced-motion: reduce){ #chat-more-btn svg{transition:none;} }

  /* Team tabs stay pinned to the top while the content scrolls under them;
     the spread shadow (page background) hides what passes beside/above. */
  #group-segmented{position:sticky;top:18px;z-index:5;box-shadow:0 -4px 0 18px var(--bg);}
  /* Pinned spot == resting spot, so nothing shifts when scrolling reaches
     an end: tabs stick at the panel's top padding (18px) and, in chat and
     board, the panel has no bottom padding so the message box rests where
     it sticks — right on the tab bar. */
  #panel-group:has(#group-view-chat:not([hidden])), #panel-group:has(#group-view-board:not([hidden])){padding-bottom:0;}
  #group-view-chat .composer, #group-view-board .composer{padding-bottom:10px;}

  /* Uploads: the board shows a new post at once with this mark until its
     photo or file has uploaded; elsewhere a small pill appears instead. */
  .spin{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-inline-end-color:transparent;display:inline-block;flex:none;animation:up-spin .8s linear infinite;}
  @keyframes up-spin{to{transform:rotate(360deg);}}
  .post.pending{opacity:.92;}
  .post-uploading{position:relative;}
  .post-uploading .post-img{display:block;filter:brightness(.82);}
  .up-overlay{position:absolute;inset-inline-start:10px;bottom:10px;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(0,0,0,.55);color:#fff;font-size:calc(13px * var(--fs));font-weight:700;}
  /* The file row stretches its spans (flex:1); keep the spinner a small circle. */
  .photo-list-row span.spin.spin{flex:0 0 16px;width:16px;height:16px;overflow:visible;color:var(--muted);}
  #upload-pill{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--tabbar-h, 72px) + 14px);z-index:60;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:var(--text);color:var(--bg);font-size:calc(13.5px * var(--fs));font-weight:700;box-shadow:0 6px 18px rgba(0,0,0,.18);}
  #upload-pill[hidden]{display:none;}
  @media (prefers-reduced-motion: reduce){ .spin{animation-duration:2.4s;} }
  /* Board: swipe a post sideways (staff) to reveal pin / edit / delete. */
  .post-swipe{position:relative;isolation:isolate;margin-bottom:11px;border-radius:16px;overflow:hidden;touch-action:pan-y;}
  .post-swipe > .post, .post-swipe > .card{position:relative;z-index:1;margin-bottom:0;will-change:transform;}
  .post-swipe.feed-swipe{border-radius:18px;margin-bottom:12px;}
  .post-swipe-tray{position:absolute;inset:0;display:none;direction:ltr;align-items:stretch;gap:4px;padding:4px;background:var(--bg);}
  .post-swipe.open .post-swipe-tray{display:flex;}
  .post-swipe.reveal-right .post-swipe-tray{justify-content:flex-end;}
  .post-swipe.reveal-left .post-swipe-tray{flex-direction:row-reverse;justify-content:flex-end;}
  .pst-btn{width:60px;flex:none;border:none;border-radius:12px;background:var(--panel);color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font:inherit;font-size:calc(11.5px * var(--fs));font-weight:700;cursor:pointer;padding:0;}
  .pst-btn svg{width:20px;height:20px;}
  .pst-btn.danger{background:var(--stop);color:#fff;}
  .post-pin-btn:hover{color:var(--text);}
  /* Full-screen editors follow the visible area, so the keyboard never hides their bottom bar. */
  #qp-composer, #poll-editor{position:fixed;left:0;right:0;bottom:auto;top:var(--vv-top, 0px);height:var(--vv-h, 100dvh);}
  /* iOS leaves a see-through strip around the keyboard's floating toolbar, below the visible area; paint it in the editor's colour. */
  #qp-composer, #poll-editor{box-shadow:0 0 0 100vh var(--bg);}
  .kb-open .qp-bar{padding-bottom:10px;}
  /* Profile photo cropper: drag / pinch / slider, square output shown as a circle. */
  #crop-sheet{position:fixed;inset:0;z-index:70;background:#0b0f0d;color:#fff;display:flex;flex-direction:column;align-items:center;padding:calc(10px + env(safe-area-inset-top,0px)) 16px calc(18px + env(safe-area-inset-bottom,0px));}
  #crop-sheet[hidden]{display:none;}
  .crop-top{width:100%;max-width:420px;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;}
  .crop-top h2{margin:0;font-size:calc(17px * var(--fs));font-weight:800;}
  .crop-txt-btn{background:none;border:none;color:#fff;font:inherit;font-size:calc(15.5px * var(--fs));padding:10px 6px;min-width:56px;cursor:pointer;}
  .crop-txt-btn.strong{font-weight:800;color:var(--primary);}
  .crop-stage{position:relative;width:min(100%, 380px);aspect-ratio:1;margin:auto 0 18px;overflow:hidden;touch-action:none;cursor:grab;border-radius:6px;}
  .crop-stage img{position:absolute;left:50%;top:50%;max-width:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;pointer-events:none;transform-origin:0 0;}
  .crop-ring{position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 999px rgba(11,15,13,.62);border:2px solid rgba(255,255,255,.85);pointer-events:none;}
  .crop-tools{width:min(100%, 340px);display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.7);direction:ltr;}
  .crop-tools svg{width:22px;height:22px;flex:none;}
  .crop-tools input{flex:1;direction:ltr;accent-color:var(--primary);}
  .crop-hint{margin:12px 0 auto;font-size:calc(13px * var(--fs));color:rgba(255,255,255,.62);text-align:center;}
