/* ============================================================
   account.css — PŘIHLÁŠENÍ, REGISTRACE a ZÁKAZNICKÝ ÚČET (Fáze F3).
   Vlastní account agent. Bez předlohy v artefaktu — styl KONZISTENTNĚ
   s design systémem webu (chrome/homepage/category/product.css).

   Scope: body#authentication (login i registrace přes ?create_account=1),
   body#password, body#my-account, body#history, body#order-detail,
   body#addresses, body#address, body#identity, body#discount,
   body#order-slip, body#order-follow.

   POZOR na custom.css: načítá se 2×, druhá kopie AŽ ZA tímto souborem.
   Jeho legacy blok „15.x účet" (ř. ~4276-5330) cílí stejné stránky přes
   :is(body#…) [+ #main] = 1-2 id. Proto zde mají sdílená pravidla prefix
   #content-wrapper #main (3 id vč. body) — vyhrávají specificitou,
   ne pořadím. Legacy proměnné --ks-* se navíc na scope účtu přemapují
   na tokeny design systému (sekce 0), takže i nepřebitá legacy pravidla
   (fajfky, hvězdičky, chybové stavy) kreslí správné barvy.

   Mapování markup → design:
     h1.page-title span → žlutý zvýrazňovač jako category cathead
     .form-control → pilulka jako hledání v hlavičce (chrome.css)
     .custom-checkbox → zaoblený 6px korálový checkbox (category.css filtr)
     .btn-primary → žlutá CTA pilulka (žlutá #FFCE3B, text #3A2E00)
     .ks-acc-grid → dlaždice jako homepage .ks-tile (hover lift)
     .my-account-side-links → karta navigace jako rail kategorie
   ============================================================ */

/* ============================================================
   0. TOKENY (--ksu-*) + přemapování legacy --ks-* na scope účtu
   ============================================================ */
body#authentication, body#password, body#my-account, body#history,
body#order-detail, body#addresses, body#address, body#identity,
body#discount, body#order-slip, body#order-follow,
body[id^="module-iqitwishlist"] {
  --ksu-paper: #FFFDF6;
  --ksu-surface: #FFFFFF;
  --ksu-cream: #FDF4D8;
  --ksu-cream2: #FFF7E0;
  --ksu-ink: #2B2620;
  --ksu-text: #4C473F;
  --ksu-muted: #9C9483;
  --ksu-faint: #BDB7A6;
  --ksu-line: #EDE7D8;
  --ksu-line-strong: #DED6C2;
  --ksu-coral: #F07E7E;
  --ksu-coral-deep: #E06A6A;
  --ksu-coral-soft: #FCE6E4;
  --ksu-yellow: #FFD54A;
  --ksu-yellow-btn: #FFCE3B;
  --ksu-yellow-deep: #EDAF06;
  --ksu-yellow-ink: #3A2E00;
  --ksu-hi: #FFE68C;
  --ksu-green: #3EA24A;
  --ksu-shadow-sm: 0 1px 2px rgba(43,38,32,.05), 0 5px 14px rgba(43,38,32,.05);
  --ksu-shadow: 0 3px 8px rgba(43,38,32,.06), 0 16px 36px rgba(43,38,32,.08);
  --ksu-shadow-lift: 0 10px 22px rgba(43,38,32,.12), 0 26px 54px rgba(43,38,32,.14);
  --ksu-r: 14px;
  --ksu-r-s: 10px;

  /* legacy custom.css (blok 15.x) kreslí z těchto proměnných; přemapování
     na tokeny webu srovná fajfky, puntíky radia, hvězdičky i hovery,
     které tento soubor nepřebíjí selektorem */
  --ks-cerna: #2B2620;
  --ks-nadpis: #2B2620;
  --ks-akcent: #F07E7E;
  --ks-akcent-hover: #E06A6A;
  --ks-text: #4C473F;
  --ks-muted: #9C9483;
  --ks-muted-2: #9C9483;
  --ks-border: #EDE7D8;
  --ks-radius: 14px;
  --ks-radius-s: 10px;
  --ks-stin-hover: 0 10px 22px rgba(43,38,32,.12), 0 26px 54px rgba(43,38,32,.14);
}

/* ============================================================
   1. RÁM STRÁNKY: breadcrumb, reset #content, titulky
   ============================================================ */
