/* Narrow-screen controls: preserve native forms, validation and business logic. */
@media (max-width:680px) {
  .ts-fixed-dock .ts-search-form {
    position:fixed;left:16px;right:16px;top:calc(var(--ts-page-header-offset,98px) + 8px);
    width:auto;max-width:none;box-sizing:border-box;
  }
  .ts-fixed-dock .ts-search-form:before {display:none}
  .ts-fixed-dock .ts-search-form input {font-size:16px;min-height:44px;box-sizing:border-box}
  .admin-bar .ts-fixed-dock .ts-search-form {top:calc(var(--ts-page-header-offset,98px) + 54px)}
  .ts-fixed-dock .ts-favorites-panel {position:fixed;left:16px;right:16px;top:calc(var(--ts-page-header-offset,98px) + 8px);width:auto;max-height:60vh;overflow-y:auto;box-sizing:border-box}
  .admin-bar .ts-fixed-dock .ts-favorites-panel {top:calc(var(--ts-page-header-offset,98px) + 54px)}
  .ts-fixed-dock .ts-search-form button {min-height:44px}
  .ts-fixed-dock .ts-links.open {max-height:calc(100dvh - var(--ts-page-header-offset,98px));overflow-y:auto}
  .ts-auth-panel input:not([type=checkbox]):not([type=hidden]),
  .ts-secondary .ts2-account input:not([type=checkbox]):not([type=hidden]),
  .ts-secondary .ts2-account select,.ts-secondary .ts2-account textarea,
  .tsp-account-extras input,.tsp-account-extras textarea {font-size:16px;max-width:100%;box-sizing:border-box}
  .ts-auth-panel .ts-auth-legal {font-size:12px;line-height:1.75}
  .ts2-account .ts2-account-nav a {font-size:12px;line-height:1.45;min-height:48px;overflow-wrap:anywhere}
  .ts2-account .ts2-account-row {font-size:15px;line-height:1.6;min-width:0}
  .ts2-account .ts2-account-body {min-height:0}
  .ts2-account .ts2-account-row>* {min-width:0;overflow-wrap:anywhere}
  .ts2-account .ts2-order-card h3 {overflow-wrap:anywhere}
  .ts2-account .ts2-order-actions {display:flex;flex-wrap:wrap;gap:10px}
  .ts2-account .ts2-order-actions a,.ts2-account .ts2-order-actions button {max-width:100%;white-space:normal}
  .ts-secondary .ts2-cart-head h1 {font-size:clamp(28px,8vw,38px);line-height:1.2}
  .ts-secondary .ts2-cart-summary {padding:24px 18px;margin-top:24px}
  .ts-secondary .ts2-cart-checkout,.ts-secondary .ts2-cart-continue {white-space:normal;box-sizing:border-box;max-width:100%;font-size:16px}
  .tsp-filter {gap:8px}
  .tsp-filter a {font-size:14px;padding:10px 14px;line-height:1.5}
  .tsp-pagination {flex-wrap:wrap;gap:12px}
  .tsp-pagination a {padding:8px;min-height:44px;box-sizing:border-box}
  .ts-membership .ts-membership-options .ts-notice ol {font-size:14px;line-height:1.65}
  .ts-membership .ts-plan-benefits ol {font-size:14px;line-height:1.65}
  .ts-secondary .ts2-action-row {flex-wrap:wrap;gap:10px}
  .ts-secondary .ts2-action-row .ts2-play {flex:1 1 100%;min-width:0;min-height:48px;white-space:normal}
  .ts-secondary .ts2-story-media video,.ts-secondary .ts2-story-media audio {max-width:100%}
}
