/**
 * Stránka „Můj účet" (/muj-ucet/) – dashboard pro přihlášeného uživatele.
 *
 * Architektura:
 * - Stránka se renderuje uvnitř standardní Oxygen šablony se záhlavím
 *   a zápatím webu (proto NEpoužívá fullscreen layout .ftp-login-page).
 * - Vlastní záhlaví ukazuje jméno, ID a tlačítko „Odhlásit se".
 * - Pod ním je vykreslen shortcode [woocommerce_my_account] – WC vykreslí
 *   levou navigaci (Studijní plány / Objednávky / Předplatná / Adresy /
 *   Detaily účtu) a pravý obsahový panel.
 * - Položky „Stahování" a „Odhlásit" jsou skryté přes filtr v mu-pluginu
 *   `ftp-woocommerce-my-account.php`. Výchozí endpoint „Nástěnka" je tam
 *   přejmenovaný na „Studijní plány" a jeho šablona vykresluje shortcode
 *   [premium_accounts].
 *
 * WordPress meta:
 *   ftp_html_css_file = shared/auth-forms.css, muj-ucet.css
 *
 * shared/auth-forms.css zatím necháváme načítaný kvůli kompatibilitě, ale
 * tato stránka už [wppb-edit-profile] nepoužívá – editace profilu probíhá
 * přes WC endpoint „Detaily účtu" (edit-account).
 */

/* —— Reset .ftp-page-content (Oxygen / fakulty šablony) ——
 * Oxygen obaluje výstup shortcode do <div class="ct-shortcode">, který
 * není roztažený na plnou šířku. Bez toho se stránka účtu nemůže
 * roztáhnout, i když má width:100%. Protáhneme tedy i tento wrapper.
 */

.ct-shortcode:has(> .ftp-account-page) {
  width: 100%;
}

.ftp-page-content.ftp-account-page {
  width: 100%;
  max-width: none;
  margin: 40px auto;
  padding: 0 16px;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  backdrop-filter: none;
  font-family: "Nunito", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 17px;
  line-height: 1.6;
  color: #5a5a5a;
  box-sizing: border-box;
}

.ftp-account-page *,
.ftp-account-page *::before,
.ftp-account-page *::after {
  box-sizing: border-box;
}

/* —— Záhlaví: nadpis + meta řádky ——
 * Vzdušné, minimalistické: velký nadpis nahoře, pod ním řada
 * dvojic „Label  Hodnota" s drobnou šedou popiskou a tučnější
 * tmavou hodnotou. Na úzkých displejích se dvojice zalamují.
 */

.ftp-account-header {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0 0 28px;
  padding: 0 0 18px;
  border-bottom: 1px solid #e5e5e5;
}

.ftp-account-header-info {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}

.ftp-account-page .ftp-account-title {
  margin: 0;
  padding: 0;
  font-family: "Poppins", "Nunito", "Segoe UI", system-ui, sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.125;
  color: #4b4b4b;
}

.ftp-account-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 24px;
  margin: 0;
  padding: 0;
}

.ftp-account-meta-row {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
}

.ftp-account-meta dt {
  margin: 0;
  color: #777777;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
}

.ftp-account-meta dd {
  margin: 0;
  color: #4b4b4b;
  font-size: 15px;
  font-weight: 700;
  word-break: break-word;
}

/* —— Karta obsahující WC výpis (bez rámečku, grid 2 sloupce) ——
 * Levý sloupec drží obsah (formuláře/tabulky), pravý sloupec drží
 * navigaci (včetně položky „Odhlásit se" jako poslední odkaz).
 */

.ftp-account-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 368px;
  grid-template-areas:
    "notices notices"
    "content nav";
  align-items: start;
  column-gap: 24px;
  row-gap: 12px;
  margin: 0 0 22px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}

/* —— WooCommerce My Account: layout ——
 * Wrapper .woocommerce dostává display: contents, takže jeho děti
 * (nav, content, notices wrapper) se v gridu .ftp-account-card chovají
 * jako přímé položky a mohou se umístit do grid-areas (content / nav).
 * Tlačítko „Odhlásit se" pak v gridu navazuje přímo za navigací.
 */

.ftp-account-wc .woocommerce {
  display: contents;
}

.ftp-account-wc .woocommerce-notices-wrapper {
  grid-area: notices;
  width: 100%;
}

.ftp-account-wc .woocommerce-MyAccount-navigation {
  grid-area: nav;
  width: 100%;
  margin: 0;
  padding: 24px 16px;
  background: #ffffff;
  border: 2px solid #e5e5e5;
  border-radius: 16px;
}

.ftp-account-wc .woocommerce-MyAccount-content,
.woocommerce-account .ftp-account-wc .woocommerce-MyAccount-content {
  grid-area: content;
  width: 100%;
  min-width: 0;
  float: none;
}

.ftp-account-wc .woocommerce-MyAccount-navigation,
.woocommerce-account .ftp-account-wc .woocommerce-MyAccount-navigation {
  float: none;
}

/* —— WC navigace (položky uvnitř bílé kartičky) —— */

.ftp-account-wc .woocommerce-MyAccount-navigation ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.ftp-account-wc .woocommerce-MyAccount-navigation li {
  margin: 0;
  padding: 0;
  border-radius: 12px;
  transition: background-color 0.15s ease;
}

.ftp-account-wc .woocommerce-MyAccount-navigation li:hover {
  background: #e5e5e5;
}

.ftp-account-wc .woocommerce-MyAccount-navigation li.is-active,
.ftp-account-wc .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard.is-active,
.ftp-account-wc .woocommerce-MyAccount-navigation li[class*="is-active"] {
  background: #e5e5e5;
}

.ftp-account-wc .woocommerce-MyAccount-navigation li a {
  display: block;
  padding: 8px 30px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #4b4b4b;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0;
  text-decoration: none;
}