/* breadcrumb 1:1 jako na produktu/kategorii */
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb {
  background: none;
  padding: 16px 0 4px;
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--ksu-muted);
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb ol {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb li {
  margin: 0; padding: 0;
  display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  gap: 7px;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb li::before,
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb li::after { content: none; }
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb li + li::before {
  content: "\203A";
  color: var(--ksu-faint);
  font-weight: 600;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb li a {
  color: var(--ksu-muted); text-transform: none; text-decoration: none;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb li a:hover { color: var(--ksu-ink); }
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb li:last-child span { color: var(--ksu-ink); font-weight: 700; }
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb li:first-child a {
  display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  color: var(--ksu-coral-deep);
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb li:first-child a span { font-size: 0; line-height: 0; }
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #wrapper .breadcrumb li:first-child a span::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 17px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10.5 12 3l9 7.5'/%3E%3Cpath d='M5 9.5V21h5v-6h4v6h5V9.5'/%3E%3C/svg%3E") no-repeat center / 17px 17px;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10.5 12 3l9 7.5'/%3E%3Cpath d='M5 9.5V21h5v-6h4v6h5V9.5'/%3E%3C/svg%3E") no-repeat center / 17px 17px;
}

/* #content je jen obal, rám nesou karty (Warehouse mu dává border+padding) */
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #content.page-content {
  padding: 0;
  margin: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main { padding-bottom: 40px; }

/* h1 se žlutým zvýrazňovačem (jako cathead kategorie); přebíjí legacy 50px
   titulek s absolutním skew podtržením z category.css LEGACY bloku */
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper .page-title {
  font-size: 32px;
  line-height: 1.15;
  font-weight: 800;
  color: var(--ksu-ink);
  margin: 10px 0 18px;
  padding: 0;
  text-align: left;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper .page-title::after { display: none; }
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper .page-title span {
  position: static;
  z-index: auto;
  background: -webkit-linear-gradient(top, transparent 58%, var(--ksu-hi) 58%, var(--ksu-hi) 95%, transparent 95%);
  background: linear-gradient(180deg, transparent 58%, var(--ksu-hi) 58%, var(--ksu-hi) 95%, transparent 95%);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  padding: 0 4px;
  margin: 0 -2px;
  border-radius: 3px;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper .page-title span::before { content: none; display: none; }

/* přihlášení/registrace/heslo: titulek na střed nad kartou */
:is(body#authentication, body#password) #content-wrapper .page-title { text-align: center; }

/* h2 podstránky účtu (blok page_title v customer/page.tpl) */
:is(body#my-account, body#history, body#order-detail, body#addresses,
    body#address, body#identity, body#discount, body#order-slip,
    body#order-follow) #content-wrapper .my-account-page-content > h2 {
  font-size: 22px;
  line-height: 1.2;
  font-weight: 800;
  color: var(--ksu-ink);
  margin: 0 0 6px;
}
/* úvodní věta pod h2 (h6 v history.tpl, perex my-account) */
:is(body#my-account, body#history, body#order-detail, body#addresses,
    body#address, body#identity, body#discount, body#order-slip,
    body#order-follow) #content-wrapper .my-account-page-content > h6,
body#my-account #content-wrapper .ks-acc-lead {
  font-size: 14.5px;
  font-weight: 500;
  line-height: 1.55;
  color: var(--ksu-muted);
  margin: 0 0 18px;
}

/* ============================================================
   2. FORMULÁŘE (sdílené): řádky, popisky, pilulková pole,
      heslo s okem, checkboxy, radia, chyby
   ============================================================ */
/* řádek pole: popisek nad polem, poznámka vpravo od popisku */
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-group.row {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
  -webkit-box-align: baseline; -webkit-align-items: baseline; -ms-flex-align: baseline; align-items: baseline;
  margin: 0 0 16px;
}
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-group.row > label {
  -webkit-box-ordinal-group: 2; -webkit-order: 1; -ms-flex-order: 1; order: 1;
  -webkit-box-flex: 1; -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0 0 7px;
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: .01em;
  color: var(--ksu-ink);
  text-align: left;
}
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-group.row > .form-control-comment {
  -webkit-box-ordinal-group: 3; -webkit-order: 2; -ms-flex-order: 2; order: 2;
  -webkit-box-flex: 0; -webkit-flex: 0 0 auto; -ms-flex: 0 0 auto; flex: 0 0 auto;
  width: auto;
  max-width: none;
  margin: 0 0 0 auto;
  padding: 0 0 7px;
  font-size: 12.5px;
  line-height: 1.25;
  color: var(--ksu-muted);
}
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-group.row > label + div:not(.form-control-comment),
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-group.row > .js-input-column {
  -webkit-box-ordinal-group: 4; -webkit-order: 3; -ms-flex-order: 3; order: 3;
  -webkit-box-flex: 0; -webkit-flex: 0 0 100%; -ms-flex: 0 0 100%; flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
  padding: 0;
}
/* nápověda pod polem (povolené znaky u jména apod.) */
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-group.row span.form-control-comment {
  display: block;
  margin: 6px 0 0;
  padding: 0;
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--ksu-muted);
}
/* hvězdička povinného pole */
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main label.required::after {
  content: " *";
  color: var(--ksu-coral-deep);
  font-weight: 700;
}
/* řádky se souhlasy: levý popisek je prázdný (text nese label u checkboxu),
   bez :has() se skrývá přes for= konkrétních polí */
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .form-group.row > label.col-form-label[for="field-psgdpr"],
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .form-group.row > label.col-form-label[for="field-newsletter"],
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .form-group.row > label.col-form-label[for="field-optin"] { display: none; }

/* pole jako pilulka (vzor: hledání v hlavičce) */
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-control:not(textarea):not(select),
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main select.form-control {
  box-sizing: border-box;
  width: 100%;
  height: 50px;
  padding: 0 20px;
  /* !important: custom.css má `.page-content .form-control { border/radius/background !important }` */
  background: var(--ksu-paper) !important;
  border: 1.5px solid var(--ksu-line-strong) !important;
  border-radius: 100px !important;
  font-size: 15px;
  font-weight: 500;
  line-height: 47px;
  color: var(--ksu-ink);
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
  -webkit-transition: border-color .12s ease, background .12s ease;
  transition: border-color .12s ease, background .12s ease;
}
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-control::-webkit-input-placeholder { color: var(--ksu-faint); }
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-control::placeholder { color: var(--ksu-faint); opacity: 1; }
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-control:focus {
  outline: none;
  border-color: var(--ksu-coral) !important;
  background-color: var(--ksu-surface) !important;
  box-shadow: none;
}
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-control:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px var(--ksu-surface) inset;
  box-shadow: 0 0 0 1000px var(--ksu-surface) inset;
  -webkit-text-fill-color: var(--ksu-ink);
}
/* select: vlastní šipka v barvě muted */
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main select.form-control {
  padding-right: 44px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1.5 1.8 6 6.2l4.5-4.4' fill='none' stroke='%239C9483' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 18px center !important;
  background-size: 12px 8px !important;
}
:is(body#authentication, body#password, body#identity, body#address, body#order-detail)
    #content-wrapper #main textarea.form-control {
  box-sizing: border-box;
  width: 100%;
  min-height: 110px;
  padding: 13px 18px;
  background: var(--ksu-paper) !important;
  border: 1.5px solid var(--ksu-line-strong) !important;
  border-radius: var(--ksu-r) !important;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--ksu-ink);
  -webkit-appearance: none;
  appearance: none;
}
:is(body#authentication, body#password, body#identity, body#address, body#order-detail)
    #content-wrapper #main textarea.form-control:focus {
  outline: none;
  border-color: var(--ksu-coral) !important;
  background: var(--ksu-surface) !important;
  box-shadow: none;
}

/* heslo s tlačítkem oka: pilulka, oko jako kolečko UVNITŘ pole
   (stejná mechanika jako korálová lupa v hledání) */
:is(body#authentication, body#password, body#identity)
    #content-wrapper #main .input-group.js-parent-focus {
  position: relative;
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap;
}
:is(body#authentication, body#password, body#identity)
    #content-wrapper #main .input-group .form-control {
  -webkit-box-flex: 1; -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto;
  min-width: 0;
  border: 1.5px solid var(--ksu-line-strong) !important;
  border-radius: 100px !important;
  padding-right: 58px;
}
:is(body#authentication, body#password, body#identity)
    #content-wrapper #main .input-group .form-control:focus { border-color: var(--ksu-coral) !important; }
:is(body#authentication, body#password, body#identity)
    #content-wrapper #main .input-group-append {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  padding-right: 6px;
}
:is(body#authentication, body#password, body#identity)
    #content-wrapper #main .input-group-append .btn {
  box-sizing: border-box;
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
  width: 38px;
  height: 38px;
  min-width: 38px;
  margin: 0;
  padding: 0;
  background: var(--ksu-cream);
  border: 0;
  border-radius: 50%;
  color: var(--ksu-ink);
  box-shadow: none;
  cursor: pointer;
  -webkit-transition: background .12s ease, color .12s ease;
  transition: background .12s ease, color .12s ease;
}
:is(body#authentication, body#password, body#identity)
    #content-wrapper #main .input-group-append .btn:hover {
  background: var(--ksu-coral);
  color: #fff;
}

/* checkbox: 20px, zaoblení 6px, checked korál s bílou fajfkou
   (vzor: filtr kategorie); fajfku nese <i class="fa fa-check"> z tématu */
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main span.custom-checkbox {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start;
  gap: 10px;
  margin: 0;
  padding: 0;
}
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-checkbox input[type="checkbox"] + span {
  box-sizing: border-box;
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
  -webkit-box-flex: 0; -webkit-flex: 0 0 auto; -ms-flex: 0 0 auto; flex: 0 0 auto;
  /* !important: custom.css má `.custom-checkbox input + span { min-width/min-height/border-radius !important }` */
  width: 20px;
  height: 20px;
  min-width: 20px !important;
  min-height: 20px !important;
  margin: 2px 0 0;
  padding: 0;
  outline: none;
  border: 1.5px solid var(--ksu-line-strong);
  border-radius: 6px !important;
  background: var(--ksu-surface);
  line-height: 1;
  -webkit-transition: border-color .12s ease, background .12s ease;
  transition: border-color .12s ease, background .12s ease;
}
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-checkbox:hover input[type="checkbox"] + span { border-color: var(--ksu-coral); }
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-checkbox input[type="checkbox"]:checked + span {
  border-color: var(--ksu-coral);
  background: var(--ksu-coral);
}
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-checkbox input[type="checkbox"] + span i.checkbox-checked {
  display: none;
  position: static;
  top: auto;
  left: auto;
  font-size: 11px;
  line-height: 1;
  color: #fff;
}
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-checkbox input[type="checkbox"]:checked + span i.checkbox-checked { display: block; }
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-checkbox label {
  margin: 0;
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--ksu-text);
  cursor: pointer;
  text-align: left;
}
/* GDPR / newsletter drobný text čitelně muted */
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-checkbox label em {
  display: block;
  margin-top: 3px;
  font-size: 12.5px;
  font-style: normal;
  line-height: 1.5;
  color: var(--ksu-muted);
}
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-checkbox label a {
  color: var(--ksu-coral-deep);
  text-decoration: underline;
}
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-checkbox label a:hover { color: var(--ksu-coral); }

/* radio (oslovení): kroužek 20px; barvu checked stavu kreslí legacy
   pravidla custom.css z přemapované --ks-akcent (korál) */
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main span.custom-radio {
  box-sizing: border-box;
  position: relative;
  display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex;
  -webkit-box-flex: 0; -webkit-flex: 0 0 20px; -ms-flex: 0 0 20px; flex: 0 0 20px;
  width: 20px;
  height: 20px;
  margin: 0;
  padding: 0;
  /* !important: custom.css má `.custom-radio { border/background !important }` */
  border: 1.5px solid var(--ksu-line-strong) !important;
  border-radius: 50% !important;
  background: var(--ksu-surface) !important;
  box-shadow: none;
}
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-radio input[type="radio"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-radio input[type="radio"] + span { display: none; }
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .custom-radio input[type="radio"]:checked + span {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 10px;
  height: 10px;
  margin: auto;
  border: 0;
  border-radius: 50%;
  /* !important: custom.css má checked puntík `background-color:#f67e7d !important` */
  background: var(--ksu-coral) !important;
}
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main .form-control-valign {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  gap: 8px 24px;
  min-height: 40px;
}
:is(body#authentication, body#identity, body#address)
    #content-wrapper #main label.radio-inline {
  display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  font-size: 14.5px;
  font-weight: 500;
  color: var(--ksu-text);
  cursor: pointer;
}

/* chyby polí a help-block */
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-group.has-error .form-control {
  border-color: var(--ksu-coral-deep);
  background-color: #FDF0EF;
}
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-group .help-block { margin: 6px 0 0; }
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-group .help-block ul { margin: 0; padding: 0; list-style: none; }
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main .form-group .help-block li.alert {
  margin: 0;
  padding: 0;
  background: none;
  border: 0;
  border-radius: 0;
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1.45;
  color: var(--ksu-coral-deep);
}

/* ============================================================
   3. TLAČÍTKA: primární žlutá pilulka, sekundární outline pilulka
   ============================================================ */
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper #main .btn.btn-primary,
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper #main button.form-control-submit {
  display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
  box-sizing: border-box;
  width: auto;
  height: 52px;
  min-height: 52px;
  margin: 0;
  padding: 0 34px;
  background: var(--ksu-yellow-btn);
  border: 0;
  border-radius: 100px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ksu-yellow-ink);
  box-shadow: var(--ksu-shadow-sm);
  cursor: pointer;
  white-space: nowrap;
  -webkit-transition: background .12s ease, box-shadow .12s ease, -webkit-transform .12s ease;
  transition: background .12s ease, box-shadow .12s ease, transform .12s ease;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper #main .btn.btn-primary:hover,
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper #main button.form-control-submit:hover {
  background: var(--ksu-yellow-deep);
  color: var(--ksu-yellow-ink);
  box-shadow: var(--ksu-shadow);
  -webkit-transform: translateY(-1px);
  transform: translateY(-1px);
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper #main .btn.btn-primary:active,
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper #main button.form-control-submit:active {
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper #main .btn.btn-primary:focus-visible,
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper #main button.form-control-submit:focus-visible {
  outline: 2px solid var(--ksu-ink);
  outline-offset: 2px;
}
/* patka formuláře */
:is(body#authentication, body#password, body#identity, body#address)
    #content-wrapper #main footer.form-footer {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  margin: 6px 0 0;
  padding: 0;
  text-align: left;
}
/* na úzkých kartách (login/registrace/heslo) přes celou šířku */
:is(body#authentication, body#password) #content-wrapper #main footer.form-footer .btn.btn-primary,
:is(body#authentication, body#password) #content-wrapper #main button.form-control-submit { width: 100%; }

/* sekundární outline pilulka (odkaz-tlačítko) */
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main .ks-btn-outline {
  display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
  gap: 8px;
  box-sizing: border-box;
  height: 46px;
  padding: 0 24px;
  background: var(--ksu-surface);
  border: 1.5px solid var(--ksu-line-strong);
  border-radius: 100px;
  font-size: 14.5px;
  font-weight: 700;
  color: var(--ksu-ink);
  text-decoration: none;
  white-space: nowrap;
  -webkit-transition: border-color .12s ease, color .12s ease, background .12s ease;
  transition: border-color .12s ease, color .12s ease, background .12s ease;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main .ks-btn-outline:hover {
  border-color: var(--ksu-coral);
  color: var(--ksu-coral-deep);
  background: var(--ksu-surface);
}

/* newsletter v patičce: legacy custom.css 15.5 dává na body#authentication/
   #password KAŽDÉMU .btn.btn-primary width:100%, height:48, font 18 uppercase
   (bez scope na #main), takže tlačítko Přihlásit v patičce přetékalo (h-scroll
   na 390). Vrátit mu rozměry z chrome.css. */
:is(body#authentication, body#password) #footer-container-first .btn-subscribe {
  width: auto;
  height: auto;
  min-height: 52px;
  padding: 0 26px;
  font-size: 14.5px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: none;
  border-radius: 100px;
}

/* ============================================================
   4. PŘIHLÁŠENÍ (login-form karta uprostřed, odkazy)
   ============================================================ */
body#authentication #content-wrapper #main { max-width: 760px; margin: 0 auto; }
body#password #content-wrapper #main { max-width: 560px; margin: 0 auto; }

body#authentication #content-wrapper #main section.login-form {
  box-sizing: border-box;
  max-width: 520px;
  margin: 0 auto;
  padding: 28px 28px 26px;
  background: var(--ksu-surface);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r);
  box-shadow: var(--ksu-shadow-sm);
}
body#authentication #content-wrapper #main section.login-form form > section { margin: 0 0 4px; }
/* zapomenuté heslo: drobný odkaz vpravo pod polem hesla */
body#authentication #content-wrapper #main .forgot-password {
  margin: 2px 0 0;
  text-align: right;
}
body#authentication #content-wrapper #main .forgot-password a {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--ksu-coral-deep);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  -webkit-transition: color .12s ease, border-color .12s ease;
  transition: color .12s ease, border-color .12s ease;
}
body#authentication #content-wrapper #main .forgot-password a:hover {
  color: var(--ksu-coral);
  border-bottom-color: var(--ksu-coral);
}
/* oddělovací hr mezi kartou a blokem registrace pryč */
body#authentication #content-wrapper #main #content > hr,
body#password #content-wrapper #main #content > hr { display: none; }
/* nemáte účet: řádek pod kartou, odkaz jako outline pilulka */
body#authentication #content-wrapper #main .no-account {
  max-width: 520px;
  margin: 18px auto 0;
  text-align: center;
}
body#authentication #content-wrapper #main .no-account a {
  display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
  gap: 8px;
  box-sizing: border-box;
  height: 46px;
  padding: 0 24px;
  background: var(--ksu-surface);
  border: 1.5px solid var(--ksu-line-strong);
  border-radius: 100px;
  font-size: 14.5px;
  font-weight: 700;
  color: var(--ksu-ink);
  text-decoration: none;
  -webkit-transition: border-color .12s ease, color .12s ease;
  transition: border-color .12s ease, color .12s ease;
}
body#authentication #content-wrapper #main .no-account a:hover {
  border-color: var(--ksu-coral);
  color: var(--ksu-coral-deep);
}
body#authentication #content-wrapper #main .no-account a .fa { font-size: 13px; }

