
:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f7f8fb;background:#071426;--panel:#10223a;--panel2:#0b1a2e;--line:#29415f;--gold:#d8b45a;--muted:#aab8ca;--ok:#55c58a;--shadow:0 12px 28px rgba(0,0,0,.18)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#071426,#0b1b30 55%,#071426);padding-bottom:env(safe-area-inset-bottom)}a{color:inherit}.app-shell{max-width:900px;margin:auto;padding:20px 16px 42px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.topbar-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.refresh-page-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);background:#17304f;color:#fff;border-radius:10px;padding:9px 12px;font:inherit;font-size:.84rem;font-weight:900;white-space:nowrap;touch-action:manipulation}.refresh-page-button svg{width:18px;height:18px}.refresh-page-button:active{transform:translateY(1px)}
.brand h1{font-size:clamp(1.55rem,5vw,2.15rem);margin:2px 0 0}.brand p,.muted{color:var(--muted);margin:.4rem 0 0}.eyebrow,.section-label{font-size:.72rem;letter-spacing:.12em;font-weight:900;color:var(--gold)}.build{font-size:.76rem;border:1px solid var(--line);border-radius:999px;padding:7px 10px;white-space:nowrap;color:var(--muted)}.nav{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}.nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:64px;text-align:center;text-decoration:none;border:1px solid var(--line);background:#0c1c31;padding:10px 6px;border-radius:13px;font-weight:800}.nav a.active{background:var(--gold);color:#172033;border-color:var(--gold)}.nav-icon{width:22px;height:22px;display:block;flex:0 0 auto}.card{background:rgba(16,34,58,.96);border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:14px;box-shadow:var(--shadow)}.card h2{margin:4px 0 7px;font-size:1.2rem}.status-card,.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.status-pill{display:inline-flex;align-items:center;border:1px solid rgba(85,197,138,.5);background:rgba(85,197,138,.12);color:#a6efc8;border-radius:999px;padding:6px 10px;font-size:.76rem;font-weight:800;white-space:nowrap}.status-pill.neutral{border-color:var(--line);background:#0a192c;color:var(--muted)}.tag-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 12px}.field{display:grid;gap:6px;margin:13px 0}.field label{font-weight:750}.field input{width:100%;font:inherit;padding:12px;border-radius:10px;border:1px solid #4a607b;background:#08172a;color:#fff}.disabled-control{padding:12px;border-radius:10px;border:1px dashed #415a76;background:#0a192b;color:#7f91a8;font-size:.9rem}.button{width:100%;appearance:none;border:0;border-radius:11px;padding:13px 16px;background:var(--gold);color:#172033;font-weight:900;font-size:1rem;margin-top:10px}.button.secondary{background:#17304f;color:#e6edf6;border:1px solid #3c5877}.button-disabled{opacity:.62}.diagnostic-line{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.88rem;margin:14px 0 0}.dot{width:9px;height:9px;border-radius:50%;background:var(--ok)}.neutral-dot{background:#71839a}.filter-strip,.library-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px;scrollbar-width:none}.filter-strip::-webkit-scrollbar,.library-tabs::-webkit-scrollbar{display:none}.filter,.mini-tab{flex:0 0 auto;border:1px solid var(--line);background:#0c1c31;border-radius:999px;padding:9px 13px;color:var(--muted);font-size:.84rem;font-weight:800}.active-filter{background:var(--gold)!important;color:#172033!important;border-color:var(--gold)!important}.player-shell{padding:10px}.player-placeholder{aspect-ratio:16/9;border-radius:12px;background:#050c16;border:1px solid #1f3651;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--muted)}.play-symbol{display:grid;place-items:center;width:46px;height:46px;border:1px solid #506a88;border-radius:50%;color:var(--gold)}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;padding:20px;color:var(--muted)}.empty-state strong{color:#f7f8fb}.large-empty{min-height:180px;justify-content:center}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.summary-card{background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:16px;display:grid;gap:5px}.summary-card strong{font-size:1.5rem}.summary-card span{color:var(--muted);font-size:.88rem}.storage-row{display:flex;justify-content:space-between;gap:12px;margin-top:12px;color:var(--muted)}.storage-row strong{color:#fff}.message{min-height:1.4em;color:#a6efc8;margin-top:12px}.small-button{border:1px solid var(--line);background:#0a192c;color:#fff;border-radius:9px;padding:7px 10px;font-weight:800}.diagnostics{margin:12px 0 0}.diagnostics div{display:flex;justify-content:space-between;gap:14px;border-top:1px solid rgba(41,65,95,.65);padding:11px 0}.diagnostics dt{color:var(--muted)}.diagnostics dd{margin:0;text-align:right;font-weight:700}.footer-note{text-align:center;color:#778aa1;font-size:.78rem;padding:8px 10px 0}@media(max-width:620px){.topbar{display:flex;align-items:flex-start}.topbar-actions{align-items:flex-end}.build{font-size:.68rem;padding:6px 8px}.refresh-page-button{padding:9px 10px;font-size:.8rem}.app-shell{padding:14px 12px 34px}.build{display:inline-block;margin-top:0}.nav{gap:6px}.nav a{font-size:.72rem;padding:9px 3px;line-height:1.05;min-height:60px}.status-card{display:block}.status-card .status-pill{margin-top:12px}.summary-grid{grid-template-columns:repeat(3,1fr)}.summary-card{padding:12px 8px;text-align:center}.summary-card strong{font-size:1.25rem}.summary-card span{font-size:.72rem}}@media(max-width:420px){.tag-grid{grid-template-columns:1fr}.diagnostics div{font-size:.88rem}}