.ftp-account-wc .woocommerce-MyAccount-navigation li a:hover {
  background: transparent;
  color: #4b4b4b;
  text-decoration: none;
}

.ftp-account-wc .woocommerce-MyAccount-navigation li.is-active a,
.ftp-account-wc .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard.is-active a,
.ftp-account-wc .woocommerce-MyAccount-navigation li[class*="is-active"] a {
  background: transparent;
  color: #4b4b4b;
}

.ftp-account-wc .woocommerce-MyAccount-navigation li a:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(237, 55, 148, 0.35);
}

/* —— WC obsahová oblast: nadpisy, tabulky, formuláře —— */

.ftp-account-wc .woocommerce-MyAccount-content h2,
.ftp-account-wc .woocommerce-MyAccount-content h3 {
  margin: 0 0 16px;
  padding: 0;
  font-family: "Poppins", "Nunito", "Segoe UI", system-ui, sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.333;
  color: #777777;
}

.ftp-account-wc .woocommerce-MyAccount-content p {
  margin: 0 0 12px;
}

/* —— Prázdný stav „Objednávky" / „Předplatné" – informační banner ——
 * Když uživatel nemá žádné objednávky nebo žádné aktivní předplatné,
 * WC vykreslí informativní notice. Existují dvě varianty markupu:
 *
 *  1) Blokový – WC core na endpointu `orders`:
 *       <div class="wc-block-components-notice-banner is-info">
 *         <svg>…</svg>
 *         <div class="wc-block-components-notice-banner__content">
 *           Zatím nebyly… <a class="woocommerce-Button button">…</a>
 *         </div>
 *       </div>
 *
 *  2) Legacy – WC Subscriptions na endpointu `subscriptions`:
 *       <p class="woocommerce-info no_subscriptions …">
 *         Nemáte aktivovaný žádný… <a class="woocommerce-Button button">…</a>
 *       </p>
 *
 * Výchozí WC styly (světle modré pozadí #f4f8ff, modrý lem #007cba,
 * padding 16 px, border-radius 4 px) sem vizuálně nezapadají –
 * přepíšeme je na bílou kartičku v paletě webu s šedým lemem a
 * primárním růžovým tlačítkem ve stejném stylu jako ostatní CTA.
 *
 * Cíl a popisek tlačítka mění mu-plugin v PHP (filtry
 * `woocommerce_return_to_shop_redirect` a `gettext`).
 *
 * `!important` používáme cíleně tam, kde WC bloková CSS (resp. její
 * inline `<style>` ve <head>) má stejnou nebo vyšší specificitu kvůli
 * tomu, že se načítá po našem souboru. Specificita selektoru je sice
 * vyšší než WC defaultu (`.is-info > svg` = 0,2,1 vs. naše 0,3,1),
 * ale pro jistotu kritické vizuální vlastnosti zamykáme.
 */

.ftp-account-wc .wc-block-components-notice-banner.is-info,
.ftp-account-wc .woocommerce-info {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px 20px !important;
  margin: 0 0 20px !important;
  padding: 18px 20px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: 2px solid #e5e5e5 !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  color: #4b4b4b !important;
  font-family: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}

/* WC legacy `.woocommerce-info` má vlevo barevný indikátor přes ::before;
 * v naší bílé kartičce ho schováme.
 */
.ftp-account-wc .wc-block-components-notice-banner.is-info::before,
.ftp-account-wc .woocommerce-info::before {
  display: none !important;
  content: none !important;
}

/* SVG ikonu v blokovém banneru úplně schováme – v bílé kartičce
 * působila rušivě a uživatelské sdělení je dostatečně zřejmé z textu
 * + růžového CTA. Pro legacy `.woocommerce-info` (předplatné) SVG
 * v markupu neexistuje, takže tam pravidlo nic neovlivní.
 */
.ftp-account-wc .wc-block-components-notice-banner.is-info > svg {
  display: none !important;
}

.ftp-account-wc .wc-block-components-notice-banner.is-info .wc-block-components-notice-banner__content {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 20px;
  flex: 1 1 auto;
  min-width: 0;
  color: #4b4b4b;
  font-size: 16px;
  line-height: 1.5;
}

/* Vlastní tlačítko v banneru: růžové primární CTA se 3D stínem.
 * Selektory pokrývají blokový markup (`.is-info a.woocommerce-Button|.button`)
 * i legacy markup (`.woocommerce-info a.woocommerce-Button|.button`).
 */
.ftp-account-wc .wc-block-components-notice-banner.is-info a.woocommerce-Button,
.ftp-account-wc .wc-block-components-notice-banner.is-info a.button,
.ftp-account-wc .wc-block-components-notice-banner.is-info .wc-block-components-notice-banner__content a,
.ftp-account-wc .woocommerce-info a.woocommerce-Button,
.ftp-account-wc .woocommerce-info a.button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto;
  min-height: 44px !important;
  height: auto !important;
  padding: 0 18px !important;
  margin: 0 !important;
  background: #ed3794 !important;
  background-color: #ed3794 !important;
  background-image: none !important;
  border: 2px solid #ed3794 !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 0 0 #b8246e !important;
  color: #ffffff !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.64px !important;
  line-height: 1 !important;
  text-align: center;
  text-decoration: none !important;
  text-transform: uppercase !important;
  transition: filter 0.15s ease, transform 0.05s ease, box-shadow 0.05s ease;
  -webkit-appearance: none;
  appearance: none;
}