/* ============================================================
   5. REGISTRACE (register-form karta, GDPR texty muted)
   ============================================================ */
body#authentication #content-wrapper #main section.register-form {
  box-sizing: border-box;
  max-width: 640px;
  margin: 0 auto;
  padding: 28px 28px 26px;
  background: var(--ksu-surface);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r);
  box-shadow: var(--ksu-shadow-sm);
}
/* „Máte již účet? Přihlásit se" */
body#authentication #content-wrapper #main section.register-form > p {
  margin: 0 0 20px;
  padding: 0 0 16px;
  border-bottom: 1px solid var(--ksu-line);
  font-size: 14px;
  font-weight: 500;
  color: var(--ksu-muted);
}
body#authentication #content-wrapper #main section.register-form > p .fa { color: var(--ksu-faint); margin-right: 4px; }
body#authentication #content-wrapper #main section.register-form > p a {
  color: var(--ksu-coral-deep);
  font-weight: 700;
  text-decoration: none;
}
body#authentication #content-wrapper #main section.register-form > p a:hover { color: var(--ksu-coral); }
body#authentication #content-wrapper #main section.register-form > p a u { text-decoration: none; }
/* tlačítko Vytvořit účet přes celou šířku karty */
body#authentication #content-wrapper #main section.register-form footer.form-footer .btn.btn-primary { width: 100%; }

