/* Account entry and local sharing use the existing player palette. */
#playerView #lockedState:not(.passive-state) {
  overflow: auto;
  gap: 24px;
  padding: 24px;
  justify-content: safe center;
}
#lockedState:not(.passive-state) > .player-brand { margin: 0; gap: 10px; }
#lockedState:not(.passive-state) > .player-brand img { width: 52px; height: 52px; }
#lockedState:not(.passive-state) > .player-brand strong { font-size: 20px; letter-spacing: .1em; }
.sign-in-card {
  flex: 0 0 auto;
  width: min(380px, 100%);
  padding: 26px;
  border: 1px solid #405366;
  border-radius: 18px;
  background: #172737;
  box-shadow: 0 14px 42px rgb(0 0 0 / 20%);
  text-align: left;
}
.sign-in-card #lockedTitle { margin: 0 0 22px; font-size: 24px; line-height: 1.2; }
.sign-in-card .activation-form { width: 100%; gap: 10px; }
.sign-in-card label { color: #c7d3df; font-size: 13px; font-weight: 600; line-height: 1.4; }
.sign-in-card input {
  width: 100%; min-height: 48px; padding: 12px 14px;
  border: 1px solid #52677b; border-radius: 10px;
  background: #0d1b29; color: #f5f8fb; font-size: 16px; line-height: 1.3;
  caret-color: #8fbcff;
}
.sign-in-card input::placeholder { color: #93a4b6; }
.sign-in-card #activationSubmitButton {
  min-height: 48px; margin-top: 6px; border: 1px solid #4b94f5;
  border-radius: 10px; background: var(--accent); color: #fff;
  font-size: 15px; font-weight: 600;
}
.sign-in-card #activationSubmitButton:hover:not(:disabled) { background: var(--accent-hover); }
.sign-in-card #activationStatus { margin: 16px 0 0 !important; min-height: 18px; font-size: 12px; line-height: 1.5; color: #b5c4d3; }
.sign-in-card #activationStatus:empty { display: none; }

.sidebar-more-panel {
  gap: 8px; padding: 14px; border-color: #46545f; border-radius: 14px;
  background: #1a242d;
}
.sidebar-more-panel .brand-bar { margin-bottom: 2px; }
.sidebar-more-panel #subscriptionExpiry { margin-bottom: 6px; line-height: 1.45; white-space: nowrap; }
.sidebar-more-panel #audioBalanceButton { grid-column: auto; white-space: nowrap; }
.sidebar-more-panel button {
  min-height: 44px; padding: 8px; border-color: #46545f; border-radius: 9px;
  background: #25333f; font-size: 12px; line-height: 1.35;
  overflow-wrap: anywhere;
}
.sidebar-more-panel button:hover:not(:disabled) { background: #304657; border-color: #6d9bc0; }
.sidebar-more-panel #sharePlayerButton { background: #254c66; border-color: #507d9b; }
.sidebar-more-panel #audioBalanceButton[aria-pressed="true"] { border-color: #4a8478; background: #213d3a; }

.share-dialog {
  width: min(380px, calc(100vw - 32px)); max-height: calc(100dvh - 32px);
  margin: auto; padding: 24px; overflow: auto;
  color: var(--panel-text); background: #172737;
  border: 1px solid #465b6f; border-radius: 20px;
  box-shadow: 0 24px 80px rgb(0 0 0 / 45%);
}
.share-dialog::backdrop { background: rgb(5 13 21 / 74%); }
.share-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.share-dialog h2 { margin: 0; font-size: 22px; line-height: 1.3; }
.share-dialog #shareCloseButton { width: 40px; height: 40px; padding: 8px; border: 0; border-radius: 10px; background: #283c4e; color: #dce8f1; }
.share-dialog #shareDescription { margin: 12px 0 20px; color: #b5c4d3; line-height: 1.6; font-size: 14px; }
.share-dialog canvas { display: block; width: min(248px, 100%); height: auto; margin: 0 auto 20px; border: 8px solid white; border-radius: 12px; image-rendering: pixelated; }
.share-dialog label { display: block; margin-bottom: 8px; font-size: 12px; font-weight: 600; color: #b5c4d3; }
.share-dialog input { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid #52677b; border-radius: 9px; background: #0d1b29; color: #e4edf5; font-size: 14px; }
.share-dialog #shareCopyButton { width: 100%; min-height: 44px; margin-top: 12px; border: 1px solid #4b94f5; border-radius: 9px; background: var(--accent); color: #fff; font-weight: 600; }
.share-dialog #shareStatus { margin: 12px 0 0; color: #b5c4d3; font-size: 12px; line-height: 1.5; }
.share-dialog #shareStatus:empty { display: none; }
@media (max-width: 760px), (max-height: 500px) {
  #playerView #lockedState:not(.passive-state) { gap: 12px; padding: 12px; }
  .sign-in-card { padding: 18px; border-radius: 14px; }
  .sign-in-card #lockedTitle { margin-bottom: 14px; font-size: 21px; }
  .sign-in-card #activationStatus { margin-top: 10px !important; }
  .sign-in-card input, .sign-in-card #activationSubmitButton { min-height: 44px; }
  .share-dialog { padding: 20px; }
}
@media (max-width: 1100px) and (orientation: portrait) {
  /* A sign-in form needs more height than a 16:9 picture. Only the visible
     account form expands this surface; normal playback keeps its own layout. */
  #playerView:not(.platform-tv) .video-stage:not(.app-fullscreen):not(:fullscreen) .video-surface:has(#lockedState:not([hidden]):not(.passive-state)) {
    min-height: 380px;
  }
  #playerView #lockedState:not(.passive-state) > .player-brand { display: flex; }
}