.ftp-account-wc .wc-block-components-notice-banner.is-info a.woocommerce-Button:hover,
.ftp-account-wc .wc-block-components-notice-banner.is-info a.button:hover,
.ftp-account-wc .wc-block-components-notice-banner.is-info .wc-block-components-notice-banner__content a:hover,
.ftp-account-wc .woocommerce-info a.woocommerce-Button:hover,
.ftp-account-wc .woocommerce-info a.button:hover {
  filter: brightness(1.06);
  background: #ed3794 !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

.ftp-account-wc .wc-block-components-notice-banner.is-info a.woocommerce-Button:active,
.ftp-account-wc .wc-block-components-notice-banner.is-info a.button:active,
.ftp-account-wc .wc-block-components-notice-banner.is-info .wc-block-components-notice-banner__content a:active,
.ftp-account-wc .woocommerce-info a.woocommerce-Button:active,
.ftp-account-wc .woocommerce-info a.button:active {
  transform: translateY(4px);
  box-shadow: 0 0 0 0 #b8246e !important;
}

.ftp-account-wc .wc-block-components-notice-banner.is-info a.woocommerce-Button:focus-visible,
.ftp-account-wc .wc-block-components-notice-banner.is-info a.button:focus-visible,
.ftp-account-wc .wc-block-components-notice-banner.is-info .wc-block-components-notice-banner__content a:focus-visible,
.ftp-account-wc .woocommerce-info a.woocommerce-Button:focus-visible,
.ftp-account-wc .woocommerce-info a.button:focus-visible {
  outline: none;
  box-shadow: 0 4px 0 0 #b8246e, 0 0 0 3px rgba(237, 55, 148, 0.35) !important;
}

/* —— Úspěšné WC hlášky (např. odhlášení ze studijního plánu) ——
 * Blokový markup:
 *   <div class="wc-block-components-notice-banner is-success">…</div>
 * Legacy markup (WC core):
 *   <div class="woocommerce-message">…</div>
 *
 * Paleta odpovídá ostatním success stavům na webu (.ftp-uctenka-success,
 * kontaktní formulář, přihlášení). Ikona fajfky zůstane viditelná v zeleném
 * kroužku – na rozdíl od .is-info, kde SVG schováváme.
 */

.ftp-account-wc .wc-block-components-notice-banner.is-success,
.ftp-account-wc .woocommerce-message {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 20px !important;
  padding: 16px 20px !important;
  background: #f1faea !important;
  background-color: #f1faea !important;
  border: 2px solid #58a700 !important;
  border-radius: 16px !important;
  box-shadow: 0 6px 16px rgba(88, 167, 0, 0.12) !important;
  color: #2f5a00 !important;
  font-family: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
}

.ftp-account-wc .wc-block-components-notice-banner.is-success::before,
.ftp-account-wc .woocommerce-message::before {
  display: none !important;
  content: none !important;
}

.ftp-account-wc .wc-block-components-notice-banner.is-success > svg {
  display: block !important;
  flex: 0 0 auto;
  width: 22px !important;
  height: 22px !important;
  padding: 9px;
  margin: 0 !important;
  background: #58a700;
  border-radius: 999px;
  box-sizing: content-box;
  fill: #ffffff !important;
  color: #ffffff !important;
}

.ftp-account-wc .wc-block-components-notice-banner.is-success .wc-block-components-notice-banner__content {
  flex: 1 1 auto;
  min-width: 0;
  color: #2f5a00;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
}

.ftp-account-wc .woocommerce-message {
  position: relative;
  padding-left: 56px !important;
}

.ftp-account-wc .woocommerce-message::after {
  content: "";
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  background-color: #58a700;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='m8 12 3 3 5-6'/></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px 14px;
  border-radius: 999px;
}

.ftp-account-wc .wc-block-components-notice-banner.is-success a,
.ftp-account-wc .woocommerce-message a {
  color: #2f5a00;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.ftp-account-wc .wc-block-components-notice-banner.is-success a:hover,
.ftp-account-wc .woocommerce-message a:hover {
  color: #1f3d00;
}

.ftp-account-wc .wc-block-components-notice-banner.is-success a:focus-visible,
.ftp-account-wc .woocommerce-message a:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(88, 167, 0, 0.35);
  border-radius: 4px;
}

/* —— Upozornění: rušení předplatného přes App Store (iOS) ——
 * Vkládá ho mu-plugin (MV_FTP_WC_My_Account::render_app_store_notice) nad
 * obsah endpointů „Objednávky" a „Předplatná".
 *
 * Layout: 3-sloupcový flex – ikona v jantarovém kroužku vlevo, uprostřed
 * sloupec s nadpisem, textem a tlačítkem, vpravo prostor. Aby na první
 * pohled vypadalo jako varování (a ne další karta), používá jantarovou
 * paletu (#f59e0b) s tlumeným krémovým pozadím a výrazným akcentním
 * pruhem na levé straně. Sekundární bílé tlačítko se šedým lemem (ne
 * růžové primární CTA), aby nesoupeřilo s reálnými akcemi v sekci.
 */
.ftp-account-wc .ftp-appstore-notice {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  width: 100%;
  margin: 0 0 24px;
  padding: 18px 22px 18px 24px;
  background: #fff8eb;
  border: 1px solid #f5d28a;
  border-left: 6px solid #f59e0b;
  border-radius: 12px;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.02);
  color: #4b3a12;
  font-family: inherit;
}

.ftp-account-wc .ftp-appstore-notice__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  margin-top: 2px;
  background: #f59e0b;
  border-radius: 999px;
  color: #ffffff;
}

.ftp-account-wc .ftp-appstore-notice__icon svg {
  display: block;
}

.ftp-account-wc .ftp-appstore-notice__body {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}

.ftp-account-wc .ftp-appstore-notice__title {
  margin: 0;
  padding: 0;
  font-family: "Poppins", "Nunito", "Segoe UI", system-ui, sans-serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.3;
  color: #7a4e00;
  letter-spacing: 0;
  text-transform: none;
}

.ftp-account-wc .ftp-appstore-notice__text {
  margin: 0;
  color: #5a4a1f;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.55;
}

.ftp-account-wc .ftp-appstore-notice__text strong {
  font-weight: 700;
  color: #4b3a12;
}