/* ============================================================
   6. OBNOVA HESLA (karta, formulář pod sebe)
   ============================================================ */
body#password #content-wrapper #main #content {
  box-sizing: border-box;
  padding: 28px 28px 26px;
  background: var(--ksu-surface);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r);
  box-shadow: var(--ksu-shadow-sm);
}
body#password #content-wrapper #main .send-renew-password-link {
  margin: 0 0 18px;
  font-size: 14.5px;
  font-weight: 500;
  line-height: 1.55;
  color: var(--ksu-muted);
}
body#password #content-wrapper #main .ps-alert-error:empty { display: none; }
/* form-inline z bootstrapu pod sebe */
body#password #content-wrapper #main form.form-inline {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-orient: vertical; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column;
  -webkit-box-align: stretch; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch;
  gap: 0;
}
body#password #content-wrapper #main form.form-inline > label {
  margin: 0 0 7px;
  padding: 0;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--ksu-ink);
  -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start;
}
body#password #content-wrapper #main form.form-inline > .form-control {
  width: 100%;
  /* !important: bootstrap utility mr-sm-3 má margin-right:1rem!important,
     jinak je input o 16 px užší než tlačítko pod ním */
  margin: 0 0 16px !important;
}
body#password #content-wrapper #main form.form-inline > button { width: 100%; }
/* zpět na přihlášení: outline pilulka pod kartou */
body#password #content-wrapper #main a#back-to-login {
  display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  gap: 8px;
  margin-top: 18px;
  font-size: 14px;
  font-weight: 700;
  color: var(--ksu-ink);
  text-decoration: none;
  -webkit-transition: color .12s ease;
  transition: color .12s ease;
}
body#password #content-wrapper #main a#back-to-login:hover { color: var(--ksu-coral-deep); }
body#password #content-wrapper #main a#back-to-login .fa { color: var(--ksu-coral-deep); }

/* ============================================================
   7. MŮJ ÚČET: dlaždice (jako homepage .ks-tile, hover lift)
   ============================================================ */
/* boční navigace na rozcestníku nemá smysl, cíle nesou dlaždice */
body#my-account #content-wrapper .my-account-side-links { display: none; }
body#my-account #content-wrapper .my-account-page-content {
  -webkit-box-flex: 0; -webkit-flex: 0 0 100%; -ms-flex: 0 0 100%; flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
}
body#my-account #content-wrapper .ks-acc-grid {
  display: -ms-grid; display: grid;
  -ms-grid-columns: 1fr 16px 1fr 16px 1fr;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  list-style: none;
  margin: 0;
  padding: 0;
}
/* dlaždice: vlastní <a.ks-acc-tile> i markup modulů z hooku
   (iqitwishlist <a id=iqitwishlist>, ps_emailalerts <li><a>) */