.shell-check{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:2px 0 14px}.shell-check span{display:grid;gap:3px;background:#0a192c;border:1px solid var(--line);border-radius:12px;padding:11px 12px}.shell-check strong{font-size:.82rem}.shell-check small{color:var(--muted);font-size:.7rem}.nav a:focus-visible,.button:focus-visible,.small-button:focus-visible,input:focus-visible{outline:3px solid rgba(216,180,90,.45);outline-offset:2px}@media(max-width:620px){.shell-check{grid-template-columns:1fr}.shell-check span{display:flex;justify-content:space-between;align-items:center}.shell-check small{text-align:right}}

.collapsible-card{padding:0;overflow:hidden}.collapse-summary{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px;cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent}.collapse-summary::-webkit-details-marker{display:none}.collapse-summary h2{margin:4px 0 0}.collapse-control{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.78rem;font-weight:800}.collapse-control svg{width:20px;height:20px;transition:transform .2s ease}.collapsible-card[open] .collapse-control svg{transform:rotate(180deg)}.collapsible-card:not([open]) .collapse-text{font-size:0}.collapsible-card:not([open]) .collapse-text::after{content:"Expand";font-size:.78rem}.collapse-content{padding:0 18px 18px;border-top:1px solid rgba(41,65,95,.65)}.collapse-summary:focus-visible{outline:3px solid rgba(216,180,90,.45);outline-offset:-3px;border-radius:14px}

.current-plays-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.current-plays-heading h2{margin:4px 0 0}.play-count{display:inline-flex;align-items:center;justify-content:center;min-width:64px;border:1px solid var(--line);background:#0a192c;color:var(--muted);border-radius:999px;padding:6px 10px;font-size:.76rem;font-weight:850;white-space:nowrap}.current-plays-list{margin-top:12px;border-top:1px solid rgba(41,65,95,.65)}.current-plays-empty{min-height:150px;justify-content:center;padding:24px 12px}.empty-state-icon{width:34px;height:34px;color:var(--gold);margin-bottom:2px}@media(max-width:420px){.current-plays-heading{align-items:center}.current-plays-empty{min-height:135px;padding:20px 8px}}

.game-filter-card{padding-bottom:16px}.select-field{display:grid;gap:7px;margin-top:14px}.select-field>span{font-weight:800;color:#f7f8fb}.select-field select{width:100%;appearance:none;-webkit-appearance:none;font:inherit;font-weight:750;color:#fff;background:#08172a;border:1px solid #4a607b;border-radius:11px;padding:13px 42px 13px 13px;background-image:linear-gradient(45deg,transparent 50%,#aab8ca 50%),linear-gradient(135deg,#aab8ca 50%,transparent 50%);background-position:calc(100% - 18px) 52%,calc(100% - 12px) 52%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}.select-field select:focus-visible{outline:3px solid rgba(216,180,90,.45);outline-offset:2px}.filter-note{margin:10px 0 0;color:var(--muted);font-size:.86rem;line-height:1.45}


.replay-options-card .section-heading,.play-filters-card .section-heading{align-items:center}.newest-play-button{white-space:nowrap}.option-list{display:grid;margin-top:10px}.toggle-row{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px;padding:14px 0;border-top:1px solid rgba(41,65,95,.65);cursor:pointer}.toggle-row:first-child{border-top:0}.toggle-row>span:first-child{display:grid;gap:4px}.toggle-row small{color:var(--muted);line-height:1.35}.toggle-row input{position:absolute;opacity:0;pointer-events:none}.toggle{width:48px;height:28px;border-radius:999px;background:#243a55;border:1px solid #4b6380;position:relative;transition:.2s ease}.toggle::after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;left:3px;top:3px;background:#d8e1ec;transition:.2s ease;box-shadow:0 2px 5px rgba(0,0,0,.3)}.toggle-row input:checked+.toggle{background:var(--gold);border-color:var(--gold)}.toggle-row input:checked+.toggle::after{transform:translateX(20px);background:#172033}.toggle-row input:focus-visible+.toggle{outline:3px solid rgba(216,180,90,.45);outline-offset:3px}.replay-message{margin-bottom:0}.filter-group{display:grid;gap:8px;margin-top:16px}.filter-title{font-size:.72rem;letter-spacing:.11em;color:var(--muted);font-weight:900}.choice-strip{display:flex;gap:8px;overflow-x:auto;padding:1px 0 4px;scrollbar-width:none}.choice-strip::-webkit-scrollbar{display:none}.choice{flex:0 0 auto;appearance:none;border:1px solid var(--line);background:#0c1c31;color:var(--muted);border-radius:999px;padding:9px 13px;font:inherit;font-size:.84rem;font-weight:850}.choice.active-choice{background:var(--gold);border-color:var(--gold);color:#172033}.choice:focus-visible{outline:3px solid rgba(216,180,90,.45);outline-offset:2px}.filter-summary{margin:16px 0 0;padding-top:13px;border-top:1px solid rgba(41,65,95,.65);color:var(--muted);font-size:.86rem}@media(max-width:420px){.replay-options-card .section-heading,.play-filters-card .section-heading{gap:8px}.newest-play-button{padding:7px 9px}.toggle-row{gap:10px}.toggle-row strong{font-size:.93rem}.toggle-row small{font-size:.76rem}}

/* Build 0.1.11: collapsible Coach Replay controls */
.full-small-button{width:100%;margin-top:14px;padding:10px 12px}.filter-action-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.compact-summary{margin:0;padding:0;border:0}.replay-options-card .collapse-content,.play-filters-card .collapse-content{padding-top:0}.replay-options-card .option-list{margin-top:8px}@media(max-width:420px){.filter-action-row{align-items:flex-start}.compact-summary{font-size:.78rem}}

/* Build 0.1.14: game-management Library */
.library-action-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}.library-action-grid .button{margin:0}.danger-button{border-color:#7a3b45!important;color:#ffd5da!important}.game-list{display:grid;gap:10px;margin-top:14px}.game-card{appearance:none;width:100%;text-align:left;border:1px solid var(--line);background:#0b1a2d;color:#fff;border-radius:13px;padding:14px;display:grid;gap:6px;font:inherit}.game-card.selected-game{border-color:var(--gold);box-shadow:0 0 0 2px rgba(216,180,90,.16)}.game-card-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.game-meta{color:var(--muted);font-size:.84rem}.game-badge{border-radius:999px;padding:5px 8px;font-size:.7rem;font-weight:900;white-space:nowrap}.game-badge.synced{background:rgba(85,197,138,.14);color:#a6efc8}.game-badge.pending{background:rgba(216,180,90,.14);color:#f1d98d}.game-badge.server{background:#172b45;color:#b8c8db}.selected-game-summary{display:grid;gap:5px;color:var(--muted);margin:14px 0}.selected-game-summary strong{color:#fff}.play-management-list{margin-top:14px;border-top:1px solid rgba(41,65,95,.65)}.play-select-row{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:13px 2px;border-bottom:1px solid rgba(41,65,95,.55)}.play-select-row input{width:20px;height:20px;accent-color:var(--gold)}.play-select-row span{display:grid;gap:3px}.play-select-row small{color:var(--muted)}@media(max-width:520px){.library-action-grid{grid-template-columns:1fr}.game-card-top{align-items:flex-start}.game-badge{font-size:.64rem}}

/* Build 0.1.15: three-stage Library workflow */
.library-stage[hidden]{display:none}.stage-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.stage-name{font-size:.72rem;letter-spacing:.11em;color:var(--muted);font-weight:900}.back-button{appearance:none;border:0;background:transparent;color:var(--gold);font:inherit;font-weight:850;padding:6px 0}.game-action-stack{display:grid;gap:9px;margin-top:14px}.game-action-stack .button{margin:0}.manage-plays-button{border-color:var(--gold)!important;color:#f4dda1!important}.play-manage-row{appearance:none;width:100%;border:0;border-bottom:1px solid rgba(41,65,95,.55);background:transparent;color:#fff;padding:14px 2px;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;text-align:left;font:inherit}.play-manage-row>span:last-child{display:grid;gap:4px}.play-manage-row small{color:var(--muted)}.selection-circle{width:24px;height:24px;border:2px solid #60758e;border-radius:50%;display:grid;place-items:center;color:#172033;background:transparent;font-weight:900}.play-manage-row.selected-play-row .selection-circle{background:var(--gold);border-color:var(--gold)}.selection-toolbar{margin-top:16px;padding-top:16px;border-top:1px solid rgba(41,65,95,.65)}.selection-toolbar-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.selection-toolbar[hidden]{display:none}.library-workspace{min-height:360px}@media(max-width:520px){.game-action-stack{grid-template-columns:1fr}.stage-toolbar{margin-bottom:12px}}

/* Build 0.1.19 — collapsed play metadata and notes beneath newest-play control */
.field select,.field input[type="date"]{width:100%;appearance:none;-webkit-appearance:none;font:inherit;font-weight:750;color:#fff;background:#08172a;border:1px solid #4a607b;border-radius:11px;padding:13px 42px 13px 13px;min-height:48px}
.field select{background-image:linear-gradient(45deg,transparent 50%,#aab8ca 50%),linear-gradient(135deg,#aab8ca 50%,transparent 50%);background-position:calc(100% - 18px) 52%,calc(100% - 12px) 52%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.field select:focus-visible,.field input[type="date"]:focus-visible{outline:3px solid rgba(216,180,90,.45);outline-offset:2px}
.field input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.8}
.tag-timing-note{margin:2px 0 0}

.video-control-row{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:10px 2px 2px}.video-control-row .newest-play-button{min-height:42px;padding:10px 14px}.video-control-row .newest-play-button:active{transform:translateY(1px)}@media(max-width:620px){.video-control-row{justify-content:stretch}.video-control-row .newest-play-button{width:100%}}

.play-details-panel{margin-top:12px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(4,13,27,.55);overflow:hidden}
.play-details-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 15px;cursor:pointer;list-style:none}
.play-details-summary::-webkit-details-marker{display:none}
.play-details-summary>span:first-child{display:grid;gap:3px;text-align:left}
.play-details-summary small,.metadata-grid small,.play-notes small{color:var(--muted);font-size:.72rem;letter-spacing:.08em}
.play-details-content{padding:0 15px 15px}
.metadata-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.metadata-grid span{display:grid;gap:3px;padding:10px;border-radius:10px;background:rgba(255,255,255,.055)}
.play-notes{margin-top:10px;padding:12px;border-radius:10px;background:rgba(255,255,255,.055)}
.play-notes p{margin:5px 0 0;line-height:1.45}
.play-details-panel[open] .collapse-control svg{transform:rotate(180deg)}
@media(max-width:560px){.metadata-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.metadata-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.metadata-edit-grid label,.play-notes-field{display:grid;gap:6px;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.08em}
.metadata-edit-grid input,.metadata-edit-grid select,.play-notes-field textarea{width:100%;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:rgba(255,255,255,.06);color:var(--text);padding:10px 11px;font:inherit;letter-spacing:normal}
.metadata-edit-grid input[readonly]{color:var(--muted);background:rgba(255,255,255,.035)}
.play-notes-field{margin-top:12px}.play-notes-field textarea{resize:vertical;min-height:92px}
.play-details-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.play-details-actions .message{margin:0}
@media(max-width:560px){.metadata-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.play-details-actions .small-button{width:100%}}
/* Build 0.1.21 — screenshot-style editable tags and notes */
.current-play-metadata{margin:13px 2px 0;color:var(--text);font-weight:850;line-height:1.4;letter-spacing:.01em}
.edit-tags-panel{background:rgba(255,255,255,.97);border-color:#d8dee8;color:#243a58}
.edit-tags-panel .play-details-summary{padding:15px 16px;color:#243a58}
.edit-tags-title{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px;color:#243a58}
.edit-tags-title svg{width:18px;height:18px;flex:0 0 auto;transition:transform .2s ease}
.edit-tags-panel[open] .edit-tags-title svg{transform:rotate(0deg)}
.edit-tags-panel:not([open]) .edit-tags-title svg{transform:rotate(-90deg)}
.edit-tags-panel .play-details-content{padding:4px 16px 16px}
.screenshot-edit-form{display:grid;gap:16px}
.screenshot-edit-form>label{display:grid;gap:7px;color:#29405f;font-size:.76rem;font-weight:900;letter-spacing:.11em}
.screenshot-edit-form select,.screenshot-edit-form textarea{width:100%;appearance:none;-webkit-appearance:none;border:1px solid #cfd7e2;border-radius:13px;background:#fff;color:#071a36;padding:13px 44px 13px 13px;min-height:52px;font:inherit;font-weight:780;letter-spacing:normal;box-shadow:0 1px 2px rgba(9,30,66,.04)}
.screenshot-edit-form select{background-image:linear-gradient(45deg,transparent 50%,#071a36 50%),linear-gradient(135deg,#071a36 50%,transparent 50%);background-position:calc(100% - 19px) 47%,calc(100% - 13px) 47%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.screenshot-edit-form textarea{appearance:auto;-webkit-appearance:auto;padding-right:13px;resize:vertical}
.screenshot-edit-form textarea::placeholder{color:#a3a8af}
.screenshot-edit-form select:focus-visible,.screenshot-edit-form textarea:focus-visible{outline:3px solid rgba(216,180,90,.45);outline-offset:2px}
.edit-tags-panel .play-details-actions{margin-top:0}
@media(max-width:560px){.current-play-metadata{font-size:.94rem}.screenshot-edit-form{gap:15px}}

/* Build 0.1.22 — shared editable metadata on recorded mobile plays */
.recorded-play-card{margin-top:14px;border:1px solid #d8dee8;border-radius:14px;background:rgba(255,255,255,.97);color:#243a58;overflow:hidden}
.recorded-play-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;list-style:none}
.recorded-play-summary::-webkit-details-marker{display:none}.recorded-play-main{display:grid;gap:3px}.recorded-play-main small{color:#667890;font-size:.75rem}.recorded-play-chevron{font-size:1.2rem;transition:transform .2s ease}.recorded-play-card[open] .recorded-play-chevron{transform:rotate(180deg)}
.recorded-play-details{padding:0 16px 16px}.recorded-play-card .play-details-actions{margin-top:0}

.current-game-viewer-wrap{margin-top:1rem}.current-game-viewer-wrap .mobile-capture-viewer{margin:0;background:rgba(6,18,34,.48)}

/* Build 0.1.25: Settings panel and dropdown polish */
body[data-section="settings"] .collapsible-card .collapse-summary{
  min-height:78px;
  padding:18px;
}
body[data-section="settings"] .collapsible-card .collapse-summary>div{
  min-width:0;
  padding-right:10px;
}
body[data-section="settings"] .collapsible-card .collapse-summary h2{
  line-height:1.25;
}
body[data-section="settings"] .collapse-content{
  padding:4px 18px 18px;
}
body[data-section="settings"] .field select{
  padding-left:15px;
  padding-right:48px;
  background-position:calc(100% - 21px) 52%,calc(100% - 15px) 52%;
}
body[data-section="settings"] .field input{
  padding-left:15px;
  padding-right:15px;
  min-height:48px;
}
@media(max-width:420px){
  body[data-section="settings"] .collapsible-card .collapse-summary{padding:16px;min-height:74px}
  body[data-section="settings"] .collapse-content{padding:4px 16px 16px}
}

/* Build 0.1.26: Keep Library focus on the selected stage. */
.library-stage,.stage-toolbar{scroll-margin-top:12px}


/* Build 0.1.27: Current-game shortcut in the recording workflow. */
.recording-game-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0 14px;padding:14px;border:1px solid var(--line);border-radius:13px;background:#0a192c}
.recording-game-summary>div{display:grid;gap:4px;min-width:0}
.recording-game-kicker{font-size:.68rem;letter-spacing:.11em;font-weight:900;color:var(--muted)}
.recording-game-summary strong{font-size:1rem;overflow-wrap:anywhere}
.recording-game-summary>div>span:last-child{color:var(--muted);font-size:.82rem;line-height:1.35}
.recording-game-button{flex:0 0 auto;text-decoration:none;text-align:center;padding:9px 11px}
.return-capture-button[hidden]{display:none}
.return-capture-button{display:block;text-align:center;text-decoration:none}
body[data-section="settings"] #gameSettingsPanel:target,body[data-section="settings"] #gameSettingsPanel[data-focus-target="current-game"]{scroll-margin-top:12px}
@media(max-width:560px){.recording-game-summary{align-items:stretch;flex-direction:column}.recording-game-button{width:100%}}


/* Build 0.1.28 first-run coach setup */
.setup-card{border-color:rgba(245,190,72,.55);background:linear-gradient(180deg,rgba(245,190,72,.10),rgba(9,26,48,.94));}
.status-pill.attention{background:rgba(245,190,72,.14);border-color:rgba(245,190,72,.55);color:#fff4cf;}
.setup-copy,.setup-note{margin:.65rem 0;color:var(--muted);line-height:1.5;}
.setup-examples{display:flex;flex-wrap:wrap;gap:.5rem;margin:.9rem 0 1rem;}
.setup-examples strong{width:100%;color:#fff;}
.setup-examples span{display:inline-flex;padding:.5rem .7rem;border:1px solid rgba(255,255,255,.16);border-radius:.7rem;background:rgba(255,255,255,.06);color:#fff;}
.setup-checklist{display:grid;gap:.55rem;margin:0;}
.setup-checklist div{display:flex;justify-content:space-between;gap:1rem;padding:.75rem .85rem;border:1px solid rgba(255,255,255,.12);border-radius:.75rem;background:rgba(4,13,25,.42);}
.setup-checklist dt{font-weight:700;color:#fff;}
.setup-checklist dd{margin:0;color:#ffd36a;text-align:right;}
.setup-checklist dd[data-ready="true"]{color:#9df0bd;}

#appSettingsPanel, #gameSettingsPanel { scroll-margin-top: 12px; }

.coach-game-card h2{margin:.35rem 0 .3rem}.coach-game-meta{margin:0;color:var(--muted);font-weight:650}.coach-game-source{display:inline-block;margin-top:.65rem;padding:.35rem .65rem;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:#fff;font-size:.78rem;font-weight:750}.coach-game-card{scroll-margin-top:1rem}


/* Phase 2A recorder */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.capture-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.85rem}.capture-file-button{display:flex;align-items:center;justify-content:center;text-align:center;cursor:pointer;margin:0}.capture-diagnostics{margin-top:.85rem;padding:.8rem .9rem;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(0,0,0,.16);display:grid;gap:.25rem}.diagnostic-step{font-weight:800}.diagnostic-detail{font-size:.86rem;color:var(--muted)}
.recorded-video-player{display:block;width:100%;max-height:56vh;background:#000;border-radius:12px;object-fit:contain}.recorded-play-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem;align-items:stretch;padding:.65rem;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.035)}.recorded-play-row+.recorded-play-row{margin-top:.6rem}.recorded-play-row.selected-play-row{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.09)}.recorded-play-select{appearance:none;border:0;background:transparent;color:inherit;text-align:left;display:grid;gap:.15rem;padding:.15rem;cursor:pointer}.recorded-play-number{font-weight:900}.recorded-play-tags{font-size:.9rem}.recorded-play-time{font-size:.78rem;color:var(--muted)}.recorded-play-delete{align-self:center;border:1px solid rgba(255,255,255,.2);border-radius:10px;padding:.55rem .7rem;background:transparent;color:inherit;font-weight:800}.current-plays-list{margin-top:.9rem}
@media(max-width:560px){.capture-actions{grid-template-columns:1fr}.recorded-play-row{grid-template-columns:minmax(0,1fr) auto}.recorded-play-delete{padding:.5rem}.recorded-video-player{max-height:48vh}}

.clip-preview-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:stretch}.clip-preview-select{display:grid;grid-template-columns:112px minmax(0,1fr);gap:.8rem;align-items:center;text-align:left}.clip-list-preview{width:112px;aspect-ratio:16/9;object-fit:cover;border-radius:10px;background:#020813;border:1px solid rgba(255,255,255,.12)}.clip-preview-info{display:flex;flex-direction:column;gap:.2rem;min-width:0}.clip-preview-info span{display:block}.recorded-video-player{width:100%;max-height:60vh;background:#000;border-radius:12px}.current-plays-list{display:grid;gap:.75rem}@media(max-width:520px){.clip-preview-select{grid-template-columns:96px minmax(0,1fr)}.clip-list-preview{width:96px}.recorded-play-time{font-size:.72rem}}
[hidden]{display:none!important}
.clip-thumbnail-wrap{position:relative;width:112px;aspect-ratio:16/9;display:grid;place-items:center;border-radius:10px;overflow:hidden;background:#020813;border:1px solid rgba(255,255,255,.12)}
.clip-thumbnail-wrap .clip-list-preview{width:100%;height:100%;object-fit:cover;border:0;border-radius:0}
.clip-thumbnail-fallback{display:grid;place-items:center;width:100%;height:100%;font-size:1.5rem;color:var(--gold);background:linear-gradient(135deg,#071426,#10223a)}
.library-play-circle{flex:0 0 auto;margin-left:.1rem}
.clip-preview-select[data-select-play]{grid-template-columns:auto 112px minmax(0,1fr)}
@media(max-width:520px){.clip-thumbnail-wrap{width:96px}.clip-preview-select[data-select-play]{grid-template-columns:auto 96px minmax(0,1fr)}}

/* Build 0.2.3: high-contrast Library selection state. */
.selection-circle,.library-play-circle{border-color:#dbe8f7;color:#fff;background:#0b1a2d;font-size:1rem;line-height:1;text-shadow:0 1px 2px rgba(0,0,0,.65)}
.play-manage-row.selected-play-row,.clip-preview-card.selected-play-row{border-color:#f4d77a!important;box-shadow:0 0 0 2px rgba(244,215,122,.28);background:rgba(244,215,122,.12)!important}
.play-manage-row.selected-play-row .selection-circle,.clip-preview-card.selected-play-row .selection-circle{background:#f4d77a!important;border-color:#fff!important;color:#07111f!important;text-shadow:none;font-weight:1000}

.connection-summary{margin-top:14px;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(4,14,29,.35)}
.mini-heading{margin-bottom:10px}.mini-heading h3{margin:.15rem 0 0;font-size:1.05rem}.status-pill.success{background:rgba(69,214,123,.16);border-color:rgba(69,214,123,.5);color:#8bf0ae}
#serverConnectionAddress{overflow-wrap:anywhere}


/* Phase 3.4a manual upload controls */
.recorded-play-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.6rem;align-items:center;padding:.7rem .8rem;border-top:1px solid rgba(148,163,184,.18)}
.play-upload-status{font-size:.78rem;font-weight:800;color:#a8b7ca;line-height:1.25}
.play-upload-status[data-state="uploaded"]{color:#86efac}.play-upload-status[data-state="uploading"]{color:#f4cf55}.play-upload-status[data-state="error"]{color:#fca5a5}
.play-upload-button{min-width:7rem}.recorded-play-actions .recorded-play-delete{position:static;margin:0}
@media(max-width:560px){.recorded-play-actions{grid-template-columns:1fr 1fr}.play-upload-status{grid-column:1/-1}.play-upload-button,.recorded-play-actions .recorded-play-delete{width:100%}}


/* Build 0.3.4i — shared replay play-card presentation */
.clip-preview-card{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important;padding:0!important;overflow:hidden}
.clip-preview-card>.clip-preview-select{width:100%;padding:.7rem;box-sizing:border-box}
.clip-preview-card>.recorded-play-actions{width:100%;box-sizing:border-box;margin:0;border-top:1px solid rgba(148,163,184,.22);background:rgba(2,8,19,.18)}
#currentGamePlays .clip-preview-card .clip-preview-select,#coachPlayList .clip-preview-card .clip-preview-select{grid-template-columns:112px minmax(0,1fr)}
#currentGamePlays .clip-preview-card.selected-play-row,#coachPlayList .clip-preview-card.selected-play-row{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.09)}
@media(max-width:520px){#currentGamePlays .clip-preview-card .clip-preview-select,#coachPlayList .clip-preview-card .clip-preview-select{grid-template-columns:96px minmax(0,1fr)}}

/* Phase 3.5.2d1 — queue inspection only */
.queue-inspection-card .current-plays-heading{margin-bottom:.65rem}.queue-inspection-list{display:grid;gap:.55rem}.queue-inspection-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.72rem .8rem;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.035)}.queue-inspection-item strong{font-size:.92rem;overflow-wrap:anywhere}.queue-inspection-item small{color:var(--muted);white-space:nowrap}.compact-empty{padding:.8rem 0}.compact-empty strong{font-size:.95rem}

.queue-test-actions{display:grid;gap:.65rem;margin-top:.9rem}.queue-test-actions .button{width:100%}.queue-test-actions .form-message{margin:0}

.queue-payload-output{margin:10px 0 0;padding:12px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:rgba(0,0,0,.22);color:#f5f7fb;white-space:pre-wrap;word-break:break-word;max-height:340px;overflow:auto;font-size:.75rem;line-height:1.45}

/* Phase 3.5.2d2d2 temporary queue diagnostics */
.queue-diagnostic-row{display:grid;grid-template-columns:auto 1fr minmax(140px,.55fr);gap:12px;align-items:start;padding:14px;border:1px solid var(--border,#31445f);border-radius:12px;background:rgba(255,255,255,.025);cursor:pointer}.queue-diagnostic-row input{width:22px;height:22px;margin-top:2px}.queue-diagnostic-main,.queue-diagnostic-health{display:flex;flex-direction:column;gap:4px}.queue-diagnostic-main small,.queue-diagnostic-health small{opacity:.82}.queue-diagnostic-health b{color:#d8e8ff}.queue-invalid-row{border-color:#e09a4a;background:rgba(224,154,74,.08)}.queue-invalid-row .queue-diagnostic-health b{color:#ffd08a}.queue-valid-row .queue-diagnostic-health b{color:#8ee6b0}@media(max-width:680px){.queue-diagnostic-row{grid-template-columns:auto 1fr}.queue-diagnostic-health{grid-column:2}}
.queue-status-completed{border-left:4px solid #2ecc71}.queue-status-failed{border-left:4px solid #ff6b6b}.queue-status-processing{border-left:4px solid #f5c542}.queue-status-pending{border-left:4px solid #7aa7ff}
.queue-state-history{margin-top:.55rem;border-top:1px solid rgba(255,255,255,.12);padding-top:.45rem}.queue-state-history summary{cursor:pointer;font-weight:700;color:#fff}.queue-state-history ol{margin:.55rem 0 0;padding-left:1.15rem;display:grid;gap:.4rem}.queue-state-history li{display:grid;grid-template-columns:minmax(8rem,auto) auto;gap:.25rem .65rem;align-items:start}.queue-state-history li span{grid-column:1/-1;opacity:.78}.queue-status-preparing,.queue-status-verifying{border-color:rgba(255,255,255,.35)}.queue-status-uploading{border-color:#f5c451}.queue-status-completed{border-color:#4fd18b}.queue-status-failed,.queue-status-invalid{border-color:#ff7272}

/* Phase 3.6.5 synchronization validation */
.sync-health-badge{display:inline-flex;align-items:center;justify-content:center;min-width:88px;padding:.45rem .7rem;border-radius:999px;font-weight:800;font-size:.78rem;background:rgba(148,163,184,.16);color:var(--muted)}
.sync-health-badge[data-state="healthy"]{background:rgba(34,197,94,.16);color:#86efac}.sync-health-badge[data-state="attention"]{background:rgba(245,158,11,.16);color:#fcd34d}.sync-health-badge[data-state="offline"]{background:rgba(239,68,68,.16);color:#fca5a5}
.sync-health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0}.sync-health-item{padding:.85rem;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025);display:flex;flex-direction:column;gap:.25rem}.sync-health-item span{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.sync-health-item strong{font-size:.95rem}.sync-summary-line{padding:.8rem 0;color:var(--muted);font-size:.9rem}.sync-validation-actions{margin-top:.5rem}@media(max-width:560px){.sync-health-grid{grid-template-columns:1fr}}


/* Phase 3.7.3 — Offline Coach Playback */
.coach-connection-banner{display:flex;flex-direction:column;gap:.2rem;margin:0 0 1rem;padding:.8rem 1rem;border:1px solid rgba(120,170,220,.28);border-radius:14px;background:rgba(17,43,72,.72)}
.coach-connection-banner strong{font-size:.9rem}.coach-connection-banner span{font-size:.78rem;opacity:.82}
.coach-connection-banner[data-state="offline"]{border-color:rgba(239,190,80,.55);background:rgba(85,59,14,.72)}
.coach-connection-banner[data-state="offline"] strong{color:#ffd77b}