.ftp-account-wc a.ftp-appstore-notice__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex: 0 0 auto;
  min-height: 40px;
  height: auto;
  margin: 6px 0 0;
  padding: 0 16px;
  background: #ffffff;
  border: 2px solid #f5d28a;
  border-radius: 10px;
  box-shadow: 0 2px 0 0 #f5d28a;
  color: #7a4e00;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.4px;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: filter 0.15s ease, transform 0.05s ease, box-shadow 0.05s ease, background-color 0.15s ease, color 0.15s ease;
}

.ftp-account-wc a.ftp-appstore-notice__button:hover {
  background-color: #fff3d4;
  color: #7a4e00;
  text-decoration: none;
}

.ftp-account-wc a.ftp-appstore-notice__button:active {
  transform: translateY(2px);
  box-shadow: 0 0 0 0 #f5d28a;
}

.ftp-account-wc a.ftp-appstore-notice__button:focus-visible {
  outline: none;
  box-shadow: 0 2px 0 0 #f5d28a, 0 0 0 3px rgba(245, 158, 11, 0.35);
}

.ftp-account-wc .ftp-appstore-notice__button-icon {
  display: block;
  flex: 0 0 auto;
  opacity: 0.85;
}

/* —— Tabulka objednávek / předplatných ——
 * Oxygen šablona globálně stylizuje element `table` (bílé pozadí, padding,
 * stín, rámeček, border-radius) – to by tabulku v účtu vizuálně rozbilo.
 * Zde tedy nejdřív tyto styly resetujeme a vykreslíme čistou mřížku.
 */
.ftp-account-wc .woocommerce-orders-table,
.ftp-account-wc .shop_table,
.ftp-account-wc table.my_account_orders,
.ftp-account-wc table.my_account_subscriptions {
  display: table;
  width: 100%;
  margin: 0 0 18px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 15px;
  color: #4b4b4b;
  text-align: left;
}

.ftp-account-wc .woocommerce-orders-table thead,
.ftp-account-wc .shop_table thead {
  background: transparent;
}

.ftp-account-wc .woocommerce-orders-table th,
.ftp-account-wc .shop_table th {
  padding: 12px 14px;
  background: transparent;
  border: 0;
  border-bottom: 2px solid #e5e5e5;
  color: #777777;
  font-family: inherit;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.6px;
  line-height: 1.4;
  text-align: left;
  text-transform: uppercase;
  white-space: nowrap;
}

.ftp-account-wc .woocommerce-orders-table td,
.ftp-account-wc .shop_table td {
  padding: 14px;
  background: transparent;
  border: 0;
  border-bottom: 1px solid #efefef;
  color: #4b4b4b;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
  vertical-align: middle;
}

.ftp-account-wc .woocommerce-orders-table tbody tr:last-child td,
.ftp-account-wc .woocommerce-orders-table tbody tr:last-child th,
.ftp-account-wc .shop_table tbody tr:last-child td,
.ftp-account-wc .shop_table tbody tr:last-child th {
  border-bottom: 0;
}

.ftp-account-wc .woocommerce-orders-table tbody tr:hover td,
.ftp-account-wc .woocommerce-orders-table tbody tr:hover th,
.ftp-account-wc .shop_table tbody tr:hover td,
.ftp-account-wc .shop_table tbody tr:hover th {
  background: #fafafa;
}