body#my-account #content-wrapper .ks-acc-grid > a,
body#my-account #content-wrapper .ks-acc-grid > li > a {
  box-sizing: border-box;
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  gap: 14px;
  -webkit-box-flex: 0; -webkit-flex: none; -ms-flex: none; flex: none;
  width: auto;
  max-width: none;
  height: 100%;
  margin: 0;
  padding: 18px 20px;
  background: var(--ksu-surface);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r);
  box-shadow: var(--ksu-shadow-sm);
  text-decoration: none;
  color: var(--ksu-ink);
  -webkit-transition: .15s ease;
  transition: .15s ease;
}
body#my-account #content-wrapper .ks-acc-grid > li { margin: 0; padding: 0; list-style: none; }
body#my-account #content-wrapper .ks-acc-grid > li > a { height: 100%; }
body#my-account #content-wrapper .ks-acc-grid > a:hover,
body#my-account #content-wrapper .ks-acc-grid > li > a:hover {
  -webkit-transform: translateY(-4px);
  transform: translateY(-4px);
  box-shadow: var(--ksu-shadow-lift);
  border-color: var(--ksu-line-strong);
  color: var(--ksu-ink);
}
body#my-account #content-wrapper .ks-acc-grid > a:focus-visible,
body#my-account #content-wrapper .ks-acc-grid > li > a:focus-visible {
  outline: 2px solid var(--ksu-ink);
  outline-offset: 2px;
}
/* kolečko s ikonou (cream, ikona coral-deep) */
body#my-account #content-wrapper .ks-acc-grid .ks-acc-ico,
body#my-account #content-wrapper .ks-acc-grid > a > .link-item > i.fa {
  box-sizing: border-box;
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
  -webkit-box-flex: 0; -webkit-flex: 0 0 46px; -ms-flex: 0 0 46px; flex: 0 0 46px;
  width: 46px;
  height: 46px;
  background: var(--ksu-cream);
  border-radius: 50%;
  font-size: 18px;
  color: var(--ksu-coral-deep);
  -webkit-transition: background .15s ease, color .15s ease;
  transition: background .15s ease, color .15s ease;
}
body#my-account #content-wrapper .ks-acc-grid > a:hover .ks-acc-ico,
body#my-account #content-wrapper .ks-acc-grid > a:hover > .link-item > i.fa {
  background: var(--ksu-coral);
  color: #fff;
}
body#my-account #content-wrapper .ks-acc-grid .ks-acc-txt { display: block; min-width: 0; }
body#my-account #content-wrapper .ks-acc-grid .ks-acc-t {
  display: block;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
  color: var(--ksu-ink);
}
body#my-account #content-wrapper .ks-acc-grid .ks-acc-d {
  display: block;
  margin-top: 2px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--ksu-muted);
}
/* dlaždice modulů: <span class="link-item"> ikona + holý text */
body#my-account #content-wrapper .ks-acc-grid > a > .link-item {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  gap: 14px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
  color: var(--ksu-ink);
}
/* ps_emailalerts: <li><a> bez ikony — zvoneček přes FA ::before */
body#my-account #content-wrapper .ks-acc-grid > li > a::before {
  content: "\f0f3";
  font-family: FontAwesome;
  box-sizing: border-box;
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
  -webkit-box-flex: 0; -webkit-flex: 0 0 46px; -ms-flex: 0 0 46px; flex: 0 0 46px;
  width: 46px;
  height: 46px;
  background: var(--ksu-cream);
  border-radius: 50%;
  font-size: 18px;
  color: var(--ksu-coral-deep);
  -webkit-transition: background .15s ease, color .15s ease;
  transition: background .15s ease, color .15s ease;
}
body#my-account #content-wrapper .ks-acc-grid > li > a {
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
}
body#my-account #content-wrapper .ks-acc-grid > li > a:hover::before {
  background: var(--ksu-coral);
  color: #fff;
}
/* odhlášení: tichá dlaždice */
body#my-account #content-wrapper .ks-acc-grid > a.ks-acc-tile-logout .ks-acc-t { color: var(--ksu-muted); }
body#my-account #content-wrapper .ks-acc-grid > a.ks-acc-tile-logout .ks-acc-ico {
  background: var(--ksu-paper);
  border: 1px solid var(--ksu-line);
  color: var(--ksu-muted);
}
body#my-account #content-wrapper .ks-acc-grid > a.ks-acc-tile-logout:hover .ks-acc-ico {
  background: var(--ksu-coral-soft);
  border-color: transparent;
  color: var(--ksu-coral-deep);
}
body#my-account #content-wrapper .ks-acc-grid > a.ks-acc-tile-logout:hover .ks-acc-t { color: var(--ksu-ink); }

/* ============================================================
   8. BOČNÍ NAVIGACE PODSTRÁNEK (karta jako rail kategorie)
   ============================================================ */
:is(body#history, body#order-detail, body#addresses, body#address,
    body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper .my-account-side-links {
  box-sizing: border-box;
  padding: 10px;
  background: var(--ksu-surface);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r);
  box-shadow: var(--ksu-shadow-sm);
  -webkit-align-self: flex-start; -ms-flex-item-align: start; align-self: flex-start;
}
:is(body#history, body#order-detail, body#addresses, body#address,
    body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper .my-account-side-links > a,
:is(body#history, body#order-detail, body#addresses, body#address,
    body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper .my-account-side-links li > a {
  box-sizing: border-box;
  display: block;
  -webkit-box-flex: 0; -webkit-flex: none; -ms-flex: none; flex: none;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  border-radius: var(--ksu-r-s);
  text-decoration: none;
  -webkit-transition: background .12s ease;
  transition: background .12s ease;
}
:is(body#history, body#order-detail, body#addresses, body#address,
    body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper .my-account-side-links li { margin: 0; padding: 0; list-style: none; }
:is(body#history, body#order-detail, body#addresses, body#address,
    body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper .my-account-side-links .link-item {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  gap: 10px;
  padding: 10px 12px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--ksu-text);
}
:is(body#history, body#order-detail, body#addresses, body#address,
    body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper .my-account-side-links .link-item i.fa {
  -webkit-box-flex: 0; -webkit-flex: 0 0 20px; -ms-flex: 0 0 20px; flex: 0 0 20px;
  width: 20px;
  font-size: 15px;
  text-align: center;
  color: var(--ksu-coral-deep);
}
:is(body#history, body#order-detail, body#addresses, body#address,
    body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper .my-account-side-links > a:hover,
:is(body#history, body#order-detail, body#addresses, body#address,
    body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper .my-account-side-links li > a:hover { background: var(--ksu-cream2); }
:is(body#history, body#order-detail, body#addresses, body#address,
    body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper .my-account-side-links > a:hover .link-item { color: var(--ksu-ink); }
/* ps_emailalerts <li><a> bez .link-item: stejný vzhled */
:is(body#history, body#order-detail, body#addresses, body#address,
    body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper .my-account-side-links li > a {
  padding: 10px 12px 10px 42px;
  position: relative;
  font-size: 14px;
  font-weight: 600;
  color: var(--ksu-text);
}
:is(body#history, body#order-detail, body#addresses, body#address,
    body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
    #content-wrapper .my-account-side-links li > a::before {
  content: "\f0f3";
  font-family: FontAwesome;
  position: absolute;
  left: 12px;
  top: 50%;
  width: 20px;
  margin-top: -0.5em;
  font-size: 15px;
  line-height: 1;
  text-align: center;
  color: var(--ksu-coral-deep);
}
/* aktivní položka podle stránky */
body#history #content-wrapper .my-account-side-links a#history-link,
body#order-detail #content-wrapper .my-account-side-links a#history-link,
body#addresses #content-wrapper .my-account-side-links a#addresses-link,
body#address #content-wrapper .my-account-side-links a#addresses-link,
body#address #content-wrapper .my-account-side-links a#address-link,
body#identity #content-wrapper .my-account-side-links a#identity-link,
body#discount #content-wrapper .my-account-side-links a#discounts-link,
body#order-slip #content-wrapper .my-account-side-links a#order-slips-link,
body#order-follow #content-wrapper .my-account-side-links a#returns-link { background: var(--ksu-cream); }
body#history #content-wrapper .my-account-side-links a#history-link .link-item,
body#order-detail #content-wrapper .my-account-side-links a#history-link .link-item,
body#addresses #content-wrapper .my-account-side-links a#addresses-link .link-item,
body#address #content-wrapper .my-account-side-links a#addresses-link .link-item,
body#address #content-wrapper .my-account-side-links a#address-link .link-item,
body#identity #content-wrapper .my-account-side-links a#identity-link .link-item,
body#discount #content-wrapper .my-account-side-links a#discounts-link .link-item,
body#order-slip #content-wrapper .my-account-side-links a#order-slips-link .link-item,
body#order-follow #content-wrapper .my-account-side-links a#returns-link .link-item {
  color: var(--ksu-ink);
  font-weight: 700;
}

/* obsahový sloupec: formuláře podstránek v bílé kartě */
:is(body#identity, body#address) #content-wrapper .my-account-page-content > form,
:is(body#identity, body#address) #content-wrapper .my-account-page-content .address-form > form {
  box-sizing: border-box;
  max-width: 640px;
  padding: 24px 26px 22px;
  background: var(--ksu-surface);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r);
  box-shadow: var(--ksu-shadow-sm);
}
:is(body#identity, body#address) #content-wrapper .my-account-page-content footer.form-footer .btn.btn-primary { width: auto; min-width: 220px; }

/* ============================================================
   9. HISTORIE OBJEDNÁVEK (tabulka, stavy jako pilulky, mobilní karty)
   ============================================================ */
/* tabulky účtu sdílejí vzhled: karta s overflow-x, čisté řádky */
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table {
  width: 100%;
  margin: 0 0 16px;
  background: var(--ksu-surface);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r);
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  font-size: 14px;
  color: var(--ksu-text);
}
/* .table-responsive z bootstrapu dělá display:block — tabulka pak drží jen
   intrinsic šířku a cream hlavička končí před hranou karty. Na desktopu se
   vejde, proto zpět display:table; scroll blok jen na 768-991, kde je
   sloupec obsahu užší než tabulka. */
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table.table-responsive { display: table; }
@media (min-width: 768px) and (max-width: 991.98px) {
  :is(body#history, body#order-detail, body#discount, body#order-slip,
      body#order-follow) #content-wrapper #main .table.table-responsive {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table thead th {
  padding: 12px 14px;
  background: var(--ksu-cream2);
  border: 0;
  border-bottom: 1.5px solid var(--ksu-line-strong);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--ksu-ink);
  text-align: left;
}
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table tbody th,
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table tbody td,
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table tfoot th,
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table tfoot td {
  padding: 13px 14px;
  border: 0;
  border-bottom: 1px solid var(--ksu-line);
  background: transparent;
  vertical-align: middle;
  text-align: left;
}
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table tfoot td { border-top: 1px solid var(--ksu-line); border-bottom: 0; }
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table tbody tr:last-child th,
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table tbody tr:last-child td { border-bottom: 0; }
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table tbody tr:hover th,
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table tbody tr:hover td { background: var(--ksu-cream2); }
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table tbody th[scope="row"] {
  font-weight: 700;
  color: var(--ksu-ink);
  white-space: nowrap;
}
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table a {
  color: var(--ksu-coral-deep);
  font-weight: 600;
  text-decoration: none;
}
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table a:hover {
  color: var(--ksu-coral);
  text-decoration: underline;
}
/* pruhování bootstrapu pryč, řádky odděluje linka */
:is(body#history, body#order-detail, body#discount, body#order-slip,
    body#order-follow) #content-wrapper #main .table.table-striped tbody tr:nth-of-type(odd) { background: transparent; }

/* stav objednávky: barevná pilulka (pozadí posílá PS inline podle stavu,
   contrast = dark/bright určuje barvu textu) */
:is(body#history, body#order-detail) #content-wrapper #main .label.label-pill {
  display: inline-block;
  padding: 4px 13px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .01em;
  white-space: nowrap;
  color: #fff;
}
:is(body#history, body#order-detail) #content-wrapper #main .label.label-pill.dark { color: var(--ksu-ink); }

/* akce v řádku: Detail / Objednat znovu vedle sebe místo hr */
body#history #content-wrapper #main .table td.order-actions { white-space: nowrap; }
body#history #content-wrapper #main .table td.order-actions hr { display: none; }
body#history #content-wrapper #main .table td.order-actions a { display: inline-block; }
/* mezi odkazy je skryté <hr>, proto ~ místo + */
body#history #content-wrapper #main .table td.order-actions a ~ a {
  margin-left: 12px;
  padding-left: 12px;
  border-left: 1px solid var(--ksu-line-strong);
}
body#history #content-wrapper #main .table .fa-file-pdf-o { font-size: 16px; }

/* mobilní karty objednávek (.orders, viditelné pod md) */
body#history #content-wrapper #main .orders {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-orient: vertical; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column;
  gap: 12px;
}
body#history #content-wrapper #main .orders .order {
  box-sizing: border-box;
  padding: 16px 18px;
  background: var(--ksu-surface);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r);
  box-shadow: var(--ksu-shadow-sm);
}
body#history #content-wrapper #main .orders .order h3 {
  margin: 0 0 2px;
  font-size: 16.5px;
  font-weight: 800;
  color: var(--ksu-ink);
}
body#history #content-wrapper #main .orders .order a { text-decoration: none; color: var(--ksu-ink); }
body#history #content-wrapper #main .orders .order .date { font-size: 13px; color: var(--ksu-muted); }
body#history #content-wrapper #main .orders .order .total {
  margin-top: 4px;
  font-size: 16px;
  font-weight: 800;
  color: var(--ksu-ink);
}
body#history #content-wrapper #main .orders .order .status { margin-top: 8px; }
body#history #content-wrapper #main .orders .order .invoice { margin-top: 8px; font-size: 13.5px; }
body#history #content-wrapper #main .orders .order .invoice a { color: var(--ksu-coral-deep); font-weight: 600; }

/* ============================================================
   10. DETAIL OBJEDNÁVKY (boxy jako karty)
   ============================================================ */
body#order-detail #content-wrapper #main .box {
  box-sizing: border-box;
  margin: 0 0 16px;
  padding: 18px 20px;
  background: var(--ksu-surface);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r);
  box-shadow: var(--ksu-shadow-sm);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
body#order-detail #content-wrapper #main .box .table { border: 0; box-shadow: none; margin: 0; }
body#order-detail #content-wrapper #main #order-infos strong { font-size: 15px; font-weight: 700; color: var(--ksu-ink); }
body#order-detail #content-wrapper #main #order-infos .btn.btn-primary {
  height: 44px;
  min-height: 44px;
  padding: 0 24px;
  font-size: 14.5px;
}
body#order-detail #content-wrapper #main #order-infos2 ul { margin: 0; padding: 0; list-style: none; }
body#order-detail #content-wrapper #main #order-infos2 li {
  padding: 6px 0;
  font-size: 14px;
  color: var(--ksu-text);
}
body#order-detail #content-wrapper #main #order-infos2 li + li { border-top: 1px solid var(--ksu-line); }
body#order-detail #content-wrapper #main #order-infos2 li strong {
  font-weight: 700;
  color: var(--ksu-ink);
  margin-right: 6px;
}
body#order-detail #content-wrapper #main #order-infos2 a { color: var(--ksu-coral-deep); font-weight: 600; text-decoration: none; }
body#order-detail #content-wrapper #main #order-infos2 a:hover { color: var(--ksu-coral); text-decoration: underline; }
/* adresy objednávky */
body#order-detail #content-wrapper #main .addresses.row { margin: 0 -8px; }
body#order-detail #content-wrapper #main .addresses.row > .col { padding: 0 8px; }
body#order-detail #content-wrapper #main .addresses .box h4 {
  margin: 0 0 8px;
  font-size: 15.5px;
  font-weight: 800;
  color: var(--ksu-ink);
}
body#order-detail #content-wrapper #main .addresses .box address {
  margin: 0;
  font-size: 14px;
  font-style: normal;
  line-height: 1.6;
  color: var(--ksu-text);
}
/* produkty v objednávce */
body#order-detail #content-wrapper #main #order-products img {
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r-s);
  background: #fff;
}
body#order-detail #content-wrapper #main #order-products td strong a { color: var(--ksu-ink); }
body#order-detail #content-wrapper #main #order-products tfoot td,
body#order-detail #content-wrapper #main #order-products tfoot th {
  font-weight: 700;
  color: var(--ksu-ink);
}
/* zprávy k objednávce */
body#order-detail #content-wrapper #main .order-message-form .form-fields { margin-top: 8px; }
body#order-detail #content-wrapper #main .messages .message {
  margin: 0 0 10px;
  padding: 12px 14px;
  background: var(--ksu-cream2);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r-s);
  font-size: 13.5px;
  color: var(--ksu-text);
}