/* Levý sloupec – číslo objednávky */
.ftp-account-wc .woocommerce-orders-table__cell-order-number {
  font-weight: 700;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-number a {
  color: #4b4b4b;
  font-weight: 700;
  text-decoration: none;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-number a:hover {
  color: #ed3794;
  text-decoration: none;
}

/* Datum + cena – jemnější popisek, tučná cena */
.ftp-account-wc .woocommerce-orders-table__cell-order-date {
  color: #5a5a5a;
  white-space: nowrap;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-total {
  color: #5a5a5a;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-total .woocommerce-Price-amount {
  color: #4b4b4b;
  font-weight: 700;
}

/* Stav objednávky – barevný „dot" + tučný popisek dle row stavu */
.ftp-account-wc .woocommerce-orders-table__cell-order-status {
  font-weight: 700;
  white-space: nowrap;
  color: #5a5a5a;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-status::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 50%;
  background: #b8b8b8;
  vertical-align: middle;
  transform: translateY(-1px);
}

.ftp-account-wc tr.woocommerce-orders-table__row--status-completed .woocommerce-orders-table__cell-order-status {
  color: #2d8500;
}
.ftp-account-wc tr.woocommerce-orders-table__row--status-completed .woocommerce-orders-table__cell-order-status::before {
  background: #58a700;
}

.ftp-account-wc tr.woocommerce-orders-table__row--status-processing .woocommerce-orders-table__cell-order-status,
.ftp-account-wc tr.woocommerce-orders-table__row--status-on-hold .woocommerce-orders-table__cell-order-status,
.ftp-account-wc tr.woocommerce-orders-table__row--status-pending .woocommerce-orders-table__cell-order-status {
  color: #9a7400;
}
.ftp-account-wc tr.woocommerce-orders-table__row--status-processing .woocommerce-orders-table__cell-order-status::before,
.ftp-account-wc tr.woocommerce-orders-table__row--status-on-hold .woocommerce-orders-table__cell-order-status::before,
.ftp-account-wc tr.woocommerce-orders-table__row--status-pending .woocommerce-orders-table__cell-order-status::before {
  background: #f0b400;
}

.ftp-account-wc tr.woocommerce-orders-table__row--status-cancelled .woocommerce-orders-table__cell-order-status,
.ftp-account-wc tr.woocommerce-orders-table__row--status-refunded .woocommerce-orders-table__cell-order-status {
  color: #8a8a8a;
}
.ftp-account-wc tr.woocommerce-orders-table__row--status-cancelled .woocommerce-orders-table__cell-order-status::before,
.ftp-account-wc tr.woocommerce-orders-table__row--status-refunded .woocommerce-orders-table__cell-order-status::before {
  background: #b8b8b8;
}

.ftp-account-wc tr.woocommerce-orders-table__row--status-failed .woocommerce-orders-table__cell-order-status {
  color: #b22128;
}
.ftp-account-wc tr.woocommerce-orders-table__row--status-failed .woocommerce-orders-table__cell-order-status::before {
  background: #d33d3d;
}

/* Akční sloupec – kompaktní pilulková tlačítka místo přerostlých růžových */
.ftp-account-wc .woocommerce-orders-table__cell-order-actions,
.ftp-account-wc .shop_table .order-actions {
  text-align: right;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button,
.ftp-account-wc .shop_table .order-actions .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 0;
  height: 32px;
  padding: 0 12px;
  margin: 2px 0 2px 6px;
  background: #ffffff;
  background-image: none;
  border: 2px solid #e5e5e5;
  border-radius: 8px;
  box-shadow: 0 3px 0 0 #e5e5e5;
  color: #ed3794;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.4px;
  line-height: 28px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: filter 0.15s ease, transform 0.05s ease, box-shadow 0.05s ease, background-color 0.15s ease;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button:hover,
.ftp-account-wc .shop_table .order-actions .button:hover {
  filter: none;
  background-color: #f7f7f7;
  color: #ed3794;
  text-decoration: none;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button:active,
.ftp-account-wc .shop_table .order-actions .button:active {
  transform: translateY(3px);
  box-shadow: 0 0 0 0 #e5e5e5;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button:focus-visible,
.ftp-account-wc .shop_table .order-actions .button:focus-visible {
  outline: none;
  box-shadow: 0 3px 0 0 #e5e5e5, 0 0 0 3px rgba(237, 55, 148, 0.35);
}

/* Primární akce – Zaplatit */
.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button.pay,
.ftp-account-wc .shop_table .order-actions .button.pay {
  background: #ed3794;
  border-color: #ed3794;
  box-shadow: 0 3px 0 0 #b8246e;
  color: #ffffff;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button.pay:hover,
.ftp-account-wc .shop_table .order-actions .button.pay:hover {
  filter: brightness(1.06);
  background: #ed3794;
  color: #ffffff;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button.pay:active,
.ftp-account-wc .shop_table .order-actions .button.pay:active {
  transform: translateY(3px);
  box-shadow: 0 0 0 0 #b8246e;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button.pay:focus-visible,
.ftp-account-wc .shop_table .order-actions .button.pay:focus-visible {
  outline: none;
  box-shadow: 0 3px 0 0 #b8246e, 0 0 0 3px rgba(237, 55, 148, 0.35);
}

/* Destruktivní akce – Zrušit (utlumená šedá) */
.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button.cancel,
.ftp-account-wc .shop_table .order-actions .button.cancel {
  color: #8a8a8a;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button.cancel:hover,
.ftp-account-wc .shop_table .order-actions .button.cancel:hover {
  background-color: #fff5f5;
  color: #b22128;
}

.ftp-account-wc .button,
.ftp-account-wc .woocommerce-button,
.ftp-account-wc .woocommerce-Button,
.ftp-account-wc input[type="submit"],
.ftp-account-wc button[type="submit"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px;
  height: auto;
  padding: 0 18px !important;
  margin: 0;
  background: #ed3794 !important;
  background-color: #ed3794 !important;
  background-image: none !important;
  border: 2px solid #ed3794 !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 0 0 #b8246e !important;
  color: #ffffff !important;
  cursor: pointer;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.64px !important;
  line-height: 1 !important;
  text-align: center;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: filter 0.15s ease, transform 0.05s ease, box-shadow 0.05s ease;
  -webkit-appearance: none;
  appearance: none;
}

.ftp-account-wc .button:hover,
.ftp-account-wc .woocommerce-button:hover,
.ftp-account-wc .woocommerce-Button:hover,
.ftp-account-wc input[type="submit"]:hover,
.ftp-account-wc button[type="submit"]:hover {
  filter: brightness(1.06);
  background: #ed3794 !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

.ftp-account-wc .button:active,
.ftp-account-wc .woocommerce-button:active,
.ftp-account-wc .woocommerce-Button:active,
.ftp-account-wc input[type="submit"]:active,
.ftp-account-wc button[type="submit"]:active {
  transform: translateY(4px);
  box-shadow: 0 0 0 0 #b8246e !important;
}

.ftp-account-wc .button:focus-visible,
.ftp-account-wc .woocommerce-button:focus-visible,
.ftp-account-wc .woocommerce-Button:focus-visible,
.ftp-account-wc input[type="submit"]:focus-visible,
.ftp-account-wc button[type="submit"]:focus-visible {
  outline: none;
  box-shadow: 0 4px 0 0 #b8246e, 0 0 0 3px rgba(237, 55, 148, 0.35) !important;
}

/* Tlačítka v tabulce detailu předplatného (Obnovit předplatné apod.) */
.ftp-account-wc .shop_table.subscription_details .button,
.ftp-account-wc .shop_table.subscription_details .woocommerce-button {
  margin-top: 2px;
}

/* Sekundární tlačítka v akčním sloupci tabulek – přepis obecného .button */
.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button,
.ftp-account-wc .shop_table .order-actions .button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 0 !important;
  height: 32px !important;
  padding: 0 12px !important;
  margin: 2px 0 2px 6px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  border: 2px solid #e5e5e5 !important;
  border-radius: 8px !important;
  box-shadow: 0 3px 0 0 #e5e5e5 !important;
  color: #ed3794 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.4px !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-transform: uppercase;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button:hover,
.ftp-account-wc .shop_table .order-actions .button:hover {
  filter: none !important;
  background: #f7f7f7 !important;
  background-color: #f7f7f7 !important;
  color: #ed3794 !important;
  text-decoration: none !important;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button:active,
.ftp-account-wc .shop_table .order-actions .button:active {
  transform: translateY(3px) !important;
  box-shadow: 0 0 0 0 #e5e5e5 !important;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button.pay,
.ftp-account-wc .shop_table .order-actions .button.pay {
  background: #ed3794 !important;
  background-color: #ed3794 !important;
  border-color: #ed3794 !important;
  box-shadow: 0 3px 0 0 #b8246e !important;
  color: #ffffff !important;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button.pay:hover,
.ftp-account-wc .shop_table .order-actions .button.pay:hover {
  filter: brightness(1.06) !important;
  background: #ed3794 !important;
  background-color: #ed3794 !important;
  color: #ffffff !important;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button.pay:active,
.ftp-account-wc .shop_table .order-actions .button.pay:active {
  transform: translateY(3px) !important;
  box-shadow: 0 0 0 0 #b8246e !important;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button.cancel,
.ftp-account-wc .shop_table .order-actions .button.cancel {
  color: #8a8a8a !important;
}

.ftp-account-wc .woocommerce-orders-table__cell-order-actions .button.cancel:hover,
.ftp-account-wc .shop_table .order-actions .button.cancel:hover {
  background: #fff5f5 !important;
  background-color: #fff5f5 !important;
  color: #b22128 !important;
}

.ftp-account-wc a {
  color: #ed3794;
  font-weight: 700;
  text-decoration: none;
}

.ftp-account-wc a:not(.button):not(.woocommerce-button):not(.woocommerce-Button):not(.premium-account-button):hover {
  color: #b8246e;
  text-decoration: underline;
}

/* WC formuláře (edit-account, edit-address): jednotné inputy —
 * světle šedý zaoblený rámeček, větší písmo, klidná barva, na focus
 * se obal rozsvítí do růžové.
 */

.ftp-account-wc form .form-row input[type="text"],
.ftp-account-wc form .form-row input[type="email"],
.ftp-account-wc form .form-row input[type="tel"],
.ftp-account-wc form .form-row input[type="password"],
.ftp-account-wc form .woocommerce-Input,
.ftp-account-wc form input.input-text {
  display: block;
  width: 100%;
  height: 48px;
  padding: 8px 14px;
  background: #f7f7f7;
  border: 2px solid #e5e5e5;
  border-radius: 12px;
  color: #4b4b4b;
  font-family: inherit;
  font-size: 20px;
  line-height: 28px;
  outline: none;
  transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
  -webkit-appearance: none;
  appearance: none;
  box-sizing: border-box;
}

.ftp-account-wc form .form-row input[type="text"]:focus,
.ftp-account-wc form .form-row input[type="email"]:focus,
.ftp-account-wc form .form-row input[type="tel"]:focus,
.ftp-account-wc form .form-row input[type="password"]:focus,
.ftp-account-wc form .woocommerce-Input:focus,
.ftp-account-wc form input.input-text:focus {
  background: #ffffff;
  border-color: #ed3794;
  box-shadow: 0 0 0 3px rgba(237, 55, 148, 0.18);
  caret-color: #ed3794;
}

.ftp-account-wc form label {
  display: block;
  margin: 0 0 8px 2px;
  color: #4b4b4b;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
}

.ftp-account-wc form .form-row {
  margin: 0 0 24px;
}

/* —— Vlastní obsah dashboardu (Studijní plány) ——
 * Shortcode [premium_accounts] vrací:
 *   <ul class="premium-accounts-list">
 *     <li class="premium-has">Název plánu</li>      (uživatel plán má)
 *     <li class="premium-missing">Název plánu</li>  (uživatel plán nemá)
 *   </ul>
 * Šablona `templates/myaccount/dashboard.php` doplňuje do každého <li>
 * <span.premium-account-label> + tlačítko <a.premium-account-button>
 * (varianty --app pro přejít a --buy pro koupit).
 *
 * Vizuál je minimalistický: prostý seznam s tenkou linkou mezi
 * položkami, stav zobrazuje barevný „pill" badge napravo od názvu.
 */

.ftp-account-study-plans {
  width: 100%;
}

.ftp-account-study-plans .premium-accounts-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid #e5e5e5;
}

.ftp-account-study-plans .premium-accounts-list li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 16px;
  margin: 0;
  padding: 16px 4px;
  background: transparent;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
  border-radius: 0;
  list-style: none;
}

.ftp-account-study-plans .premium-account-label {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  flex: 1 1 200px;
  min-width: 0;
  font-family: "Poppins", "Nunito", "Segoe UI", system-ui, sans-serif;
  font-size: 17px;
  font-weight: 700;
  color: #4b4b4b;
  word-break: break-word;
}

/* Stavový „pill" badge – vykreslen pomocí ::after na samotném labelu, */
/* takže není potřeba upravovat HTML šablonu shortcode.                 */
.ftp-account-study-plans .premium-accounts-list li.premium-has .premium-account-label::after,
.ftp-account-study-plans .premium-accounts-list li.premium-missing .premium-account-label::after {
  display: inline-block;
  padding: 2px 10px;
  border-radius: 999px;
  font-family: "Nunito", "Segoe UI", system-ui, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.ftp-account-study-plans .premium-accounts-list li.premium-has .premium-account-label::after {
  content: "Aktivní";
  background: rgba(88, 167, 0, 0.12);
  color: #58a700;
}

.ftp-account-study-plans .premium-accounts-list li.premium-missing .premium-account-label::after {
  content: "Není zakoupen";
  background: rgba(237, 55, 148, 0.12);
  color: #ed3794;
}

.ftp-account-study-plans .premium-account-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-height: 48px;
  padding: 0 18px;
  border-radius: 12px;
  font-family: "Nunito", "Segoe UI", system-ui, sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.64px;
  line-height: 44px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: filter 0.15s ease, transform 0.05s ease, box-shadow 0.05s ease, background-color 0.15s ease;
  -webkit-appearance: none;
  appearance: none;
}

.ftp-account-study-plans .premium-account-button--app {
  background: #ed3794;
  border: 2px solid #ed3794;
  box-shadow: 0 4px 0 0 #b8246e;
  color: #ffffff !important;
}

.ftp-account-study-plans .premium-account-button--app:hover {
  filter: none;
  background: #d8207f;
  border-color: #d8207f;
  color: #ffffff !important;
  text-decoration: none !important;
}

.ftp-account-study-plans .premium-account-button--app:active {
  transform: translateY(4px);
  box-shadow: 0 0 0 0 #b8246e;
}

.ftp-account-study-plans .premium-account-button--buy {
  background: #ffffff;
  border: 2px solid #e5e5e5;
  box-shadow: 0 4px 0 0 #e5e5e5;
  color: #ed3794;
}

.ftp-account-study-plans .premium-account-button--buy:hover {
  background-color: #f7f7f7;
  color: #ed3794;
  text-decoration: none;
}

.ftp-account-study-plans .premium-account-button--buy:active {
  transform: translateY(4px);
  box-shadow: 0 0 0 0 #e5e5e5;
}

.ftp-account-study-plans .premium-account-button--app:focus-visible {
  outline: none;
  box-shadow: 0 4px 0 0 #b8246e, 0 0 0 3px rgba(237, 55, 148, 0.35);
}

.ftp-account-study-plans .premium-account-button--buy:focus-visible {
  outline: none;
  box-shadow: 0 4px 0 0 #e5e5e5, 0 0 0 3px rgba(237, 55, 148, 0.35);
}

/* —— Stav „nepřihlášený" —— */

.ftp-account-not-logged {
  text-align: center;
}

.ftp-account-not-logged .ftp-account-title {
  margin-bottom: 8px;
}

.ftp-account-lead {
  margin: 0 0 18px;
  font-size: 16px;
  color: #6f6f6f;
}

.ftp-account-page .ftp-account-button {
  display: inline-block;
  min-width: 220px;
  height: 48px;
  padding: 0 22px;
  background: #ed3794;
  border: none;
  border-radius: 12px;
  box-shadow: 0 4px 0 0 #b8246e;
  color: #ffffff;
  font-family: inherit;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.64px;
  line-height: 48px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: filter 0.15s ease, transform 0.05s ease, box-shadow 0.05s ease;
}

.ftp-account-page .ftp-account-button:hover {
  filter: brightness(1.06);
  color: #ffffff;
  text-decoration: none;
}

.ftp-account-page .ftp-account-button:active {
  transform: translateY(4px);
  box-shadow: 0 0 0 0 #b8246e;
}

/* —— Mobil —— */

/* Dvousloupcový layout (obsah + pravý sloupec s navigací) potřebuje dost
 * místa. Pod ~960px je levý obsahový sloupec tak úzký, že desktopová
 * tabulka objednávek přetéká. Proto přepneme na jeden sloupec dřív –
 * obsah pak má celou šířku. */
@media (max-width: 960px) {
  .ftp-account-card {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "notices"
      "nav"
      "content";
    column-gap: 0;
    row-gap: 14px;
    padding: 0;
  }
}

@media (max-width: 767px) {
  .ftp-page-content.ftp-account-page {
    margin: 20px auto 32px;
    padding: 0 12px;
    font-size: 16px;
  }

  .ftp-account-page .ftp-account-title {
    font-size: 24px;
  }

  .ftp-account-wc .woocommerce-MyAccount-navigation {
    padding: 16px;
  }

  .ftp-account-wc .woocommerce-MyAccount-navigation ul {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 4px;
  }

  .ftp-account-wc .woocommerce-MyAccount-navigation li a {
    padding: 8px 16px;
    font-size: 16px;
    line-height: 22px;
  }
}

/* Tabulka objednávek na mobilu – přepneme do stack-kartiček.
 * WooCommerce na každou buňku přidává atribut data-title="…" právě pro
 * tento case. Skryjeme thead, řádek se chová jako karta, každá buňka je
 * flex řádek s popiskem nalevo a hodnotou napravo.
 */
@media (max-width: 768px) {
  .ftp-account-wc .woocommerce-orders-table,
  .ftp-account-wc .shop_table {
    display: block;
    width: 100%;
  }

  .ftp-account-wc .woocommerce-orders-table thead,
  .ftp-account-wc .shop_table thead {
    display: none;
  }

  .ftp-account-wc .woocommerce-orders-table tbody,
  .ftp-account-wc .shop_table tbody {
    display: block;
    width: 100%;
  }

  .ftp-account-wc .woocommerce-orders-table tbody tr,
  .ftp-account-wc .shop_table tbody tr {
    display: block;
    width: 100%;
    margin: 0 0 12px;
    padding: 6px 14px;
    background: #ffffff;
    border: 2px solid #e5e5e5;
    border-radius: 12px;
  }

  .ftp-account-wc .woocommerce-orders-table tbody tr:hover td,
  .ftp-account-wc .woocommerce-orders-table tbody tr:hover th,
  .ftp-account-wc .shop_table tbody tr:hover td,
  .ftp-account-wc .shop_table tbody tr:hover th {
    background: transparent;
  }

  .ftp-account-wc .woocommerce-orders-table tbody tr td,
  .ftp-account-wc .woocommerce-orders-table tbody tr th,
  .ftp-account-wc .shop_table tbody tr td,
  .ftp-account-wc .shop_table tbody tr th {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    padding: 8px 0;
    border: 0;
    border-bottom: 1px solid #efefef;
    text-align: right;
    white-space: normal;
  }

  .ftp-account-wc .woocommerce-orders-table tbody tr td:last-child,
  .ftp-account-wc .woocommerce-orders-table tbody tr th:last-child,
  .ftp-account-wc .shop_table tbody tr td:last-child,
  .ftp-account-wc .shop_table tbody tr th:last-child {
    border-bottom: 0;
  }

  .ftp-account-wc .woocommerce-orders-table tbody tr td::before,
  .ftp-account-wc .woocommerce-orders-table tbody tr th::before,
  .ftp-account-wc .shop_table tbody tr td::before,
  .ftp-account-wc .shop_table tbody tr th::before {
    content: attr(data-title);
    display: inline-block;
    flex: 0 0 auto;
    width: auto;
    height: auto;
    /* Odtlačí popisek doleva, takže hodnota (i víc-uzlová, např.
     * „369 Kč / měsíc") zůstane seskupená vpravo a neroztáhne se. */
    margin: 0 auto 0 0;
    padding: 0;
    background: transparent;
    border-radius: 0;
    transform: none;
    color: #777777;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-align: left;
    text-transform: uppercase;
    vertical-align: baseline;
  }

  /* Stavová buňka: nezobrazovat popisek „Stav" (hodnota je sama o sobě
   * jasná) – místo data-title vrátíme barevnou tečku a stav zarovnáme
   * doleva vedle ní. */
  .ftp-account-wc .woocommerce-orders-table tbody tr td.woocommerce-orders-table__cell-order-status,
  .ftp-account-wc .shop_table tbody tr td.woocommerce-orders-table__cell-order-status {
    justify-content: flex-start;
  }

  .ftp-account-wc .woocommerce-orders-table tbody tr td.woocommerce-orders-table__cell-order-status::before,
  .ftp-account-wc .shop_table tbody tr td.woocommerce-orders-table__cell-order-status::before {
    content: "";
    flex: 0 0 auto;
    width: 8px;
    height: 8px;
    margin: 0 8px 0 0;
    border-radius: 50%;
    background: currentColor;
    text-transform: none;
    letter-spacing: 0;
  }

  /* Akce zarovnané doprava a s prostorem na zalomení */
  .ftp-account-wc .woocommerce-orders-table__cell-order-actions,
  .ftp-account-wc .shop_table .order-actions {
    flex-wrap: wrap;
    justify-content: flex-end;
    row-gap: 4px;
  }

  .ftp-account-wc .woocommerce-orders-table__cell-order-actions .button,
  .ftp-account-wc .shop_table .order-actions .button {
    margin: 4px 0 0 6px;
  }

  /* Detail předplatného: víc akcí (Ukončit, změna platby…) je v jedné
   * flex buňce. Bez sloupce se tlačítka srovnají vedle sebe a druhé
   * přeteče mimo kartu. */
  .ftp-account-wc .shop_table.subscription_details tbody tr td:has(.button),
  .ftp-account-wc .shop_table.subscription_details tbody tr td:has(.woocommerce-button) {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  .ftp-account-wc .shop_table.subscription_details .button,
  .ftp-account-wc .shop_table.subscription_details .woocommerce-button {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0 !important;
    white-space: normal;
  }
}

@media (max-width: 480px) {
  .ftp-account-meta {
    flex-direction: column;
    gap: 4px;
  }

  .ftp-account-wc .wc-block-components-notice-banner.is-info,
  .ftp-account-wc .woocommerce-info {
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    padding: 16px !important;
    gap: 14px !important;
  }

  .ftp-account-wc .wc-block-components-notice-banner.is-info .wc-block-components-notice-banner__content {
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 14px;
  }

  .ftp-account-wc .wc-block-components-notice-banner.is-info a.woocommerce-Button,
  .ftp-account-wc .wc-block-components-notice-banner.is-info a.button,
  .ftp-account-wc .wc-block-components-notice-banner.is-info .wc-block-components-notice-banner__content a,
  .ftp-account-wc .woocommerce-info a.woocommerce-Button,
  .ftp-account-wc .woocommerce-info a.button {
    width: 100% !important;
  }

  .ftp-account-wc .wc-block-components-notice-banner.is-success,
  .ftp-account-wc .woocommerce-message {
    flex-direction: row !important;
    align-items: flex-start !important;
    padding: 14px 16px !important;
    gap: 12px !important;
  }

  .ftp-account-wc .wc-block-components-notice-banner.is-success > svg {
    width: 18px !important;
    height: 18px !important;
    padding: 8px;
  }

  .ftp-account-wc .woocommerce-message {
    padding-left: 52px !important;
  }

  .ftp-account-wc .shop_table.subscription_details .button,
  .ftp-account-wc .shop_table.subscription_details .woocommerce-button {
    width: 100%;
    margin: 0 !important;
  }

  .ftp-account-wc .ftp-appstore-notice {
    gap: 12px;
    padding: 14px 16px 16px 16px;
    border-left-width: 5px;
  }

  .ftp-account-wc .ftp-appstore-notice__icon {
    width: 34px;
    height: 34px;
  }

  .ftp-account-wc .ftp-appstore-notice__icon svg {
    width: 18px;
    height: 18px;
  }

  .ftp-account-wc .ftp-appstore-notice__title {
    font-size: 16px;
  }

  .ftp-account-wc .ftp-appstore-notice__text {
    font-size: 14px;
  }

  .ftp-account-wc a.ftp-appstore-notice__button {
    width: 100%;
  }

  .ftp-account-wc .woocommerce-orders-table,
  .ftp-account-wc .shop_table {
    font-size: 14px;
  }

  .ftp-account-wc .woocommerce-orders-table tbody tr,
  .ftp-account-wc .shop_table tbody tr {
    padding: 4px 12px;
  }

  .ftp-account-study-plans .premium-accounts-list li {
    align-items: stretch;
    padding: 14px 4px;
  }

  .ftp-account-study-plans .premium-account-label {
    flex: 1 1 100%;
  }

  .ftp-account-study-plans .premium-account-button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ftp-account-page .ftp-account-button,
  .ftp-account-wc .button,
  .ftp-account-wc .woocommerce-button,
  .ftp-account-wc .woocommerce-Button,
  .ftp-account-wc input[type="submit"],
  .ftp-account-wc button[type="submit"],
  .ftp-account-wc .woocommerce-MyAccount-navigation li a,
  .ftp-account-wc form .form-row input,
  .ftp-account-study-plans .premium-account-button {
    transition: none;
  }
}