/* ============================================================
   11. ADRESY (karty adres + přidat novou)
   ============================================================ */
body#addresses #content-wrapper #main article.address {
  box-sizing: border-box;
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-orient: vertical; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column;
  height: 100%;
  margin: 0 0 16px;
  padding: 18px 20px;
  background: var(--ksu-surface);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r);
  box-shadow: var(--ksu-shadow-sm);
}
body#addresses #content-wrapper #main article.address .address-body {
  -webkit-box-flex: 1; -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto;
  padding: 0;
}
body#addresses #content-wrapper #main article.address .address-body h4 {
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 800;
  color: var(--ksu-ink);
}
body#addresses #content-wrapper #main article.address .address-body address {
  margin: 0;
  min-height: 0;
  font-size: 14px;
  font-style: normal;
  line-height: 1.6;
  color: var(--ksu-text);
}
body#addresses #content-wrapper #main article.address .address-footer {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  gap: 18px;
  margin: 14px 0 0;
  padding: 12px 0 0;
  border-top: 1px solid var(--ksu-line);
  background: transparent;
}
body#addresses #content-wrapper #main article.address .address-footer a {
  display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  gap: 6px;
  margin: 0;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--ksu-ink);
  text-decoration: none;
  -webkit-transition: color .12s ease;
  transition: color .12s ease;
}
body#addresses #content-wrapper #main article.address .address-footer a:hover { color: var(--ksu-coral-deep); }
body#addresses #content-wrapper #main article.address .address-footer a .fa { color: var(--ksu-coral-deep); }
body#addresses #content-wrapper #main article.address .address-footer a[data-link-action="delete-address"] { margin-left: auto; color: var(--ksu-muted); }
body#addresses #content-wrapper #main article.address .address-footer a[data-link-action="delete-address"] .fa { color: var(--ksu-muted); }
body#addresses #content-wrapper #main article.address .address-footer a[data-link-action="delete-address"]:hover,
body#addresses #content-wrapper #main article.address .address-footer a[data-link-action="delete-address"]:hover .fa { color: var(--ksu-coral-deep); }
/* přidat novou adresu: outline pilulka */
body#addresses #content-wrapper #main .addresses-footer {
  /* legacy custom.css: .page-customer-account .addresses-footer { display:none } */
  display: block;
  margin: 4px 0 0;
  padding: 0;
  background: transparent;
  border: 0;
}
body#addresses #content-wrapper #main .addresses-footer a {
  display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex;
  -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
  gap: 8px;
  box-sizing: border-box;
  height: 46px;
  margin: 0;
  padding: 0 24px;
  background: var(--ksu-surface);
  border: 1.5px solid var(--ksu-line-strong);
  border-radius: 100px;
  font-size: 14.5px;
  font-weight: 700;
  color: var(--ksu-ink);
  text-decoration: none;
  -webkit-transition: border-color .12s ease, color .12s ease;
  transition: border-color .12s ease, color .12s ease;
}
body#addresses #content-wrapper #main .addresses-footer a:hover {
  border-color: var(--ksu-coral);
  color: var(--ksu-coral-deep);
}
body#addresses #content-wrapper #main .addresses-footer a .fa { color: var(--ksu-coral-deep); }

/* ============================================================
   12. SLEVOVÉ POUKAZY (kód jako čárkovaný štítek, mobilní karty)
   ============================================================ */
body#discount #content-wrapper #main .table tbody th[scope="row"] {
  font-family: inherit;
}
body#discount #content-wrapper #main .cart-rules {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-orient: vertical; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column;
  gap: 12px;
}
body#discount #content-wrapper #main .cart-rules .cart-rule {
  box-sizing: border-box;
  padding: 14px 16px;
  background: var(--ksu-surface);
  border: 1px solid var(--ksu-line);
  border-radius: var(--ksu-r);
  box-shadow: var(--ksu-shadow-sm);
}
body#discount #content-wrapper #main .cart-rules .cart-rule ul { margin: 0; padding: 0; list-style: none; }
body#discount #content-wrapper #main .cart-rules .cart-rule li {
  padding: 4px 0;
  font-size: 13.5px;
  color: var(--ksu-text);
}
body#discount #content-wrapper #main .cart-rules .cart-rule li strong {
  font-weight: 700;
  color: var(--ksu-ink);
  margin-right: 6px;
}

/* ============================================================
   13. HLÁŠKY (alerts) — v #main i #notifications
   ============================================================ */
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main .alert,
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #inner-wrapper #notifications .alert {
  box-sizing: border-box;
  margin: 0 0 16px;
  padding: 12px 16px;
  border: 1px solid;
  border-radius: var(--ksu-r-s);
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.5;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main .alert ul,
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #inner-wrapper #notifications .alert ul {
  margin: 0; padding: 0; list-style: none;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main .alert-danger,
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #inner-wrapper #notifications .alert-danger {
  background: #FDF0EF;
  border-color: #F5C6C0;
  color: #B84A3F;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main .alert-success,
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #inner-wrapper #notifications .alert-success {
  background: #EFF8EF;
  border-color: #BFE3C4;
  color: #2C7A38;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main .alert-warning,
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #inner-wrapper #notifications .alert-warning {
  background: var(--ksu-cream2);
  border-color: var(--ksu-line-strong);
  color: #7A5B00;
}
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main .alert-info,
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #inner-wrapper #notifications .alert-info {
  background: var(--ksu-paper);
  border-color: var(--ksu-line);
  color: var(--ksu-text);
}

/* ============================================================
   14. RESPONZIVITA + přístupnost
   ============================================================ */
@media (max-width: 991.98px) {
  body#my-account #content-wrapper .ks-acc-grid {
    -ms-grid-columns: 1fr 14px 1fr;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }
}

@media (max-width: 767.98px) {
  /* boční navigace nad obsah, přes celou šířku; bootstrap row má -15px
     okraje a col 15px padding, na plné šířce by nav přetékala o pár px */
  :is(body#history, body#order-detail, body#addresses, body#address,
      body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
      #content-wrapper .my-account-page-content-wrapper > .row {
    margin-left: 0;
    margin-right: 0;
  }
  /* obsahový sloupec bez bootstrap odsazení (řádek už nemá záporné okraje);
     karta navigace si drží vlastní padding 10px */
  :is(body#history, body#order-detail, body#addresses, body#address,
      body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
      #content-wrapper .my-account-page-content-wrapper > .row > .my-account-page-content {
    padding-left: 0;
    padding-right: 0;
  }
  :is(body#history, body#order-detail, body#addresses, body#address,
      body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
      #content-wrapper .my-account-side-links {
    -webkit-box-flex: 0; -webkit-flex: 0 0 100%; -ms-flex: 0 0 100%; flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin-bottom: 16px;
  }
  :is(body#history, body#order-detail, body#addresses, body#address,
      body#identity, body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"])
      #content-wrapper .my-account-page-content {
    -webkit-box-flex: 0; -webkit-flex: 0 0 100%; -ms-flex: 0 0 100%; flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
  }
  /* titulky menší */
  :is(body#authentication, body#password, body#my-account, body#history,
      body#order-detail, body#addresses, body#address, body#identity,
      body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper .page-title {
    font-size: 26px;
    margin: 6px 0 14px;
  }
  /* karty formulářů s menším paddingem */
  body#authentication #content-wrapper #main section.login-form,
  body#authentication #content-wrapper #main section.register-form,
  body#password #content-wrapper #main #content {
    padding: 20px 16px 18px;
  }
  :is(body#identity, body#address) #content-wrapper .my-account-page-content > form,
  :is(body#identity, body#address) #content-wrapper .my-account-page-content .address-form > form {
    padding: 20px 16px 18px;
    max-width: none;
  }
  /* iOS: pole ≥16 px, jinak zoomuje */
  :is(body#authentication, body#password, body#identity, body#address)
      #content-wrapper #main .form-control:not(textarea):not(select),
  :is(body#authentication, body#password, body#identity, body#address)
      #content-wrapper #main select.form-control,
  :is(body#authentication, body#password, body#identity, body#address, body#order-detail)
      #content-wrapper #main textarea.form-control {
    font-size: 16px;
  }
  /* tlačítka na celou šířku */
  :is(body#identity, body#address) #content-wrapper .my-account-page-content footer.form-footer .btn.btn-primary { width: 100%; }
  body#addresses #content-wrapper #main .addresses-footer a { width: 100%; }
  /* poznámka vpravo od popisku se na úzkém displeji zalomí pod popisek */
  :is(body#authentication, body#password, body#identity, body#address)
      #content-wrapper #main .form-group.row > .form-control-comment { margin-left: 0; }
}

@media (max-width: 575.98px) {
  body#my-account #content-wrapper .ks-acc-grid {
    -ms-grid-columns: 1fr;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }
  body#my-account #content-wrapper .ks-acc-grid > a,
  body#my-account #content-wrapper .ks-acc-grid > li > a { padding: 16px; }
}

/* focus viditelný na odkazech účtu */
:is(body#authentication, body#password, body#my-account, body#history,
    body#order-detail, body#addresses, body#address, body#identity,
    body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main a:focus-visible {
  outline: 2px solid var(--ksu-ink);
  outline-offset: 2px;
  border-radius: 4px;
}

@media (prefers-reduced-motion: reduce) {
  body#my-account #content-wrapper .ks-acc-grid > a,
  body#my-account #content-wrapper .ks-acc-grid > li > a,
  :is(body#authentication, body#password, body#my-account, body#history,
      body#order-detail, body#addresses, body#address, body#identity,
      body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main .btn.btn-primary,
  :is(body#authentication, body#password, body#my-account, body#history,
      body#order-detail, body#addresses, body#address, body#identity,
      body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main button.form-control-submit {
    -webkit-transition: none !important;
    transition: none !important;
  }
  body#my-account #content-wrapper .ks-acc-grid > a:hover,
  body#my-account #content-wrapper .ks-acc-grid > li > a:hover,
  :is(body#authentication, body#password, body#my-account, body#history,
      body#order-detail, body#addresses, body#address, body#identity,
      body#discount, body#order-slip, body#order-follow, body[id^="module-iqitwishlist"]) #content-wrapper #main .btn.btn-primary:hover {
    -webkit-transform: none !important;
    transform: none !important;
  }
}
