:root {
  color-scheme: dark;
  --font: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --sidebar-width: 260px;
  --topbar-height: 78px;
  --radius-sm: 10px;
  --radius-md: 15px;
  --radius-lg: 20px;
  --radius-xl: 26px;
  --bg: #050a12;
  --bg-soft: #08101d;
  --panel: rgba(11, 23, 42, 0.92);
  --panel-solid: #0b172a;
  --panel-alt: #0f1d33;
  --sidebar: #07111f;
  --topbar: rgba(6, 14, 26, 0.9);
  --input: #0a1729;
  --text: #f4f7fb;
  --text-2: #bac6d8;
  --muted: #8998ae;
  --border: rgba(146, 170, 202, 0.15);
  --border-strong: rgba(146, 170, 202, 0.28);
  --accent: #2c7fff;
  --accent-strong: #1169ec;
  --accent-soft: rgba(44, 127, 255, 0.14);
  --accent-glow: rgba(44, 127, 255, 0.28);
  --accent-2: #55c7ff;
  --success: #37c990;
  --warning: #f7bb4b;
  --danger: #ff6c76;
  --shadow: 0 18px 44px rgba(0, 0, 0, 0.24);
  --shadow-button: 0 8px 20px rgba(20, 97, 222, 0.24);
  --logo-image: url("./assets/img/logo-standard.webp");
}


html[data-theme="kline"][data-plan="lite"] {
  --accent: #42a4ff;
  --accent-strong: #268eea;
  --accent-soft: rgba(66, 164, 255, 0.13);
  --accent-glow: rgba(66, 164, 255, 0.2);
  --accent-2: #9dd9ff;
  --logo-image: url("./assets/img/logo-lite.webp");
}

html[data-theme="kline"][data-plan="gold"] {
  --accent: #d8a845;
  --accent-strong: #b98421;
  --accent-soft: rgba(216, 168, 69, 0.14);
  --accent-glow: rgba(216, 168, 69, 0.26);
  --accent-2: #f7d883;
  --border-strong: rgba(224, 187, 104, 0.28);
  --shadow-button: 0 8px 20px rgba(181, 127, 28, 0.24);
  --logo-image: url("./assets/img/logo-gold.webp");
}

html[data-theme="white"] {
  color-scheme: light;
  --bg: #edf2f8;
  --bg-soft: #f5f7fb;
  --panel: rgba(255, 255, 255, 0.95);
  --panel-solid: #ffffff;
  --panel-alt: #f3f6fa;
  --sidebar: #ffffff;
  --topbar: rgba(255, 255, 255, 0.92);
  --input: #f3f6fa;
  --text: #132238;
  --text-2: #46566d;
  --muted: #68798f;
  --border: rgba(43, 65, 94, 0.12);
  --border-strong: rgba(43, 65, 94, 0.22);
  --accent: #156ff0;
  --accent-strong: #0b5dce;
  --accent-soft: rgba(21, 111, 240, 0.1);
  --accent-glow: rgba(21, 111, 240, 0.17);
  --accent-2: #2aa7d8;
  --shadow: 0 16px 42px rgba(25, 48, 78, 0.1);
  --shadow-button: 0 9px 20px rgba(21, 111, 240, 0.2);
}

html[data-theme="dark"] {
  color-scheme: dark;
  --bg: #080a0d;
  --bg-soft: #0e1116;
  --panel: rgba(20, 23, 29, 0.95);
  --panel-solid: #14171d;
  --panel-alt: #191d24;
  --sidebar: #0d1015;
  --topbar: rgba(12, 15, 20, 0.92);
  --input: #181c23;
  --text: #f5f6f8;
  --text-2: #c1c6cf;
  --muted: #a0a7b2;
  --border: rgba(202, 211, 224, 0.11);
  --border-strong: rgba(202, 211, 224, 0.2);
  --accent: #4d8ee9;
  --accent-strong: #3475cf;
  --accent-soft: rgba(77, 142, 233, 0.12);
  --accent-glow: rgba(77, 142, 233, 0.17);
  --accent-2: #6ab0c9;
  --shadow: 0 18px 44px rgba(0, 0, 0, 0.28);
}

html[data-theme="ultra"] {
  color-scheme: dark;
  --bg: #04101c;
  --bg-soft: #07182a;
  --panel: rgba(8, 23, 42, 0.84);
  --panel-solid: #061427;
  --panel-alt: rgba(12, 30, 54, 0.92);
  --sidebar: #05101d;
  --topbar: rgba(4, 14, 28, 0.88);
  --input: rgba(7, 21, 39, 0.94);
  --text: #f4fbff;
  --text-2: #c8d8ec;
  --muted: #91a6c2;
  --border: rgba(98, 145, 218, 0.18);
  --border-strong: rgba(120, 196, 255, 0.36);
  --accent: #2f86ff;
  --accent-strong: #1f5cf1;
  --accent-soft: rgba(47, 134, 255, 0.16);
  --accent-glow: rgba(47, 134, 255, 0.34);
  --accent-2: #57f0d3;
  --success: #49e0a4;
  --warning: #ffd05e;
  --danger: #ff6d88;
  --shadow: 0 24px 58px rgba(1, 8, 18, 0.42);
  --shadow-button: 0 14px 36px rgba(35, 94, 229, 0.34);
  --logo-image: url("./assets/img/logo-standard.webp");
  --ultra-cyan: #68d7ff;
  --ultra-teal: #57f0d3;
  --ultra-ice: rgba(241, 250, 255, 0.94);
  --ultra-overlay: rgba(5, 12, 24, 0.82);
  --ultra-panel-glow: rgba(54, 122, 255, 0.22);
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }

html { scroll-behavior: smooth; }

/* Global readability pass: tiny secondary text is slightly larger and clearer. */
small { line-height: 1.45; }

body {
  margin: 0;
  min-width: 320px;
  min-height: 100vh;
  overflow-x: hidden;
  background:
    radial-gradient(circle at 75% 0%, var(--accent-soft), transparent 26rem),
    var(--bg);
  color: var(--text);
  font-family: var(--font);
  font-size: 15px;
  -webkit-font-smoothing: antialiased;
  transition: background-color 180ms ease, color 180ms ease;
}

button, input, select, textarea { font: inherit; }
button { color: inherit; }
a { color: var(--accent); }
svg { width: 1.2em; height: 1.2em; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

/* Čitelné systémové nabídky ve všech formulářích a motivech. */
select {
  color-scheme: dark;
}

select option,
select optgroup {
  background-color: #0b172a;
  color: #f4f7fb;
}

select option:checked {
  background: #176fdc;
  color: #ffffff;
}

html[data-theme="dark"] select option,
html[data-theme="dark"] select optgroup {
  background-color: #181c23;
  color: #f5f6f8;
}

html[data-theme="ultra"] select option,
html[data-theme="ultra"] select optgroup {
  background-color: #061427;
  color: #f4fbff;
}

html[data-theme="ultra"] select option:checked {
  background: #1f5cf1;
  color: #ffffff;
}

html[data-theme="white"] select {
  color-scheme: light;
}

html[data-theme="white"] select option,
html[data-theme="white"] select optgroup {
  background-color: #ffffff;
  color: #132238;
}

html[data-theme="white"] select option:checked {
  background: #156ff0;
  color: #ffffff;
}

.svg-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 300; top: 8px; left: 8px; transform: translateY(-150%); background: var(--panel-solid); color: var(--text); padding: 10px 16px; border-radius: 10px; border: 1px solid var(--border); }
.skip-link:focus { transform: translateY(0); }

.app-shell { display: grid; grid-template-columns: var(--sidebar-width) 1fr; min-height: 100vh; }

.sidebar {
  position: fixed;
  z-index: 50;
  inset: 0 auto 0 0;
  width: var(--sidebar-width);
  display: flex;
  flex-direction: column;
  padding: 20px 14px 16px;
  background: var(--sidebar);
  border-right: 1px solid var(--border);
  box-shadow: 16px 0 40px rgba(0, 0, 0, 0.08);
  transition: transform 200ms ease, background-color 180ms ease;
}

.brand { display: grid; grid-template-columns: 42px minmax(0,1fr) auto auto; align-items: start; gap: 11px; min-height: 52px; padding: 2px 8px 15px; }
.brand-stack { display: contents; }
.brand-mark { position: relative; display: grid; place-items: center; width: 42px; height: 42px; flex: 0 0 auto; border: 1px solid color-mix(in srgb, var(--accent) 60%, white 18%); border-radius: 14px; background: linear-gradient(145deg, var(--accent), #102750); color: #fff; font-weight: 900; font-style: italic; font-size: 22px; box-shadow: 0 0 24px var(--accent-glow), inset 0 0 0 1px rgba(255,255,255,.16); }
.brand-mark::after { content: ""; position: absolute; width: 15px; height: 2px; right: -7px; background: #fff; box-shadow: 0 0 8px var(--accent-2); }
.brand-copy { grid-column: 2; min-width: 0; display: grid; gap: 2px; }
.brand-copy strong { font-size: 17px; letter-spacing: .02em; }
.brand-copy span { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .1em; }
.brand-radio { grid-column: 3; display: grid; justify-items: center; align-content: start; gap: 6px; width: 52px; min-width: 52px; }
.brand-radio-play { position: relative; display: grid; place-items: center; width: 39px; height: 39px; padding: 0; border: 1px solid color-mix(in srgb,var(--accent) 54%,var(--border)); border-radius: 13px; outline: 0; background: color-mix(in srgb,var(--panel-solid) 90%,var(--accent) 10%); color: var(--accent-2); box-shadow: 0 8px 18px rgba(0,0,0,.22),0 0 0 1px color-mix(in srgb,var(--accent) 8%,transparent),0 0 16px color-mix(in srgb,var(--accent) 18%,transparent); cursor: pointer; transition: transform 160ms ease,border-color 160ms ease,box-shadow 160ms ease,background-color 160ms ease,color 160ms ease; }
.brand-radio-play svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.9; }
.brand-radio-play:hover { transform: translateY(-2px) scale(1.035); border-color: color-mix(in srgb,var(--accent) 78%,white 12%); color: #fff; background: color-mix(in srgb,var(--accent) 30%,var(--panel-solid)); box-shadow: 0 11px 24px rgba(0,0,0,.28),0 0 24px color-mix(in srgb,var(--accent) 42%,transparent); }
.brand-radio-play.is-playing { color: #fff; border-color: color-mix(in srgb,var(--success) 60%,var(--accent)); background: color-mix(in srgb,var(--success) 18%,var(--panel-solid)); box-shadow: 0 9px 22px rgba(0,0,0,.25),0 0 24px color-mix(in srgb,var(--success) 44%,transparent); }
.brand-radio-play.is-playing::after { content: ""; position: absolute; inset: -4px; border: 1px solid color-mix(in srgb,var(--success) 48%,transparent); border-radius: 16px; animation: brand-radio-pulse 1.8s ease-in-out infinite; pointer-events: none; }
@keyframes brand-radio-pulse { 0%,100% { opacity: .25; transform: scale(.96); } 50% { opacity: .8; transform: scale(1.06); } }
.brand-radio-volume { display: block; width: 50px; height: 9px; }
.brand-radio-volume input { --radio-volume: 55%; display: block; width: 50px; height: 9px; margin: 0; appearance: none; -webkit-appearance: none; background: transparent; cursor: pointer; }
.brand-radio-volume input::-webkit-slider-runnable-track { height: 4px; border-radius: 999px; background: linear-gradient(90deg,var(--accent) 0 var(--radio-volume),color-mix(in srgb,var(--border-strong) 72%,transparent) var(--radio-volume) 100%); box-shadow: inset 0 0 0 1px rgba(255,255,255,.03),0 0 8px color-mix(in srgb,var(--accent) 12%,transparent); }
.brand-radio-volume input::-webkit-slider-thumb { width: 10px; height: 10px; margin-top: -3px; appearance: none; -webkit-appearance: none; border: 2px solid var(--panel-solid); border-radius: 50%; background: var(--accent-2); box-shadow: 0 0 9px color-mix(in srgb,var(--accent) 55%,transparent); }
.brand-radio-volume input::-moz-range-track { height: 4px; border: 0; border-radius: 999px; background: color-mix(in srgb,var(--border-strong) 72%,transparent); }
.brand-radio-volume input::-moz-range-progress { height: 4px; border-radius: 999px; background: var(--accent); }
.brand-radio-volume input::-moz-range-thumb { width: 8px; height: 8px; border: 2px solid var(--panel-solid); border-radius: 50%; background: var(--accent-2); box-shadow: 0 0 9px color-mix(in srgb,var(--accent) 55%,transparent); }
.brand .live-clock { padding: 7px 9px; border-radius: 9px; }
.brand .live-clock strong { font-size: 14px; }.brand .live-clock small { font-size: 8.5px; }
.brand .live-clock { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 18px; width: 100%; }
.clock-copy { display: grid; min-width: 0; gap: 2px; }
.live-clock-open { position: relative; width: 100%; padding: 4px 6px; overflow: hidden; border: 1px solid transparent; border-radius: 8px; outline: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; transition: border-color 170ms ease, background 170ms ease, box-shadow 180ms ease, transform 170ms ease; }
.live-clock-open:hover, .live-clock-open:focus-visible { border-color: color-mix(in srgb,var(--accent) 23%,var(--border)); background: color-mix(in srgb,var(--accent-soft) 42%,transparent); box-shadow: 0 6px 18px rgba(0,0,0,.1),0 0 14px color-mix(in srgb,var(--accent-glow) 20%,transparent); transform: translateY(-1px); }
#live-clock-time { position: relative; display: inline-block; width: fit-content; overflow: hidden; border-radius: 5px; }
.live-clock-open.hourly-glow #live-clock-time { color: #f4fbff; text-shadow: 0 0 8px color-mix(in srgb,var(--accent-2) 56%,transparent),0 0 18px color-mix(in srgb,var(--accent) 32%,transparent); }
.live-clock-open.hourly-glow #live-clock-time::after { content: ""; position: absolute; top: -35%; bottom: -35%; left: -42%; width: 28%; background: linear-gradient(90deg,transparent,rgba(255,255,255,.92),transparent); filter: blur(1px); transform: skewX(-18deg); box-shadow: 0 0 14px rgba(125,203,255,.65); animation: live-clock-hourly-sweep 3.1s cubic-bezier(.2,.7,.2,1) 1; pointer-events: none; }
@keyframes live-clock-hourly-sweep { 0% { left:-42%; opacity:0; } 12% { opacity:.92; } 78% { opacity:.8; } 100% { left:122%; opacity:0; } }
.clock-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.live-weather { display: inline-flex; align-items: center; gap: 4px; min-width: 64px; padding: 5px 7px 5px 8px; border: 1px solid transparent; border-left-color: var(--border); border-radius: 8px; white-space: nowrap; cursor: pointer; transition: border-color 170ms ease, background 170ms ease, box-shadow 180ms ease, transform 170ms ease; }
.live-weather:hover { border-color: color-mix(in srgb,var(--accent) 25%,var(--border)); background: color-mix(in srgb,var(--accent-soft) 50%,transparent); box-shadow: 0 6px 18px rgba(0,0,0,.11),0 0 15px color-mix(in srgb,var(--accent-glow) 22%,transparent); transform: translateY(-1px); }
.live-weather span { font-size: 16px; line-height: 1; }
.brand .live-weather strong { color: var(--text); font-size: 10px; letter-spacing: 0; }
.sidebar-close { grid-column: 4; display: none; margin-left: auto; }

.nav-list { display: flex; flex: 1; min-height: 0; overflow-y: auto; flex-direction: column; gap: 4px; padding: 8px 2px 12px; scrollbar-width: thin; }
.nav-item { width: 100%; min-height: 44px; display: grid; grid-template-columns: 22px 1fr auto; align-items: center; gap: 11px; padding: 9px 11px; border: 1px solid transparent; border-radius: 12px; background: transparent; color: var(--text-2); text-align: left; cursor: pointer; transition: color 150ms ease, border-color 150ms ease, background-color 150ms ease, transform 150ms ease, box-shadow 150ms ease; }
.nav-item svg { font-size: 18px; }

/* K-Line · jemné barvy pouze pro 7 hlavních ikon levého panelu */
.nav-list > .nav-item:is([data-view="dashboard"],[data-view="loads"],[data-view="transports"],[data-view="vehicles"],[data-view="profiles"],[data-view="favorites"],[data-view="messages"]) svg {
  color: color-mix(in srgb, var(--kline-main-icon-tone) 72%, var(--text-2) 28%);
  filter: drop-shadow(0 1px 1px rgba(0,0,0,.22)) drop-shadow(0 0 4px var(--kline-main-icon-glow));
  transition: color 150ms ease, filter 150ms ease;
}
.nav-list > .nav-item[data-view="dashboard"] { --kline-main-icon-tone:#86a9cf; --kline-main-icon-glow:rgba(134,169,207,.28); }
.nav-list > .nav-item[data-view="loads"] { --kline-main-icon-tone:#c89f79; --kline-main-icon-glow:rgba(200,159,121,.26); }
.nav-list > .nav-item[data-view="transports"] { --kline-main-icon-tone:#7fb79c; --kline-main-icon-glow:rgba(127,183,156,.26); }
.nav-list > .nav-item[data-view="vehicles"] { --kline-main-icon-tone:#9899c5; --kline-main-icon-glow:rgba(152,153,197,.26); }
.nav-list > .nav-item[data-view="profiles"] { --kline-main-icon-tone:#b994ab; --kline-main-icon-glow:rgba(185,148,171,.25); }
.nav-list > .nav-item[data-view="favorites"] { --kline-main-icon-tone:#d0b85f; --kline-main-icon-glow:rgba(208,184,95,.32); }
.nav-list > .nav-item[data-view="messages"] { --kline-main-icon-tone:#72aeb8; --kline-main-icon-glow:rgba(114,174,184,.29); }
.nav-list > .nav-item.active:is([data-view="dashboard"],[data-view="loads"],[data-view="transports"],[data-view="vehicles"],[data-view="profiles"],[data-view="favorites"],[data-view="messages"]) svg {
  color: color-mix(in srgb, var(--kline-main-icon-tone) 76%, #fff 24%);
  filter: drop-shadow(0 1px 1px rgba(0,0,0,.24)) drop-shadow(0 0 5px var(--kline-main-icon-glow));
}
.nav-item:not(.active):hover { color: var(--text); background: var(--accent-soft); border-color: color-mix(in srgb, var(--accent) 34%, transparent); transform: translateX(2px) translateY(-1px); box-shadow: 0 8px 20px color-mix(in srgb, var(--accent-glow) 78%, transparent), inset 0 1px 0 rgba(255,255,255,.05); }
.nav-item.active { color: #fff; background: linear-gradient(100deg, var(--accent-strong), color-mix(in srgb, var(--accent) 72%, #132c54)); border-color: color-mix(in srgb, var(--accent) 70%, white 8%); box-shadow: 0 9px 22px var(--accent-glow), inset 0 1px 0 rgba(255,255,255,.15); }
html[data-theme="white"] .nav-item.active { color: #fff; }
.nav-count { min-width: 24px; padding: 2px 7px; border-radius: 99px; background: color-mix(in srgb, var(--panel-alt) 72%, transparent); color: var(--text-2); font-size: 11px; text-align: center; }
.active .nav-count { color: #fff; background: rgba(255,255,255,.18); }
.nav-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--success); box-shadow: 0 0 0 4px color-mix(in srgb, var(--success) 16%, transparent), 0 0 12px color-mix(in srgb, var(--success) 66%, transparent); animation: nav-unread-breathe 1.85s ease-in-out infinite; }
.nav-dot[hidden] { display: none !important; }
@keyframes nav-unread-breathe { 0%, 100% { opacity: .3; transform: scale(.82); box-shadow: 0 0 0 2px color-mix(in srgb, var(--success) 9%, transparent), 0 0 5px color-mix(in srgb, var(--success) 28%, transparent); } 48% { opacity: 1; transform: scale(1.08); box-shadow: 0 0 0 5px color-mix(in srgb, var(--success) 18%, transparent), 0 0 15px color-mix(in srgb, var(--success) 72%, transparent); } }
.nav-label { margin: 18px 10px 6px; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.nav-advanced { display: contents; }
html[data-mode="simple"] [data-advanced] { display: none !important; }
html[data-mode="simple"] .nav-advanced[data-advanced] { display: contents !important; }
html[data-mode="simple"] .nav-advanced[data-advanced] > :not([data-view="auctions"]) { display: none !important; }

/* K-Line · Administrator: přehledné rozbalovací skupiny levého menu.
   Selektory jsou záměrně omezené jen na .admin-navigation, aby neovlivnily
   již hotové efekty ostatních tlačítek, chatu ani přihlašovací obrazovky. */
.admin-nav-title { margin-bottom: 8px; flex: 0 0 auto; }
.admin-nav-group {
  --admin-nav-group-tone: #85a9d0;
  flex: 0 0 auto;
  min-width: 0;
  display: grid;
  gap: 2px;
  margin: 3px 2px 2px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--admin-nav-group-tone) 17%, var(--border));
  border-radius: 14px;
  background: linear-gradient(155deg, color-mix(in srgb, var(--admin-nav-group-tone) 5%, var(--panel-alt)), color-mix(in srgb, var(--panel) 94%, transparent));
  box-shadow: 0 7px 20px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.035);
}
.admin-nav-group[data-admin-tone="blue"] { --admin-nav-group-tone:#82a9d2; }
.admin-nav-group[data-admin-tone="gold"] { --admin-nav-group-tone:#d2b362; }
.admin-nav-group[data-admin-tone="orange"] { --admin-nav-group-tone:#d59a70; }
.admin-nav-group[data-admin-tone="violet"] { --admin-nav-group-tone:#b39ace; }
.admin-nav-group[data-admin-tone="rose"] { --admin-nav-group-tone:#c98991; }
.admin-nav-group-toggle {
  position: relative;
  width: 100%;
  min-height: 49px;
  display: grid;
  grid-template-columns: 30px minmax(0,1fr) auto 16px;
  align-items: center;
  gap: 9px;
  padding: 7px 9px;
  border: 0;
  background: transparent;
  color: var(--text-2);
  text-align: left;
  cursor: pointer;
  transition: background 170ms ease, color 170ms ease, box-shadow 190ms ease;
}
.admin-nav-group-toggle:hover,
.admin-nav-group-toggle:focus-visible {
  outline: none;
  color: var(--text);
  background: color-mix(in srgb, var(--admin-nav-group-tone) 8%, transparent);
}
.admin-nav-group-icon {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--admin-nav-group-tone) 24%, var(--border));
  border-radius: 9px;
  background: color-mix(in srgb, var(--admin-nav-group-tone) 8%, var(--panel-alt));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 5px 12px rgba(0,0,0,.08);
}
.admin-nav-group-icon svg { width: 16px; height: 16px; color: color-mix(in srgb, var(--admin-nav-group-tone) 79%, var(--text-2) 21%); filter: drop-shadow(0 0 5px color-mix(in srgb, var(--admin-nav-group-tone) 20%, transparent)); }
.admin-nav-group-copy { min-width: 0; display: grid; gap: 1px; }
.admin-nav-group-copy strong { overflow: hidden; color: inherit; font-size: 11px; font-weight: 850; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.admin-nav-group-copy small { overflow: hidden; color: var(--muted); font-size: 8px; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.admin-nav-group-chevron { width: 14px; height: 14px; color: var(--muted); transform: rotate(90deg); transition: transform 180ms ease, color 180ms ease; }
.admin-nav-group-toggle[aria-expanded="false"] .admin-nav-group-chevron { transform: rotate(0deg); }
.admin-nav-group-toggle[aria-expanded="false"] + .admin-nav-group-items { display: none; }
.admin-nav-group-items { display: grid; gap: 2px; padding: 1px 4px 6px; }
.admin-nav-group-items .nav-item {
  --admin-nav-item-tone: #83a8ce;
  position: relative;
  min-height: 40px;
  overflow: hidden;
  border-radius: 10px;
  padding: 8px 9px;
}
.admin-nav-group-items .nav-item[data-admin-tone="green"] { --admin-nav-item-tone:#70bd94; }
.admin-nav-group-items .nav-item[data-admin-tone="rose"] { --admin-nav-item-tone:#c98991; }
.admin-nav-group-items .nav-item[data-admin-tone="cyan"] { --admin-nav-item-tone:#72b8c6; }
.admin-nav-group-items .nav-item[data-admin-tone="blue"] { --admin-nav-item-tone:#83a8d1; }
.admin-nav-group-items .nav-item[data-admin-tone="gold"] { --admin-nav-item-tone:#d1b05a; }
.admin-nav-group-items .nav-item[data-admin-tone="mint"] { --admin-nav-item-tone:#78b99e; }
.admin-nav-group-items .nav-item[data-admin-tone="orange"] { --admin-nav-item-tone:#d49468; }
.admin-nav-group-items .nav-item[data-admin-tone="violet"] { --admin-nav-item-tone:#aa90ca; }
.admin-nav-group-items .nav-item[data-view="offer-risk-reviews"] { --admin-nav-item-tone:#d5876e; }
.admin-nav-group-items .nav-item svg {
  color: color-mix(in srgb, var(--admin-nav-item-tone) 76%, var(--text-2) 24%);
  filter: drop-shadow(0 1px 1px rgba(0,0,0,.18)) drop-shadow(0 0 5px color-mix(in srgb, var(--admin-nav-item-tone) 21%, transparent));
  transition: color 160ms ease, filter 160ms ease;
}
.admin-nav-group-items .nav-item:hover svg,
.admin-nav-group-items .nav-item.active svg {
  color: color-mix(in srgb, var(--admin-nav-item-tone) 80%, #fff 20%);
  filter: drop-shadow(0 1px 1px rgba(0,0,0,.2)) drop-shadow(0 0 7px color-mix(in srgb, var(--admin-nav-item-tone) 33%, transparent));
}

/* Nová administrátorská informace: stabilní barevná záře + pomalý lesk.
   Třídu přidává JS jen konkrétní funkci s novým záznamem a po kliknutí ji odebere. */
.admin-nav-group-items .nav-item.admin-nav-has-new {
  border-color: color-mix(in srgb, var(--admin-nav-item-tone) 58%, transparent);
  background: linear-gradient(110deg, color-mix(in srgb, var(--admin-nav-item-tone) 9%, transparent), color-mix(in srgb, var(--panel-alt) 78%, transparent));
  box-shadow: 0 8px 20px rgba(0,0,0,.12), 0 0 0 1px color-mix(in srgb, var(--admin-nav-item-tone) 20%, transparent), 0 0 18px color-mix(in srgb, var(--admin-nav-item-tone) 35%, transparent), inset 0 1px 0 rgba(255,255,255,.06);
}
.admin-nav-group-items .nav-item.admin-nav-has-new::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: -45%;
  bottom: -45%;
  left: -42%;
  width: 28%;
  pointer-events: none;
  opacity: 0;
  background: linear-gradient(100deg, transparent 0%, rgba(255,255,255,.03) 18%, color-mix(in srgb, var(--admin-nav-item-tone) 34%, rgba(255,255,255,.42)) 50%, rgba(255,255,255,.03) 82%, transparent 100%);
  filter: blur(.2px);
  transform: skewX(-18deg);
  animation: admin-nav-new-shine 3.1s ease-in-out infinite;
}
.admin-nav-group-items .nav-item.admin-nav-has-new > * { position: relative; z-index: 1; }
.admin-nav-group.has-new {
  border-color: color-mix(in srgb, var(--admin-nav-group-tone) 36%, var(--border));
  box-shadow: 0 8px 22px rgba(0,0,0,.09), 0 0 17px color-mix(in srgb, var(--admin-nav-group-tone) 16%, transparent), inset 0 1px 0 rgba(255,255,255,.04);
}
.admin-nav-group-new {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--admin-nav-group-tone) 86%, #fff 14%);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--admin-nav-group-tone) 12%, transparent), 0 0 10px color-mix(in srgb, var(--admin-nav-group-tone) 48%, transparent);
  animation: admin-nav-new-dot 2.2s ease-in-out infinite;
}
.admin-nav-group-new[hidden] { display: none !important; }
@keyframes admin-nav-new-shine {
  0%, 38% { left: -42%; opacity: 0; }
  48% { opacity: .78; }
  68% { left: 118%; opacity: .46; }
  76%, 100% { left: 118%; opacity: 0; }
}
@keyframes admin-nav-new-dot {
  0%, 100% { opacity: .65; transform: scale(.9); }
  50% { opacity: 1; transform: scale(1.08); }
}
@media (prefers-reduced-motion: reduce) {
  .admin-nav-group-items .nav-item.admin-nav-has-new::after,
  .admin-nav-group-new { animation: none; }
}

.sidebar-foot { display: grid; gap: 12px; padding: 12px 4px 0; border-top: 1px solid var(--border); }
.verification-card { display: flex; align-items: center; gap: 10px; padding: 11px; border: 1px solid var(--border); border-radius: 13px; background: var(--panel-alt); }
.verify-icon { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 10px; color: var(--success); background: color-mix(in srgb, var(--success) 14%, transparent); }
.verify-icon svg { width: 16px; height: 16px; }
.verification-card div { display: grid; gap: 2px; min-width: 0; }
.verification-card strong { font-size: 12px; }
.verification-card small { overflow: hidden; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.offline-note { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 10px; padding: 0 6px; }
.offline-note span { width: 7px; height: 7px; border-radius: 50%; background: var(--success); }

.workspace { grid-column: 2; min-width: 0; }
.topbar { position: sticky; z-index: 620; top: 0; height: var(--topbar-height); display: grid; grid-template-columns: minmax(145px, .58fr) minmax(300px, 1.2fr) minmax(430px, 1.12fr); align-items: center; gap: 24px; padding: 0 28px; border-bottom: 1px solid var(--border); background: var(--topbar); backdrop-filter: blur(20px); overflow: visible; }
.topbar-left { display: flex; align-items: center; gap: 12px; }
.topbar h1 { margin: 1px 0 0; font-size: 20px; line-height: 1.1; }
.eyebrow { margin: 0; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.mobile-menu { display: none; }
.global-search { display: flex; align-items: center; gap: 10px; height: 42px; padding: 0 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--input); color: var(--muted); transition: border-color 150ms ease, box-shadow 150ms ease, background-color 180ms ease; }
.global-search:focus-within { border-color: color-mix(in srgb, var(--accent) 55%, transparent); box-shadow: 0 0 0 3px var(--accent-soft); }
.global-search input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; color: var(--text); font-size: 13px; }
.global-search input::placeholder { color: var(--muted); }
.global-search kbd { padding: 3px 6px; border: 1px solid var(--border); border-radius: 6px; background: var(--panel-alt); color: var(--muted); font-size: 10px; }
.global-search-submit { display: grid; place-items: center; flex: 0 0 25px; width: 25px; height: 25px; padding: 0; border: 0; border-radius: 7px; background: transparent; color: var(--muted); cursor: pointer; }
.global-search-submit:hover, .global-search-submit:focus-visible { background: var(--accent-soft); color: var(--accent-2); outline: none; }
.global-search-submit svg { width: 15px; height: 15px; }
.topbar-center.route-search-active { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 8px; }
.topbar-center.route-search-active .global-search kbd { display: none; }
.global-route-destination[hidden] { display: none; }
.global-route-destination { border-color: color-mix(in srgb, var(--accent) 48%, var(--border)); background: color-mix(in srgb, var(--input) 88%, var(--accent-soft)); }
.topbar-actions { position: relative; z-index: 625; display: flex; justify-content: flex-end; align-items: center; gap: 9px; overflow: visible; }
.sync-chip, .plan-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 0 10px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); color: var(--text-2); font-size: 10px; white-space: nowrap; }
.sync-chip span { width: 7px; height: 7px; border-radius: 50%; background: var(--success); box-shadow: 0 0 0 4px color-mix(in srgb, var(--success) 14%, transparent); }
.plan-chip { cursor: pointer; }
.plan-chip:hover { border-color: var(--border-strong); transform: translateY(-1px); }
.plan-chip strong { color: var(--accent-2); font-size: 11px; }
.icon-button { position: relative; display: inline-grid; place-items: center; width: 38px; height: 38px; padding: 0; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); color: var(--text-2); cursor: pointer; transition: transform 150ms ease, color 150ms ease, border-color 150ms ease, box-shadow 150ms ease; }
.icon-button:hover { color: var(--text); border-color: var(--border-strong); transform: translateY(-1px); box-shadow: 0 8px 18px rgba(0,0,0,.12); }
.notification-count { position: absolute; top: -4px; right: -4px; min-width: 17px; height: 17px; display: grid; place-items: center; border: 2px solid var(--topbar); border-radius: 99px; background: var(--danger); color: #fff; font-size: 10px; font-weight: 800; }
.profile-button { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 9px; padding: 5px 8px 5px 5px; border: 1px solid var(--border); border-radius: 13px; background: var(--panel-alt); cursor: pointer; text-align: left; transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease; }
.profile-button:hover { border-color: var(--border-strong); box-shadow: 0 8px 20px rgba(0,0,0,.12); transform: translateY(-1px); }
.profile-button > svg { width: 14px; height: 14px; color: var(--muted); transform: rotate(90deg); }
.avatar { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 10px; background: linear-gradient(145deg, var(--accent), color-mix(in srgb, var(--accent) 52%, #17243b)); color: #fff; font-size: 10px; font-weight: 850; box-shadow: 0 6px 14px var(--accent-glow); }
.avatar.large { width: 48px; height: 48px; border-radius: 15px; font-size: 14px; }
.profile-copy { display: grid; gap: 2px; }
.profile-copy strong { font-size: 11px; }
.profile-copy small { color: var(--muted); font-size: 10px; }

.main-content { padding: 28px; outline: none; }
.view { display: none; }
.view.active-view { display: block; animation: fade-in 180ms ease; }
@keyframes fade-in { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
.welcome-row { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 22px; }
.welcome-row h2 { margin: 5px 0 6px; font-size: clamp(24px, 2vw, 32px); letter-spacing: -.03em; }
.welcome-copy { margin: 0; color: var(--text-2); font-size: 13px; }
.welcome-actions { display: flex; gap: 9px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 40px; padding: 0 15px; border: 1px solid transparent; border-radius: 11px; font-size: 12px; font-weight: 750; cursor: pointer; transition: transform 150ms ease, box-shadow 150ms ease, background-color 150ms ease, border-color 150ms ease; }
.button:hover { transform: translateY(-2px); }
.button:active { transform: translateY(0) scale(.985); }
.button-primary { color: #fff; background: linear-gradient(135deg, var(--accent), var(--accent-strong)); border-color: color-mix(in srgb, var(--accent) 76%, white 10%); box-shadow: var(--shadow-button), inset 0 1px 0 rgba(255,255,255,.18); }
.button-primary:hover { box-shadow: 0 12px 28px var(--accent-glow), inset 0 1px 0 rgba(255,255,255,.2); }
.button-secondary { color: var(--text); background: var(--panel-alt); border-color: var(--border); box-shadow: 0 7px 15px rgba(0,0,0,.08); }
.button-secondary:hover { border-color: var(--border-strong); box-shadow: 0 11px 22px rgba(0,0,0,.13); }
.button svg { width: 15px; height: 15px; }
.button.full { width: 100%; }
.text-button { display: inline-flex; align-items: center; gap: 3px; padding: 6px 2px; border: 0; background: transparent; color: var(--accent-2); font-size: 11px; font-weight: 750; cursor: pointer; }
.text-button:hover { color: var(--text); }
.text-button svg { width: 13px; height: 13px; }

.metrics-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; margin-bottom: 14px; }
.metric-card, .panel { border: 1px solid var(--border); background: var(--panel); box-shadow: var(--shadow); backdrop-filter: blur(18px); }
.metric-card { display: flex; align-items: center; gap: 13px; min-height: 112px; padding: 17px; border-radius: var(--radius-md); transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease; }
.metric-card:hover { transform: translateY(-2px); border-color: var(--border-strong); box-shadow: 0 20px 42px rgba(0,0,0,.22); }
.metric-icon { display: grid; place-items: center; width: 43px; height: 43px; flex: 0 0 auto; border-radius: 13px; }
.metric-icon svg { width: 20px; height: 20px; }
.metric-icon.blue { color: #5f9dff; background: rgba(44,127,255,.13); }
.metric-icon.cyan { color: #4fd4df; background: rgba(56,207,220,.12); }
.metric-icon.violet { color: #a891ff; background: rgba(139,111,250,.12); }
.metric-icon.green { color: #43d79e; background: rgba(55,201,144,.12); }
.metric-card > div:last-child { display: grid; gap: 4px; }
.metric-card span { color: var(--text-2); font-size: 11px; }
.metric-card strong { font-size: 24px; letter-spacing: -.03em; }
.metric-card small { color: var(--muted); font-size: 10px; }
.metric-card small b { color: var(--success); }

.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(300px, .78fr); gap: 14px; align-items: start; }
.panel { border-radius: var(--radius-md); padding: 18px; }
.panel-head { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 14px; }
.panel-head.compact { margin-bottom: 12px; }
.panel-head h3, .radio-panel h3, .ai-panel h3 { margin: 4px 0 0; font-size: 15px; }
.filter-chips { display: flex; gap: 6px; overflow-x: auto; padding-bottom: 12px; scrollbar-width: none; }
.filter-chip { flex: 0 0 auto; padding: 7px 10px; border: 1px solid var(--border); border-radius: 9px; background: var(--panel-alt); color: var(--muted); font-size: 10px; cursor: pointer; }
.filter-chip:hover, .filter-chip.active { color: var(--text); border-color: color-mix(in srgb, var(--accent) 40%, transparent); background: var(--accent-soft); }
.load-list { display: grid; gap: 8px; }
.load-row { display: grid; grid-template-columns: minmax(190px, 1.35fr) minmax(100px, .72fr) minmax(90px, .6fr) minmax(90px, .58fr) 32px; align-items: center; gap: 12px; min-height: 66px; padding: 10px 9px 10px 12px; border: 1px solid transparent; border-radius: 12px; background: color-mix(in srgb, var(--panel-alt) 62%, transparent); transition: border-color 150ms ease, transform 150ms ease, background-color 150ms ease; cursor: pointer; }
.load-row:hover { transform: translateX(2px); border-color: var(--border-strong); background: var(--panel-alt); }
.load-route { display: grid; grid-template-columns: 27px 1fr; gap: 10px; align-items: center; }
.flag { display: grid; place-items: center; width: 27px; height: 27px; border: 1px solid var(--border); border-radius: 8px; background: var(--panel-solid); font-size: 10px; font-weight: 850; }
.load-route > div { min-width: 0; }
.load-route strong, .load-cell strong { display: block; overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.load-route small, .load-cell small { color: var(--muted); font-size: 10px; }
.load-cell { min-width: 0; }
.load-price { color: var(--accent-2); }
.row-arrow { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid var(--border); border-radius: 9px; color: var(--muted); }
.row-arrow svg { width: 13px; height: 13px; }
.status-pill { display: inline-flex; align-items: center; justify-content: center; padding: 4px 8px; border-radius: 99px; font-size: 10px; font-weight: 800; }
.status-pill.blue { color: #72adff; background: rgba(44,127,255,.14); }
.status-pill.green { color: #58d7a8; background: rgba(55,201,144,.14); }
.status-pill.gold { color: #e9be63; background: rgba(216,168,69,.14); }
.top-tag { display: inline-flex; align-items: center; margin-left: 5px; padding: 2px 5px; border-radius: 5px; color: #09203b; background: var(--accent-2); font-size: 8.5px; font-weight: 900; vertical-align: 1px; }

.side-stack { display: grid; gap: 14px; }
.route-visual { display: grid; gap: 0; margin: 9px 0 13px; padding: 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); }
.route-point { display: grid; grid-template-columns: 30px 1fr; align-items: center; gap: 10px; }
.route-point > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: var(--accent-soft); color: var(--accent-2); font-size: 10px; font-weight: 850; }
.route-point > span .country-flag { width: 23px; height: 16px; }
.route-point div { display: grid; gap: 2px; }
.route-point strong { font-size: 11px; }
.route-point small { color: var(--muted); font-size: 10px; }
.route-line { position: relative; height: 32px; margin-left: 15px; border-left: 1px dashed color-mix(in srgb, var(--accent) 65%, transparent); }
.route-truck { position: absolute; left: -7px; top: 10px; color: var(--accent-2); font-size: 10px; transform: rotate(90deg); }
.route-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(95px, 1fr)); gap: 6px; margin-bottom: 12px; }
.route-stats span { display: grid; gap: 3px; padding: 8px; border-radius: 9px; background: color-mix(in srgb, var(--panel-alt) 75%, transparent); }
.route-stats small { color: var(--muted); font-size: 9px; }
.route-stats strong { font-size: 10px; }
.quick-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.quick-grid button { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; min-height: 88px; padding: 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); color: var(--text-2); font-size: 10px; font-weight: 750; cursor: pointer; text-align: left; transition: transform 150ms ease, border-color 150ms ease, background-color 150ms ease; }
.quick-grid button:hover { transform: translateY(-2px); color: var(--text); border-color: color-mix(in srgb, var(--accent) 40%, transparent); background: var(--accent-soft); }
.quick-grid button span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; color: var(--accent-2); background: var(--accent-soft); }
.quick-grid svg { width: 15px; height: 15px; }

.advanced-dashboard { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; margin-top: 14px; }
.radio-panel, .ai-panel { display: flex; align-items: center; gap: 14px; }
.radio-icon, .ai-orb { display: grid; place-items: center; width: 44px; height: 44px; flex: 0 0 auto; border-radius: 14px; color: var(--accent-2); background: var(--accent-soft); box-shadow: 0 0 24px var(--accent-glow); }
.radio-main, .ai-panel > div:nth-child(2) { flex: 1; min-width: 0; }
.radio-main p:last-child, .ai-panel p:last-child { margin: 4px 0 0; color: var(--muted); font-size: 10px; }
.radio-panel select { max-width: 132px; height: 36px; padding: 0 9px; border: 1px solid var(--border); border-radius: 9px; background: var(--input); color: var(--text); font-size: 10px; }

.drawer { position: fixed; z-index: 110; top: 0; right: 0; bottom: 0; width: min(520px, 100vw); display: flex; flex-direction: column; border-left: 1px solid var(--border); background: color-mix(in srgb, var(--panel-solid) 96%, transparent); box-shadow: -34px 0 92px rgba(0,0,0,.42), -10px 0 26px rgba(0,0,0,.16), 0 0 42px color-mix(in srgb,var(--accent-glow) 10%,transparent), inset 1px 0 0 rgba(255,255,255,.03); backdrop-filter: blur(18px); transform: translateX(105%); visibility: hidden; transition: transform 220ms ease, visibility 220ms; }
.drawer.open { transform: translateX(0); visibility: visible; }
.drawer-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 78px; padding: 15px 20px; border-bottom: 1px solid var(--border); }
.drawer-head h2 { margin: 4px 0 0; font-size: 20px; }
.drawer-scroll { flex: 1; overflow-y: auto; padding: 18px 20px 28px; }
.drawer-backdrop { position: fixed; z-index: 100; inset: 0; visibility: hidden; opacity: 0; background: rgba(1, 5, 12, .62); backdrop-filter: blur(4px); transition: opacity 200ms ease, visibility 200ms; }
.drawer-backdrop.open { visibility: visible; opacity: 1; }
.drawer::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,0) 16%); }
.profile-identity { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; padding: 14px; border: 1px solid var(--border); border-radius: 15px; background: var(--panel-alt); }
.profile-identity > div { display: grid; gap: 3px; min-width: 0; }
.profile-identity-name-line { display:flex; align-items:center; gap:8px; min-width:0; flex-wrap:wrap; }
.profile-identity strong { font-size: 13px; }
.profile-identity span { color: var(--text-2); font-size: 10px; }
.profile-identity .drawer-registration-number { display:inline-flex; align-items:center; width:max-content; max-width:100%; padding:3px 7px; border:1px solid rgba(223,183,77,.42); border-radius:999px; background:rgba(223,183,77,.08); color:#e2bd58; font-size:9px; font-weight:900; letter-spacing:.055em; line-height:1.1; text-shadow:0 0 9px rgba(226,189,88,.18); box-shadow:inset 0 0 12px rgba(223,183,77,.035); white-space:nowrap; }
.profile-identity .drawer-registration-number[hidden] { display:none !important; }
.profile-identity small { display: flex; align-items: center; gap: 4px; color: var(--success); font-size: 10px; }
.profile-identity small svg { width: 11px; height: 11px; }
.mini-button { padding: 6px 9px; border: 1px solid var(--border); border-radius: 8px; background: transparent; color: var(--text-2); font-size: 10px; cursor: pointer; }
.mini-button:hover { border-color: var(--border-strong); color: var(--text); }
.setting-section { padding: 22px 0; border-bottom: 1px solid var(--border); }
.setting-section:last-child { border-bottom: 0; }
.setting-title { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.setting-title.compact { margin-top: 16px; }
.setting-title h3 { margin: 0 0 4px; font-size: 13px; }
.setting-title p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.choice-grid { display: grid; gap: 9px; }
.choice-grid.two { grid-template-columns: 1fr 1fr; }
.choice-card { position: relative; display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; column-gap: 10px; row-gap: 3px; min-height: 84px; padding: 12px; border: 1px solid var(--border); border-radius: 13px; background: var(--panel-alt); text-align: left; cursor: pointer; transition: transform 150ms ease, border-color 150ms ease, background-color 150ms ease; }
.choice-card:hover { transform: translateY(-2px); border-color: var(--border-strong); }
.choice-card.selected { border-color: color-mix(in srgb, var(--accent) 65%, transparent); background: var(--accent-soft); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 20%, transparent); }
.choice-icon { grid-row: 1 / 3; display: grid; place-items: center; width: 33px; height: 33px; border-radius: 10px; color: var(--accent-2); background: var(--accent-soft); }
.choice-card strong { font-size: 11px; }
.choice-card small { color: var(--muted); font-size: 9px; line-height: 1.45; }
.choice-card > i { position: absolute; top: 8px; right: 8px; display: none; place-items: center; width: 17px; height: 17px; border-radius: 50%; background: var(--accent); color: #fff; }
.choice-card.selected > i { display: grid; }
.choice-card > i svg { width: 10px; height: 10px; }
.theme-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.theme-card { position: relative; display: grid; gap: 5px; padding: 8px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); text-align: left; cursor: pointer; transition: transform 150ms ease, border-color 150ms ease; }
.theme-card:hover { transform: translateY(-2px); border-color: var(--border-strong); }
.theme-card.selected { border-color: color-mix(in srgb, var(--accent) 65%, transparent); box-shadow: 0 0 0 2px var(--accent-soft); }
.theme-card strong { font-size: 10px; }
.theme-card small { color: var(--muted); font-size: 9px; }
.theme-preview { position: relative; display: block; height: 54px; overflow: hidden; border: 1px solid rgba(127,143,168,.18); border-radius: 8px; }
.theme-preview::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 25%; background: currentColor; opacity: .12; }
.theme-preview i, .theme-preview b, .theme-preview em { position: absolute; display: block; border-radius: 3px; }
.theme-preview i { top: 9px; left: 32%; width: 56%; height: 6px; background: currentColor; opacity: .18; }
.theme-preview b { top: 22px; left: 32%; width: 25%; height: 21px; background: currentColor; opacity: .14; }
.theme-preview em { top: 22px; right: 8%; width: 27%; height: 21px; background: currentColor; opacity: .1; }
.theme-preview.white { background: #f7f9fc; color: #1b3150; }
.theme-preview.kline { background: #071426; color: #3e8fff; }
.theme-preview.dark { background: #111419; color: #8291a8; }
.theme-preview.ultra { background: linear-gradient(145deg, #071426, #0b2240 55%, #09213d); color: #57f0d3; box-shadow: inset 0 0 18px rgba(87,240,211,.1); }
.theme-preview.ultra::after { content: ""; position: absolute; inset: auto 8px 8px auto; width: 34%; height: 7px; border-radius: 999px; background: linear-gradient(90deg, rgba(87,240,211,.28), rgba(104,215,255,.95)); box-shadow: 0 0 12px rgba(87,240,211,.38); opacity: .95; }
.plan-preview-setting { overflow: hidden; max-height: 310px; opacity: 1; transition: max-height 180ms ease, opacity 150ms ease; }
.plan-preview-setting.hidden { max-height: 0; opacity: 0; }
.plan-switch { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; padding: 5px; border: 1px solid var(--border); border-radius: 11px; background: var(--input); }
.plan-switch button { min-height: 31px; border: 0; border-radius: 8px; background: transparent; color: var(--muted); font-size: 10px; font-weight: 800; cursor: pointer; }
.plan-switch button.selected { background: var(--accent); color: #fff; box-shadow: 0 6px 14px var(--accent-glow); }
.logo-preview { display: grid; place-items: center; min-height: 118px; margin-top: 9px; overflow: hidden; border: 1px solid var(--border); border-radius: 12px; background: #030914; }
.logo-preview img { display: block; width: 100%; height: 118px; object-fit: cover; }
.switch-row { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 11px 0; border-bottom: 1px solid var(--border); cursor: pointer; }
.switch-row:last-child { border-bottom: 0; }
.switch-row > span { display: grid; gap: 3px; }
.switch-row strong { font-size: 10px; }
.switch-row small { color: var(--muted); font-size: 9px; }
.switch-row input { position: absolute; opacity: 0; pointer-events: none; }
.switch-row i { position: relative; width: 37px; height: 21px; flex: 0 0 auto; border-radius: 99px; background: var(--border-strong); transition: background-color 150ms ease; }
.switch-row i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 15px; height: 15px; border-radius: 50%; background: #fff; box-shadow: 0 2px 5px rgba(0,0,0,.22); transition: transform 150ms ease; }
.switch-row input:checked + i { background: var(--accent); }
.switch-row input:checked + i::after { transform: translateX(16px); }
.company-card dl { margin: 0; display: grid; gap: 0; }
.company-card dl div { display: grid; grid-template-columns: 92px 1fr; gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--border); }
.company-card dl div:last-child { border-bottom: 0; }
.company-card dt { color: var(--muted); font-size: 10px; }
.company-card dd { margin: 0; color: var(--text-2); font-size: 10px; line-height: 1.55; }

.ai-drawer { width: min(470px, 100vw); }
.ai-chat { flex: 1; overflow-y: auto; display: flex; flex-direction: column; gap: 12px; padding: 18px 20px; }
.chat-message { display: flex; align-items: flex-start; gap: 9px; max-width: 88%; }
.chat-message p { margin: 0; padding: 12px 15px; border: 1px solid color-mix(in srgb,var(--accent-2) 10%,rgba(255,255,255,.06)); border-radius: 19px 19px 19px 9px; background: color-mix(in srgb,var(--accent-2) 12%,var(--panel-alt)); color: var(--text-2); box-shadow: 0 16px 34px rgba(0,0,0,.14), 0 3px 10px rgba(0,0,0,.06), inset 0 1px 0 rgba(255,255,255,.11), inset 0 -2px 4px rgba(0,0,0,.06); font-size: 11px; line-height: 1.6; }
.chat-message.user { align-self: flex-end; }
.chat-message.user p { border-color: color-mix(in srgb,var(--accent) 24%,rgba(255,255,255,.06)); border-radius: 19px 19px 9px 19px; background: var(--accent); color: #fff; box-shadow: 0 17px 36px color-mix(in srgb,var(--accent-glow) 70%,rgba(0,0,0,.16)), 0 3px 10px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.16), inset 0 -2px 5px rgba(0,0,0,.10); }
.chat-bubble { display: grid; gap: 3px; }
.chat-bubble time { padding: 0 4px; color: var(--muted); font-size: 8.5px; }
.chat-message.user .chat-bubble time { text-align: right; }
.ai-avatar { display: grid; place-items: center; width: 29px; height: 29px; flex: 0 0 auto; border-radius: 9px; color: var(--accent-2); background: var(--accent-soft); }
.ai-avatar svg { width: 14px; height: 14px; }
.suggestion-row { display: flex; gap: 6px; overflow-x: auto; padding: 10px 20px; border-top: 1px solid var(--border); }
.suggestion-row button { flex: 0 0 auto; padding: 7px 9px; border: 1px solid var(--border); border-radius: 8px; background: var(--panel-alt); color: var(--text-2); font-size: 10px; cursor: pointer; }
.suggestion-row button:hover { border-color: var(--border-strong); color: var(--text); }
.ai-form { display: grid; grid-template-columns: 1fr auto; gap: 8px; padding: 10px 20px; }
.ai-form input { width: 100%; height: 40px; padding: 0 12px; border: 1px solid var(--border); border-radius: 10px; outline: none; background: var(--input); color: var(--text); font-size: 11px; }
.ai-form input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
.ai-disclaimer { margin: 0; padding: 0 20px 16px; color: var(--muted); font-size: 9px; line-height: 1.5; }

.app-dialog { width: min(680px, calc(100vw - 28px)); max-height: calc(100vh - 32px); padding: 0; overflow: hidden; opacity: 0; border: 1px solid var(--border-strong); border-radius: 18px; background: color-mix(in srgb, var(--panel-solid) 95%, transparent); color: var(--text); box-shadow: 0 42px 125px rgba(0,0,0,.56), 0 14px 38px rgba(0,0,0,.22), 0 0 38px color-mix(in srgb,var(--accent-glow) 12%,transparent), inset 0 1px 0 rgba(255,255,255,.035); backdrop-filter: blur(18px); transform: translateY(12px) scale(.975); transition: opacity 180ms ease, transform 180ms ease, overlay 180ms allow-discrete, display 180ms allow-discrete; }
.app-dialog[open] { opacity: 1; transform: none; }
.app-dialog::backdrop { opacity: 0; background: rgba(1,5,12,.7); backdrop-filter: blur(5px); transition: opacity 180ms ease, overlay 180ms allow-discrete, display 180ms allow-discrete; }
.app-dialog[open]::backdrop { opacity: 1; }
.app-dialog::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0) 18%); }
@starting-style { .app-dialog[open] { opacity: 0; transform: translateY(12px) scale(.975); } .app-dialog[open]::backdrop { opacity: 0; } }
.app-dialog:has(.filter-builder), .app-dialog:has(.offer-detail-layout) { width: min(940px, calc(100vw - 28px)); }
.app-dialog > form { display: flex; flex-direction: column; max-height: calc(100vh - 32px); }
.dialog-head { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 18px 20px; border-bottom: 1px solid var(--border); }
.dialog-head h2 { margin: 4px 0 0; font-size: 19px; }
.dialog-content { overflow-y: auto; padding: 20px; }
.dialog-actions { display: flex; justify-content: flex-end; gap: 8px; padding: 14px 20px; border-top: 1px solid var(--border); }
.app-dialog:has(.conversation-delete-confirm) { width: min(520px, calc(100vw - 28px)); border-color: rgba(255,255,255,.14); background: rgba(15,20,28,.98); color: #f5f7fb; box-shadow: 0 40px 118px rgba(0,0,0,.66), 0 14px 34px rgba(0,0,0,.24), 0 0 34px rgba(255,91,102,.10), 0 0 0 1px rgba(255,255,255,.025); }
.app-dialog:has(.conversation-delete-confirm)::backdrop { background: rgba(0,0,0,.72); backdrop-filter: blur(7px); }
.app-dialog:has(.conversation-delete-confirm) .dialog-head { border-bottom-color: rgba(255,255,255,.08); }
.app-dialog:has(.conversation-delete-confirm) .dialog-head .eyebrow { color: #ff8d94; }
.app-dialog:has(.conversation-delete-confirm) .dialog-actions { border-top-color: rgba(255,255,255,.08); }
.app-dialog:has(.conversation-delete-confirm) .button-secondary { border-color: rgba(255,255,255,.14); background: rgba(255,255,255,.055); color: #eef2f8; }
.app-dialog:has(.conversation-delete-confirm) .button.reject { border-color: rgba(255,91,102,.55); background: linear-gradient(180deg,#d9404c,#b82532); color: #fff; box-shadow: 0 8px 24px rgba(216,55,68,.28); }
.app-dialog:has(.conversation-delete-confirm) .button.reject:hover { transform: translateY(-1px); filter: brightness(1.06); }
.conversation-delete-confirm { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: 15px; padding: 4px 0; }
.conversation-delete-warning { display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid rgba(255,91,102,.4); border-radius: 15px; background: rgba(255,72,85,.12); color: #ff747e; font-size: 24px; font-weight: 950; box-shadow: inset 0 0 0 1px rgba(255,255,255,.035), 0 10px 26px rgba(0,0,0,.22); }
.conversation-delete-confirm > div { display: grid; gap: 7px; min-width: 0; }
.conversation-delete-confirm strong { color: #fff; font-size: 14px; }
.conversation-delete-confirm p { margin: 0; color: #bac2cf; font-size: 10px; line-height: 1.6; }
.conversation-delete-confirm p b { color: #fff; }
.conversation-delete-confirm small { color: #8792a3; font-size: 9px; line-height: 1.6; }
.conversation-delete-confirm kbd { display: inline-grid; place-items: center; min-width: 30px; padding: 2px 6px; border: 1px solid rgba(255,255,255,.14); border-bottom-color: rgba(255,255,255,.24); border-radius: 5px; background: rgba(255,255,255,.07); color: #eef2f8; font: inherit; font-weight: 800; box-shadow: 0 2px 0 rgba(0,0,0,.3); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.form-grid .full-span { grid-column: 1 / -1; }
.field { display: grid; gap: 6px; }
.field span { color: var(--text-2); font-size: 10px; font-weight: 700; }
.field input, .field select, .field textarea { width: 100%; min-height: 41px; padding: 9px 11px; border: 1px solid var(--border); border-radius: 10px; outline: none; background: var(--input); color: var(--text); font-size: 11px; }
.field textarea { min-height: 78px; resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
.helper-box { padding: 11px; border: 1px solid color-mix(in srgb, var(--accent) 30%, transparent); border-radius: 11px; background: var(--accent-soft); color: var(--text-2); font-size: 10px; line-height: 1.55; }

.toast-region { position: fixed; z-index: 250; left: 20px; right: auto; bottom: 20px; display: grid; gap: 9px; width: min(340px, calc(100vw - 40px)); perspective: 900px; pointer-events: none; }
.toast { position: relative; overflow: hidden; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; padding: 12px 13px; border: 1px solid color-mix(in srgb,var(--accent) 28%,var(--border-strong)); border-bottom-color: color-mix(in srgb,var(--accent) 18%,rgba(0,0,0,.72)); border-radius: 14px; background: linear-gradient(180deg,color-mix(in srgb,var(--panel-solid) 96%,white 4%),color-mix(in srgb,var(--panel-solid) 95%,black 5%)); box-shadow: 0 16px 30px rgba(0,0,0,.28), 0 7px 14px rgba(0,0,0,.2), 0 0 18px color-mix(in srgb,var(--accent-glow) 38%,transparent), inset 0 1px 0 rgba(255,255,255,.09), inset 0 -1px 0 rgba(0,0,0,.28); transform-origin: left bottom; pointer-events: auto; will-change: opacity,transform,filter; }
.toast::before { content: ""; position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(115deg,rgba(255,255,255,.08),transparent 32% 67%,color-mix(in srgb,var(--accent-glow) 16%,transparent)); pointer-events: none; }
.toast.toast-entering { animation: toast-in 520ms cubic-bezier(.2,.75,.2,1) both; }
.toast.toast-leaving { pointer-events: none; animation: toast-out 440ms cubic-bezier(.45,0,.55,1) both; }
.toast-icon { position: relative; z-index: 1; display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid color-mix(in srgb,var(--success) 32%,transparent); border-radius: 9px; color: var(--success); background: linear-gradient(180deg,color-mix(in srgb,var(--success) 17%,transparent),color-mix(in srgb,var(--success) 9%,transparent)); box-shadow: 0 6px 12px rgba(0,0,0,.18), 0 0 12px color-mix(in srgb,var(--success) 20%,transparent), inset 0 1px 0 rgba(255,255,255,.08); }
.toast-icon svg { width: 14px; height: 14px; }
.toast > div,.toast > button { position: relative; z-index: 1; }
.toast strong { display: block; margin-bottom: 2px; font-size: 10px; text-shadow: 0 1px 0 rgba(0,0,0,.24); }
.toast small { color: var(--muted); font-size: 9px; }
.toast button { padding: 3px; border: 0; border-radius: 6px; background: transparent; color: var(--muted); cursor: pointer; transition: background 150ms ease,color 150ms ease,transform 150ms ease; }
.toast button:hover { background: color-mix(in srgb,var(--accent) 10%,transparent); color: var(--text); transform: translateY(-1px); }
@keyframes toast-in { 0% { opacity: 0; transform: translate3d(-18px,14px,0) rotateX(8deg) scale(.965); filter: blur(2px); } 55% { opacity: 1; filter: blur(0); } 100% { opacity: 1; transform: translate3d(0,0,0) rotateX(0) scale(1); filter: blur(0); } }
@keyframes toast-out { 0% { opacity: 1; transform: translate3d(0,0,0) scale(1); filter: blur(0); } 100% { opacity: 0; transform: translate3d(-14px,9px,0) scale(.975); filter: blur(1.5px); } }
@media (prefers-reduced-motion: reduce) { .toast.toast-entering,.toast.toast-leaving { animation-duration: 1ms; } }

/* Dynamicky vykreslované sekce */
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.section-heading h2 { margin: 4px 0 5px; font-size: 27px; letter-spacing: -.03em; }
.section-heading p:last-child { margin: 0; color: var(--text-2); font-size: 12px; }
.section-toolbar { display: flex; flex-wrap: wrap; gap: 8px; }
.content-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.content-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.offer-card, .vehicle-card, .document-row, .contact-card, .auction-card, .stat-card { border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--panel); box-shadow: var(--shadow); }
.offer-card, .vehicle-card, .auction-card, .contact-card, .stat-card { padding: 16px; }
.offer-card:hover, .vehicle-card:hover, .auction-card:hover { border-color: var(--border-strong); transform: translateY(-2px); }
.offer-card, .vehicle-card, .auction-card { transition: transform 150ms ease, border-color 150ms ease; }
.card-top { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 15px; }
.card-top h3 { margin: 4px 0 0; font-size: 14px; }
.card-price { color: var(--accent-2); font-size: 16px; font-weight: 850; white-space: nowrap; }
.mini-route { display: grid; grid-template-columns: auto 1fr auto 1fr; align-items: center; gap: 8px; padding: 12px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); }
.mini-route > span { display: grid; place-items: center; width: 27px; height: 27px; border-radius: 8px; background: var(--accent-soft); color: var(--accent-2); font-size: 9px; font-weight: 850; }
.mini-route div { min-width: 0; }
.mini-route strong { display: block; overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.mini-route small { color: var(--muted); font-size: 9px; }
.route-arrow { color: var(--muted); }
.detail-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; margin: 12px 0; }
.detail-list span { display: grid; gap: 3px; padding: 8px; border-radius: 9px; background: var(--panel-alt); }
.detail-list small { color: var(--muted); font-size: 9px; }
.detail-list strong { font-size: 10px; }
.card-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.section-filters { display: grid; grid-template-columns: repeat(5, minmax(120px,1fr)); gap: 8px; margin-bottom: 14px; padding: 12px; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--panel); }
.section-filters label { display: grid; gap: 5px; color: var(--muted); font-size: 9px; }
.section-filters select, .section-filters input { width: 100%; height: 36px; padding: 0 9px; border: 1px solid var(--border); border-radius: 9px; outline: none; background: var(--input); color: var(--text); font-size: 10px; }
.configurable-filters { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
.filter-set-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 8px; padding: 9px 12px; border: 1px solid var(--border); border-radius: 12px; background: color-mix(in srgb, var(--panel) 94%, transparent); }
.filter-set-head > div { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
.filter-set-head span, .filter-set-head small { color: var(--muted); font-size: 9px; }.filter-set-head strong { font-size: 10px; }.filter-set-head small { padding-left: 7px; border-left: 1px solid var(--border); }
.filter-checkbox { position: relative; align-content: end; min-height: 56px; padding: 9px 40px 9px 10px; border: 1px solid var(--border); border-radius: 10px; background: var(--input); cursor: pointer; }
.filter-checkbox input { position: absolute; opacity: 0; pointer-events: none; }
.filter-checkbox i { position: absolute; right: 10px; bottom: 10px; display: grid; place-items: center; width: 23px; height: 23px; border: 1px solid var(--border-strong); border-radius: 7px; color: transparent; background: var(--panel-alt); }
.filter-checkbox i svg { width: 12px; height: 12px; }.filter-checkbox input:checked + i { color: white; border-color: var(--accent); background: var(--accent); }
.clickable-offer { cursor: pointer; }.clickable-offer:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.vehicle-visual { position: relative; height: 120px; display: grid; place-items: center; overflow: hidden; margin-bottom: 13px; border-radius: 12px; background: linear-gradient(145deg, var(--accent-soft), var(--panel-alt)); }
.vehicle-visual svg { width: 76px; height: 76px; color: var(--accent-2); opacity: .7; }
.vehicle-visual::after { content: ""; position: absolute; left: 12%; right: 12%; bottom: 24px; height: 1px; background: var(--border-strong); box-shadow: 0 0 20px var(--accent-glow); }
.vehicle-visual.has-photo::after { display: none; }
.vehicle-visual .vehicle-photo { display: block; width: 100%; height: 100%; object-fit: cover; }
.vehicle-photo-field small { color: var(--muted); font-size: 8px; line-height: 1.45; }
.vehicle-tags { display: flex; flex-wrap: wrap; gap: 5px; margin: 10px 0 12px; }
.vehicle-tags span { padding: 4px 7px; border-radius: 7px; background: var(--panel-alt); color: var(--text-2); font-size: 9px; }
.messages-layout { display: grid; grid-template-columns: minmax(230px,.7fr) minmax(0,1.5fr); height: min(780px, calc(100vh - 205px)); min-height: 520px; overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--panel); box-shadow: var(--shadow); }
.conversation-list { display: grid; grid-template-rows: auto auto auto auto minmax(0,1fr) auto; min-height: 0; overflow: hidden; border-right: 1px solid var(--border); }
.conversation-list h3 { margin: 0; padding: 16px; border-bottom: 1px solid var(--border); font-size: 13px; }
.conversation { width: 100%; display: grid; grid-template-columns: auto 1fr auto; gap: 9px; align-items: center; padding: 12px; border: 0; border-bottom: 1px solid var(--border); background: transparent; text-align: left; cursor: pointer; }
.conversation:hover, .conversation.active { background: var(--accent-soft); }
.conversation .avatar { width: 34px; height: 34px; }
.conversation-copy { min-width: 0; }
.conversation-copy strong, .conversation-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.conversation-copy strong { font-size: 10px; }
.conversation-copy small { margin-top: 3px; color: var(--muted); font-size: 9px; }
.conversation-last-meta { display: flex; flex-direction: column; align-items: flex-end; justify-content: center; align-self: stretch; min-width: 72px; padding-top: 4px; line-height: 1.15; white-space: nowrap; }
.conversation-last-date { color: color-mix(in srgb,var(--muted) 82%,transparent); font-size: 8px; }
.conversation-last-meta time { margin-top: 5px; color: var(--muted); font-size: 9px; }
.conversation-record.unread .conversation-last-meta { padding-top: 18px; }
.conversation time { color: var(--muted); font-size: 9px; }
.conversation-hint { display: grid; gap: 6px; margin: 10px 11px; padding: 12px; border: 1px dashed var(--border-strong); border-radius: 11px; background: var(--panel-alt); }
.conversation-hint strong { font-size: 10px; }
.conversation-hint span { color: var(--muted); font-size: 9px; line-height: 1.55; }
.chat-pane { display: grid; grid-template-rows: auto auto minmax(0,1fr) auto; min-width: 0; min-height: 0; overflow: hidden; }
.chat-pane > .chat-pane-head { grid-row:1; }
.chat-pane > .chat-context-selector { grid-row:2; }
.chat-pane > .chat-stream { grid-row:3; }
.chat-pane > .chat-compose { grid-row:4; align-self:end; }
.chat-pane-head { display: flex; justify-content: space-between; align-items: center; padding: 12px 15px; border-bottom: 1px solid var(--border); }
.chat-pane-head div { display: grid; gap: 2px; }
.chat-pane-head strong { font-size: 11px; }
.chat-pane-head small { color: var(--success); font-size: 9px; }
.chat-partner-link { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: inherit; font: inherit; text-align: left; cursor: pointer; appearance: none; -webkit-appearance: none; }
.chat-partner-link:hover { background: transparent; box-shadow: none; transform: none; }
.chat-partner-link:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; border-radius: 12px; }
.chat-partner-link > span { display: grid; gap: 2px; min-width: 0; }
.chat-partner-link strong, .chat-partner-link small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.chat-partner-link[disabled] { cursor: default; opacity: .72; }
.simulation-role { max-width: 44%; color: var(--muted); font-size: 9px; text-align: right; }
.chat-stream { min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; display: flex; flex-direction: column; gap: 10px; padding: 18px; background-position:center; background-repeat:no-repeat; background-size:cover; }
.chat-empty { display: grid; place-items: center; align-content: center; gap: 5px; min-height: 260px; color: var(--muted); text-align: center; }
.chat-empty strong { color: var(--text); font-size: 12px; }
.chat-empty span { font-size: 10px; }
.offer-message { align-self: center; width: min(390px,90%); padding: 15px; border: 1px solid color-mix(in srgb, var(--accent) 18%, transparent); border-radius: 20px; background: var(--accent-soft); text-align: center; box-shadow: 0 16px 34px rgba(0,0,0,.13), 0 3px 10px rgba(0,0,0,.05), inset 0 1px 0 rgba(255,255,255,.10), inset 0 -2px 4px rgba(0,0,0,.05); }
.offer-message strong { display: block; margin: 4px 0; font-size: 18px; }
.offer-message small { color: var(--muted); font-size: 9px; }
.offer-actions { display: flex; justify-content: center; gap: 7px; margin-top: 11px; }
.offer-message.offer-status-pending { border-color: color-mix(in srgb,#f0c75e 44%,var(--border)); box-shadow: 0 18px 42px rgba(0,0,0,.19), 0 5px 14px rgba(0,0,0,.09), 0 0 26px rgba(240,199,94,.20), inset 0 1px 0 rgba(255,255,255,.12), inset 0 -2px 5px rgba(0,0,0,.06); }
.offer-message.offer-status-pending::after { content:""; position:absolute; z-index:0; top:-35%; bottom:-35%; left:-42%; width:34%; border-radius:50%; background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.04) 18%,rgba(255,244,199,.58) 48%,rgba(255,255,255,.08) 72%,transparent 100%); filter:blur(2px); transform:skewX(-16deg); pointer-events:none; animation:offer-pending-shine 2.9s ease-in-out infinite; }
.offer-message.offer-status-pending .eyebrow { color:color-mix(in srgb,#f0c75e 78%,var(--text)); text-shadow:0 0 12px rgba(240,199,94,.18); }
.offer-message.offer-status-accepted { border-color: color-mix(in srgb,var(--success) 68%,rgba(255,255,255,.14)); background: linear-gradient(180deg,color-mix(in srgb,var(--success) 27%,var(--panel-alt)),color-mix(in srgb,var(--success) 17%,var(--panel))) !important; box-shadow: 0 20px 48px rgba(0,0,0,.20),0 0 0 2px color-mix(in srgb,var(--success) 10%,transparent),0 0 34px color-mix(in srgb,var(--success) 24%,transparent),inset 0 1px 0 rgba(255,255,255,.14),inset 0 -2px 5px rgba(0,0,0,.08); animation: offer-accepted 780ms cubic-bezier(.18,.88,.24,1) both; }
.offer-message.offer-status-accepted::after { content:""; position:absolute; z-index:0; inset:-30% auto -30% -35%; width:34%; background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent); filter:blur(2px); transform:skewX(-16deg); animation:offer-accepted-sweep 760ms ease-out 1 both; pointer-events:none; }
.offer-message.offer-status-accepted .eyebrow { color: color-mix(in srgb,var(--success) 74%,#fff); text-shadow:0 0 14px color-mix(in srgb,var(--success) 22%,transparent); }
.offer-message.offer-status-rejected { border-color: color-mix(in srgb,var(--danger) 58%,var(--border)); background: color-mix(in srgb,var(--danger) 12%,var(--panel-alt)) !important; box-shadow: 0 16px 36px rgba(0,0,0,.16),0 0 22px color-mix(in srgb,var(--danger) 14%,transparent),inset 0 1px 0 rgba(255,255,255,.07); animation: offer-rejected 560ms ease both; }
.offer-message.offer-status-rejected .eyebrow { color: var(--danger); }
@keyframes offer-pending-glow { 0%,100% { box-shadow:0 18px 42px rgba(0,0,0,.19),0 5px 14px rgba(0,0,0,.09),0 0 20px rgba(240,199,94,.14),inset 0 1px 0 rgba(255,255,255,.12),inset 0 -2px 5px rgba(0,0,0,.06); } 50% { box-shadow:0 22px 48px rgba(0,0,0,.22),0 6px 16px rgba(0,0,0,.10),0 0 38px rgba(240,199,94,.31),0 0 0 1px rgba(240,199,94,.10),inset 0 1px 0 rgba(255,255,255,.15),inset 0 -2px 5px rgba(0,0,0,.06); } }
@keyframes offer-pending-shine { 0%,20% { left:-42%; opacity:0; } 34% { opacity:.75; } 64% { left:112%; opacity:.55; } 75%,100% { left:112%; opacity:0; } }
@keyframes offer-accepted { 0% { opacity:.72; transform:scale(.975); filter:saturate(.75); } 46% { transform:scale(1.028); filter:saturate(1.22); } 100% { opacity:1; transform:none; filter:none; } }
@keyframes offer-accepted-sweep { 0% { left:-35%; opacity:0; } 25% { opacity:.72; } 100% { left:112%; opacity:0; } }
@keyframes offer-rejected { 0% { opacity: .55; transform: translateX(-7px); } 30% { transform: translateX(5px); } 55% { transform: translateX(-3px); } 100% { opacity: 1; transform: none; } }
.chat-compose { display: grid; grid-template-columns: auto auto minmax(0,1fr) auto; gap: 8px; padding: 12px; border-top: 1px solid var(--border); }
.chat-compose input { min-width: 0; height: 40px; padding: 0 12px; border: 1px solid var(--border); border-radius: 10px; outline: 0; background: var(--input); color: var(--text); }
.chat-compose input:focus { border-color: var(--accent); }
.chat-image-button { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.chat-image-button svg { width: 14px; height: 14px; }
.chat-image-bubble { max-width: min(460px, 64vw); padding: 6px; border: 1px solid color-mix(in srgb,var(--border) 62%,transparent); border-radius: 22px 22px 22px 10px; background: var(--panel-alt); box-shadow: 0 16px 34px rgba(0,0,0,.14), 0 3px 10px rgba(0,0,0,.06), inset 0 1px 0 rgba(255,255,255,.10), inset 0 -2px 4px rgba(0,0,0,.05); }
.chat-message.user .chat-image-bubble { border-radius: 22px 22px 10px 22px; border-color: color-mix(in srgb,var(--accent) 22%,rgba(255,255,255,.06)); background: color-mix(in srgb,var(--accent) 12%,var(--panel)); box-shadow: 0 16px 34px color-mix(in srgb,var(--accent-glow) 58%,rgba(0,0,0,.14)), 0 3px 10px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.12), inset 0 -2px 5px rgba(0,0,0,.08); }
.chat-bubble > p,
.chat-image-bubble,
.offer-message,
.dock-message { position: relative; overflow: hidden; isolation: isolate; }
.chat-bubble > p::before,
.chat-image-bubble::before,
.offer-message::before,
.dock-message::before { content: ""; position: absolute; inset: 1px 1px auto 1px; height: 50%; border-radius: inherit; background: linear-gradient(180deg, rgba(255,255,255,.20), rgba(255,255,255,.08) 34%, rgba(255,255,255,0) 100%); opacity: .52; pointer-events: none; z-index: 0; }
.chat-image-bubble > *,
.offer-message > *,
.dock-message > * { position: relative; z-index: 1; }
.chat-bubble > p:hover,
.chat-image-bubble:hover,
.offer-message:hover,
.dock-message:hover { transform: translateY(-1px); }
.chat-shared-image { display: block; width: 100%; max-height: 360px; object-fit: contain; border-radius: 10px; background: rgba(0,0,0,.12); }
.chat-image-name { overflow: hidden; padding: 4px 5px 1px; color: var(--muted); font-size: 8.5px; text-overflow: ellipsis; white-space: nowrap; }
.country-flag { width: 24px; height: 17px; object-fit: cover; border: 1px solid rgba(255,255,255,.25); border-radius: 3px; box-shadow: 0 2px 7px rgba(0,0,0,.22); }
.flag-code { display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-width: 34px; }
.flag-code .country-flag { width: 25px; height: 18px; }
.searchable-field { position: relative; }
.searchable-field input { width: 100%; }
.filter-hint { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--muted); font-size: 9px; }
.country-suggestion-menu { position: fixed; z-index: 320; max-height: 300px; overflow-y: auto; padding: 6px; border: 1px solid var(--border-strong); border-radius: 12px; background: var(--panel-solid); box-shadow: 0 18px 48px rgba(0,0,0,.34); }
.country-suggestion-menu button { width: 100%; display: grid; grid-template-columns: 28px 1fr auto; align-items: center; gap: 8px; min-height: 38px; padding: 6px 8px; border: 0; border-radius: 8px; background: transparent; color: var(--text); cursor: pointer; text-align: left; }
.country-suggestion-menu button:hover, .country-suggestion-menu button.keyboard-active { background: var(--accent-soft); }
.country-suggestion-menu img { width: 25px; height: 17px; border-radius: 3px; object-fit: cover; box-shadow: 0 0 0 1px rgba(127,153,190,.26); }
.country-suggestion-menu span { overflow: hidden; font-size: 10px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.country-suggestion-menu small { color: var(--muted); font-size: 9px; }
.place-suggestion-menu { position: fixed; z-index: 322; max-height: 330px; overflow-y: auto; padding: 6px; border: 1px solid var(--border-strong); border-radius: 12px; background: var(--panel-solid); box-shadow: 0 18px 48px rgba(0,0,0,.34); }
.place-suggestion-menu button { width: 100%; display: block; min-height: 44px; padding: 7px 9px; border: 0; border-radius: 8px; background: transparent; color: var(--text); cursor: pointer; text-align: left; }
.place-suggestion-menu button:hover, .place-suggestion-menu button.keyboard-active { background: var(--accent-soft); }
.place-suggestion-menu button span { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.place-suggestion-menu strong { overflow: hidden; font-size: 10px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.place-suggestion-menu small { overflow: hidden; color: var(--muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.country-suggestion-menu[popover], .place-suggestion-menu[popover] { inset: auto; margin: 0; }
.suggestion-menu-dialog-fallback { z-index: 2147483647; }
.result-limit { margin-top: 14px; text-align: center; }

.filter-builder { display: grid; gap: 14px; }
.filter-builder-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--muted); font-size: 10px; }
.filter-builder-toolbar > div { display: flex; gap: 6px; }
.filter-choice-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; }
.filter-choice { position: relative; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 9px; min-height: 58px; padding: 9px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); cursor: pointer; transition: transform 150ms ease, border-color 150ms ease, background-color 150ms ease; }
.filter-choice:hover { transform: translateY(-1px); border-color: var(--border-strong); }
.filter-choice input { position: absolute; opacity: 0; pointer-events: none; }
.filter-choice > i { display: grid; place-items: center; width: 24px; height: 24px; border: 1px solid var(--border-strong); border-radius: 7px; color: transparent; background: var(--input); }
.filter-choice > i svg { width: 12px; height: 12px; }.filter-choice input:checked + i { color: white; border-color: var(--accent); background: var(--accent); box-shadow: 0 4px 12px var(--accent-glow); }
.filter-choice:has(input:checked) { border-color: color-mix(in srgb,var(--accent) 45%,var(--border)); background: var(--accent-soft); }
.filter-choice > span { display: grid; gap: 3px; }.filter-choice strong { font-size: 10px; }.filter-choice small { color: var(--muted); font-size: 8.5px; }

.offer-detail-layout { display: grid; gap: 14px; }
.offer-route-map { position: relative; min-height: 245px; overflow: hidden; border: 1px solid var(--border); border-radius: 15px; background: radial-gradient(circle at 18% 22%,var(--accent-soft),transparent 27%),radial-gradient(circle at 82% 76%,var(--accent-soft),transparent 25%),linear-gradient(135deg,var(--panel-alt),var(--bg-soft)); }
.offer-map-grid { position: absolute; inset: 0; opacity: .38; background-image: linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px); background-size: 35px 35px; transform: perspective(400px) rotateX(46deg) scale(1.3); }
.offer-map-line { position: absolute; left: 19%; right: 19%; top: 50%; display: grid; grid-template-columns: auto 1fr auto; align-items: center; height: 3px; background: linear-gradient(90deg,var(--accent),var(--accent-2)); box-shadow: 0 0 15px var(--accent-glow); transform: rotate(-7deg); }
.offer-map-line i { width: 15px; height: 15px; border: 3px solid var(--accent-2); border-radius: 50%; background: var(--panel-solid); }.offer-map-line i:first-child { transform: translateX(-7px); }.offer-map-line i:last-child { justify-self: end; transform: translateX(7px); }
.offer-map-line b { position: absolute; left: 55%; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 10px; background: var(--accent); color: white; box-shadow: 0 8px 20px var(--accent-glow); transform: rotate(7deg); }.offer-map-line b svg { width: 16px; height: 16px; }
.offer-map-label { position: absolute; display: flex; align-items: center; gap: 8px; min-width: 160px; padding: 9px; border: 1px solid var(--border-strong); border-radius: 11px; background: color-mix(in srgb,var(--panel-solid) 91%,transparent); box-shadow: 0 12px 28px rgba(0,0,0,.24); backdrop-filter: blur(10px); }.offer-map-label.start { left: 5%; top: 16%; }.offer-map-label.end { right: 5%; bottom: 14%; }.offer-map-label > span { display: grid; gap: 2px; }.offer-map-label small { color: var(--muted); font-size: 8.5px; }.offer-map-label strong { font-size: 10px; }
.offer-map-distance { position: absolute; left: 50%; bottom: 12px; display: inline-flex; align-items: center; gap: 9px; min-height: 30px; padding: 5px 10px; border: 1px solid color-mix(in srgb,var(--accent-2) 22%,var(--border)); border-radius: 99px; background: color-mix(in srgb,var(--panel-solid) 94%,transparent); color: var(--accent-2); font-size: 9px; font-weight: 850; box-shadow: 0 8px 20px rgba(0,0,0,.2); backdrop-filter: blur(8px); transform: translateX(-50%); white-space: nowrap; }.offer-map-distance > strong { color: var(--accent-2); font-size: 9px; }.offer-map-duration { position: relative; display: grid; gap: 1px; padding-left: 9px; color: var(--text-2); }.offer-map-duration::before { content: ""; position: absolute; left: 0; top: 4px; bottom: 4px; width: 1px; background: var(--border-strong); }.offer-map-duration strong { font-size: 9px; font-weight: 850; }.offer-map-duration small { color: var(--muted); font-size: 7.5px; font-weight: 650; }
.offer-detail-summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; }.offer-detail-summary h3 { margin: 4px 0; font-size: 18px; }.offer-detail-summary span { color: var(--muted); font-size: 10px; }
.offer-data-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 0; overflow: hidden; border: 1px solid var(--border); border-radius: 13px; background: var(--panel-alt); }.offer-data-grid.compact { grid-template-columns: repeat(2,minmax(0,1fr)); margin: 12px 0; }
.offer-data-grid > div { min-width: 0; padding: 10px; border-right: 1px solid var(--border); border-bottom: 1px solid var(--border); }.offer-data-grid > div:nth-child(3n) { border-right: 0; }.offer-data-grid.compact > div:nth-child(3n) { border-right: 1px solid var(--border); }.offer-data-grid.compact > div:nth-child(2n) { border-right: 0; }
.offer-data-grid dt { color: var(--muted); font-size: 8.5px; }.offer-data-grid dd { margin: 4px 0 0; overflow-wrap: anywhere; color: var(--text-2); font-size: 10px; font-weight: 750; }
.profile-dialog-description { min-height: 0; margin: 12px 0; padding: 10px; border-radius: 10px; background: var(--panel-alt); }
.chat-pane-tools { display: flex !important; grid-auto-flow: column; align-items: center; gap: 10px !important; }.chat-pane-tools .icon-button { width: 32px; height: 32px; flex: 0 0 auto; }
.chat-message-search-toggle { width:32px; min-width:32px; height:32px; padding:0!important; display:grid!important; place-items:center; }
.chat-message-search-toggle svg { width:15px; height:15px; }
.chat-message-search-control { position:relative; display:inline-flex; align-items:center; flex:0 0 auto; }
.chat-message-search-popover { position:absolute; z-index:118; top:calc(100% + 7px); right:0; width:min(430px,72vw); display:grid; grid-template-columns:minmax(0,1fr) auto auto auto auto; align-items:center; gap:6px; padding:9px; border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border-strong)); border-radius:13px; background:color-mix(in srgb,var(--panel-solid) 97%,black 3%); box-shadow:0 18px 44px rgba(0,0,0,.34),0 0 24px color-mix(in srgb,var(--accent-glow) 13%,transparent); backdrop-filter:blur(14px); }
.chat-message-search-popover input { min-width:0; height:34px; padding:0 10px; border:1px solid var(--border); border-radius:9px; outline:0; background:var(--input); color:var(--text); font-size:11px; }
.chat-message-search-popover input:focus { border-color:color-mix(in srgb,var(--accent) 50%,var(--border)); box-shadow:0 0 0 2px var(--accent-soft); }
.chat-message-search-count { min-width:44px; color:var(--muted); font-size:10px; text-align:center; white-space:nowrap; }
.chat-message-search-nav,.chat-message-search-close { display:grid; place-items:center; width:30px; height:30px; padding:0; border:1px solid var(--border); border-radius:8px; background:var(--panel-alt); color:var(--text-2); cursor:pointer; }
.chat-message-search-nav:hover,.chat-message-search-close:hover { border-color:color-mix(in srgb,var(--accent) 32%,var(--border)); background:var(--accent-soft); color:var(--text); }
.chat-message-search-nav:disabled { opacity:.38; cursor:default; }
.chat-stream [data-chat-message-id].chat-search-match { outline:1px solid color-mix(in srgb,var(--warning) 70%,transparent); outline-offset:4px; border-radius:12px; }
.chat-stream [data-chat-message-id].chat-search-current { outline:2px solid var(--warning); outline-offset:5px; filter:drop-shadow(0 0 8px color-mix(in srgb,var(--warning) 28%,transparent)); }


.active-view { animation: view-in 180ms ease; }
@keyframes view-in { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: none; } }

.profile-directory-toolbar { display: grid; grid-template-columns: minmax(220px,1.2fr) repeat(2,minmax(160px,.6fr)); gap: 9px; margin-bottom: 14px; }
.profile-directory-toolbar input { width: 100%; min-height: 40px; padding: 0 12px; border: 1px solid var(--border); border-radius: 10px; outline: 0; background: var(--input); color: var(--text); }
.profile-directory-toolbar input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
.profile-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 11px; }
.public-profile-card { display: grid; gap: 12px; padding: 15px; border: 1px solid var(--border); border-radius: 15px; background: var(--panel); box-shadow: var(--shadow); cursor: pointer; transition: transform 150ms ease,border-color 150ms ease; }
.public-profile-card:hover { transform: translateY(-2px); border-color: var(--border-strong); }
.profile-card-head { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; }
.profile-image { position: relative; display: grid; place-items: center; width: 52px; height: 52px; border-radius: 17px; background: linear-gradient(145deg,hsl(var(--avatar-hue) 72% 48%),hsl(calc(var(--avatar-hue) + 42) 68% 25%)); color: white; font-size: 16px; font-weight: 900; letter-spacing: .04em; box-shadow: inset 0 0 0 1px rgba(255,255,255,.25),0 9px 20px rgba(0,0,0,.2); }
.profile-image::after { content: ""; position: absolute; right: -2px; bottom: -2px; width: 12px; height: 12px; border: 3px solid var(--panel-solid); border-radius: 50%; background: var(--muted); }
.profile-image.online::after { background: var(--success); }
.profile-card-title { min-width: 0; }
.profile-card-title strong { display: block; overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.profile-card-title small { display: flex; align-items: center; gap: 6px; margin-top: 4px; color: var(--muted); font-size: 10px; line-height: 1.4; }
.profile-card-title .country-flag { width: 18px; height: 13px; }
.rating-chip { display: inline-flex; gap: 3px; align-items: center; padding: 5px 7px; border-radius: 8px; background: color-mix(in srgb,var(--warning) 13%,transparent); color: var(--warning); font-size: 10px; font-weight: 800; }
.profile-description { min-height: 34px; margin: 0; color: var(--text-2); font-size: 10px; line-height: 1.55; }
.profile-badge { display: inline-flex; align-items: center; gap: 5px; width: fit-content; padding: 5px 8px; border: 1px solid color-mix(in srgb,var(--accent) 28%,transparent); border-radius: 99px; background: var(--accent-soft); color: var(--accent-2); font-size: 9px; font-weight: 800; }
.profile-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 5px; }
.profile-stats span { display: grid; gap: 2px; padding: 7px; border-radius: 8px; background: var(--panel-alt); }
.profile-stats small { color: var(--muted); font-size: 8.5px; }.profile-stats strong { font-size: 10px; }

.billing-layout { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(320px,.75fr); gap: 14px; }
.subscription-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; }
.subscription-card { display: grid; align-content: start; gap: 10px; padding: 15px; border: 1px solid var(--border); border-radius: 15px; background: var(--panel); cursor: pointer; text-align: left; }
.subscription-card.selected { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
.subscription-card img { width: 100%; aspect-ratio: 16/8; object-fit: cover; border-radius: 10px; }
.subscription-card strong { font-size: 15px; }.subscription-card small { color: var(--muted); font-size: 9px; line-height: 1.5; }
.payment-panel { padding: 17px; border: 1px solid var(--border); border-radius: 17px; background: var(--panel); box-shadow: var(--shadow); }
.payment-warning { margin-bottom: 12px; padding: 10px; border: 1px solid color-mix(in srgb,var(--warning) 35%,transparent); border-radius: 10px; background: color-mix(in srgb,var(--warning) 11%,transparent); color: var(--text-2); font-size: 9px; line-height: 1.55; }
.payment-qr { display: block; width: 190px; height: 190px; margin: 12px auto; padding: 9px; border-radius: 13px; background: white; object-fit: contain; }
.bank-details { display: grid; gap: 0; margin: 12px 0; }.bank-details div { display: grid; grid-template-columns: 95px 1fr; gap: 8px; padding: 7px 0; border-bottom: 1px solid var(--border); }.bank-details dt { color: var(--muted); font-size: 9px; }.bank-details dd { margin: 0; font-size: 10px; font-weight: 700; }
.wallet-buttons { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }.wallet-button { min-height: 43px; border: 1px solid #333; border-radius: 10px; background: #050505; color: white; font-size: 11px; font-weight: 800; cursor: pointer; }

.download-option { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--border); }.download-option > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--accent-soft); color: var(--accent-2); }.download-option div { display: grid; gap: 2px; }.download-option strong { font-size: 10px; }.download-option small { color: var(--muted); font-size: 9px; }
html[data-radio="off"] .radio-panel, html[data-radio="off"] .brand-radio { display: none !important; }

.chat-dock { position: fixed; z-index: 110; right: 18px; bottom: 0; left: calc(var(--sidebar-width) + 18px); display: flex; align-items: flex-end; justify-content: flex-end; gap: 9px; overflow-x: auto; padding: 0 0 0 8px; pointer-events: none; scrollbar-width: thin; }
html[data-session="guest"] .chat-dock { display: none; }
.dock-chat { position: relative; isolation: isolate; width: 185px; flex: 0 0 185px; overflow: hidden; border: 1px solid color-mix(in srgb,var(--border-strong) 52%,rgba(255,255,255,.08)); border-bottom: 0; border-radius: 14px 14px 0 0; background: linear-gradient(180deg,color-mix(in srgb,var(--panel-solid) 97%,white 3%),color-mix(in srgb,var(--panel-solid) 94%,black 6%)); box-shadow: 0 -18px 42px rgba(0,0,0,.28), 0 -5px 18px rgba(0,0,0,.14), 0 0 24px color-mix(in srgb,var(--accent-glow) 10%,transparent), inset 0 1px 0 rgba(255,255,255,.06); pointer-events: auto; transition: box-shadow 170ms ease, transform 170ms ease, border-color 170ms ease; }
.dock-chat::before { content: ""; position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,0) 16%, rgba(255,255,255,0) 74%, rgba(0,0,0,.08)); pointer-events: none; }
.dock-chat:hover { border-color: color-mix(in srgb,var(--accent) 22%,var(--border-strong)); box-shadow: 0 -22px 54px rgba(0,0,0,.32), 0 -7px 22px rgba(0,0,0,.16), 0 0 28px color-mix(in srgb,var(--accent-glow) 13%,transparent), inset 0 1px 0 rgba(255,255,255,.075); }
.dock-chat.open { width: 290px; flex-basis: 290px; box-shadow: 0 -26px 62px rgba(0,0,0,.34), 0 -9px 24px rgba(0,0,0,.18), 0 0 34px color-mix(in srgb,var(--accent-glow) 14%,transparent), inset 0 1px 0 rgba(255,255,255,.08); }
.dock-chat-head { position: relative; z-index: 1; width: 100%; min-height: 41px; display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 7px; padding: 8px 9px; border: 0; border-bottom: 1px solid color-mix(in srgb,var(--border) 78%,transparent); background: linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0)); box-shadow: inset 0 -1px 0 rgba(255,255,255,.02); cursor: pointer; text-align: left; }
.dock-chat-head .profile-image { width: 25px; height: 25px; border-radius: 8px; font-size: 9px; box-shadow: 0 6px 14px rgba(0,0,0,.18); }
.dock-chat-head .profile-image::after { width: 7px; height: 7px; border-width: 2px; }
.dock-chat-head strong { overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; text-shadow: 0 1px 0 rgba(0,0,0,.18); }
.dock-unread { min-width: 18px; padding: 2px 5px; border-radius: 99px; background: var(--danger); color: white; font-size: 8.5px; text-align: center; box-shadow: 0 6px 16px color-mix(in srgb,var(--danger) 22%,transparent); animation: dock-pulse 1.2s infinite; }
.dock-window-actions { display: inline-flex; align-items: center; gap: 3px; }
.dock-minimize, .dock-close { display: grid; place-items: center; width: 22px; height: 22px; padding: 0; border: 1px solid transparent; border-radius: 6px; background: rgba(255,255,255,.015); color: var(--muted); font: inherit; font-size: 14px; line-height: 1; cursor: pointer; transition: background 150ms ease, color 150ms ease, border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease; }
.dock-minimize { visibility: hidden; opacity: 0; }
.dock-chat.open .dock-minimize { visibility: visible; opacity: 1; }
.dock-minimize:hover, .dock-close:hover, .dock-minimize:focus-visible, .dock-close:focus-visible { outline: none; transform: translateY(-1px); border-color: color-mix(in srgb,var(--accent) 20%,transparent); background: color-mix(in srgb,var(--accent-soft) 68%,transparent); color: var(--text); box-shadow: 0 6px 14px rgba(0,0,0,.16), 0 0 16px color-mix(in srgb,var(--accent-glow) 10%,transparent); }
.dock-chat-body { position: relative; z-index: 1; display: grid; height: 0; min-height: 0; grid-template-rows: 1fr auto; overflow: hidden; opacity: 0; visibility: hidden; border-top: 0 solid color-mix(in srgb,var(--border) 76%,transparent); transform: translateY(18px); transition: height 220ms cubic-bezier(.2,.8,.2,1), opacity 170ms ease, transform 220ms ease, visibility 220ms, border-width 220ms; }
.dock-chat.open .dock-chat-body { height: 360px; opacity: 1; visibility: visible; border-top-width: 1px; transform: translateY(0); }
.dock-messages { min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; display: flex; flex-direction: column; gap: 7px; padding: 11px; background: linear-gradient(180deg, rgba(255,255,255,.012), rgba(255,255,255,0)); }
.dock-message { max-width: 86%; padding: 9px 11px; border: 1px solid color-mix(in srgb,var(--accent-2) 9%,rgba(255,255,255,.06)); border-radius: 17px 17px 17px 8px; background: linear-gradient(180deg,color-mix(in srgb,var(--accent-2) 10%,var(--panel-alt)),color-mix(in srgb,var(--accent-2) 7%,var(--panel-alt))); color: var(--text-2); box-shadow: 0 15px 30px rgba(0,0,0,.14), 0 3px 8px rgba(0,0,0,.05), inset 0 1px 0 rgba(255,255,255,.09), inset 0 -2px 4px rgba(0,0,0,.06); font-size: 10px; line-height: 1.55; }
.dock-message.mine { align-self: flex-end; border-color: color-mix(in srgb,var(--accent) 20%,rgba(255,255,255,.06)); border-radius: 17px 17px 8px 17px; background: linear-gradient(180deg,color-mix(in srgb,var(--accent) 88%,white 12%),color-mix(in srgb,var(--accent) 92%,black 8%)); color: white; box-shadow: 0 16px 32px color-mix(in srgb,var(--accent-glow) 64%,rgba(0,0,0,.15)), 0 3px 8px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.14), inset 0 -2px 5px rgba(0,0,0,.10); }
.dock-compose { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 6px; padding: 9px; border-top: 1px solid color-mix(in srgb,var(--border) 78%,transparent); background: linear-gradient(180deg, rgba(255,255,255,.012), rgba(255,255,255,0)); box-shadow: inset 0 1px 0 rgba(255,255,255,.02); }
.dock-compose input { min-width: 0; height: 31px; padding: 0 8px; border: 1px solid color-mix(in srgb,var(--border) 82%,transparent); border-radius: 8px; outline: 0; background: color-mix(in srgb,var(--input) 92%,black 8%); color: var(--text); font-size: 9px; box-shadow: inset 0 1px 0 rgba(255,255,255,.03), 0 6px 14px rgba(0,0,0,.08); }
.dock-compose input:focus { border-color: color-mix(in srgb,var(--accent) 34%,transparent); box-shadow: 0 0 0 2px color-mix(in srgb,var(--accent-soft) 46%,transparent), inset 0 1px 0 rgba(255,255,255,.04), 0 6px 14px rgba(0,0,0,.09); }
.dock-compose button { width: 31px; border: 0; border-radius: 8px; background: linear-gradient(180deg,color-mix(in srgb,var(--accent) 86%,white 14%),color-mix(in srgb,var(--accent) 90%,black 10%)); color: white; cursor: pointer; box-shadow: 0 9px 18px color-mix(in srgb,var(--accent-glow) 22%,transparent), inset 0 1px 0 rgba(255,255,255,.08); transition: transform 150ms ease, filter 150ms ease, box-shadow 150ms ease; }
.dock-compose button:hover { transform: translateY(-1px); filter: brightness(1.03); box-shadow: 0 11px 21px color-mix(in srgb,var(--accent-glow) 26%,transparent), inset 0 1px 0 rgba(255,255,255,.1); }
.dock-compose .dock-image-button { display: grid; place-items: center; border: 1px solid color-mix(in srgb,var(--border) 82%,transparent); background: linear-gradient(180deg,color-mix(in srgb,var(--panel-alt) 92%,white 3%),color-mix(in srgb,var(--panel-alt) 94%,black 6%)); color: var(--text-2); box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 6px 14px rgba(0,0,0,.08); }
.dock-compose .dock-image-button:hover { border-color: color-mix(in srgb,var(--accent) 18%,var(--border-strong)); background: color-mix(in srgb,var(--accent-soft) 62%,var(--panel-alt)); color: var(--accent-2); }
.dock-compose .dock-image-button svg { width: 13px; height: 13px; }
.dock-image-message { padding: 4px; background: linear-gradient(180deg,color-mix(in srgb,var(--panel-alt) 96%,white 4%),color-mix(in srgb,var(--panel-alt) 95%,black 5%)); }
.dock-image-message.mine { background: color-mix(in srgb,var(--accent) 20%,var(--panel-alt)); }
.dock-shared-image { display: block; width: 100%; max-height: 190px; object-fit: contain; border-radius: 7px; background: rgba(0,0,0,.12); box-shadow: 0 6px 14px rgba(0,0,0,.16); }
.dock-offer-message { position: relative; overflow: hidden; display: grid; gap: 4px; max-width: 94%; min-width: 164px; padding: 10px 11px; border: 1px solid color-mix(in srgb,#f0c75e 36%,var(--border)); border-radius: 16px 16px 16px 8px; background: linear-gradient(180deg,color-mix(in srgb,#f0c75e 8%,var(--panel-alt)),color-mix(in srgb,#f0c75e 3%,var(--panel-solid))); color: var(--text); box-shadow: 0 15px 32px rgba(0,0,0,.16),0 0 22px rgba(240,199,94,.14),inset 0 1px 0 rgba(255,255,255,.10),inset 0 -2px 4px rgba(0,0,0,.06); }
.dock-message-row.mine .dock-offer-message { border-radius: 16px 16px 8px 16px; }
.dock-offer-message::before { content:""; position:absolute; inset:1px 1px auto; height:48%; border-radius:inherit; background:linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,0)); pointer-events:none; }
.dock-offer-message > * { position:relative; z-index:1; }
.dock-offer-eyebrow { color:color-mix(in srgb,#f0c75e 78%,var(--text)); font-size:7.8px; font-weight:900; letter-spacing:.045em; text-transform:uppercase; }
.dock-offer-message > strong { font-size:15px; line-height:1.15; }
.dock-offer-message > small { color:var(--muted); font-size:7.8px; line-height:1.4; }
.dock-offer-withdrawn { color:var(--muted); font-size:8px; line-height:1.45; }
.dock-offer-actions { display:grid; grid-template-columns:1fr 1fr; gap:5px; margin-top:5px; }
.dock-offer-actions .button { min-height:28px; padding:5px 7px; border-radius:8px; font-size:7.8px; }
.dock-offer-message.offer-status-pending { box-shadow:0 15px 32px rgba(0,0,0,.16),0 0 22px rgba(240,199,94,.14),inset 0 1px 0 rgba(255,255,255,.10),inset 0 -2px 4px rgba(0,0,0,.06); }
.dock-offer-message.offer-status-pending::after { content:""; position:absolute; z-index:0; top:-35%; bottom:-35%; left:-42%; width:34%; border-radius:50%; background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.04) 18%,rgba(255,244,199,.5) 48%,rgba(255,255,255,.08) 72%,transparent 100%); filter:blur(2px); transform:skewX(-16deg); pointer-events:none; animation:offer-pending-shine 2.9s ease-in-out infinite; }
.dock-offer-message.offer-status-accepted { border-color:color-mix(in srgb,var(--success) 62%,rgba(255,255,255,.12)); background:linear-gradient(180deg,color-mix(in srgb,var(--success) 25%,var(--panel-alt)),color-mix(in srgb,var(--success) 14%,var(--panel-solid))); box-shadow:0 16px 34px rgba(0,0,0,.18),0 0 28px color-mix(in srgb,var(--success) 22%,transparent),inset 0 1px 0 rgba(255,255,255,.12); animation:offer-accepted 780ms cubic-bezier(.18,.88,.24,1) both; }
.dock-offer-message.offer-status-accepted .dock-offer-eyebrow { color:color-mix(in srgb,var(--success) 76%,#fff); }
.dock-offer-message.offer-status-rejected { border-color:color-mix(in srgb,var(--danger) 50%,var(--border)); background:color-mix(in srgb,var(--danger) 10%,var(--panel-alt)); box-shadow:0 14px 30px rgba(0,0,0,.15),0 0 20px color-mix(in srgb,var(--danger) 12%,transparent); }
.dock-offer-message.offer-status-rejected .dock-offer-eyebrow { color:var(--danger); }
.dock-offer-message.offer-status-withdrawn,.dock-offer-message.offer-status-deleted { opacity:.78; border-color:var(--border); box-shadow:0 12px 26px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.05); }
@property --dock-alert-angle { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
.dock-chat.dock-alert { border-color:rgba(72,255,158,.95); box-shadow:0 -24px 58px rgba(0,0,0,.34),0 0 0 1px rgba(72,255,158,.20),0 0 25px rgba(48,245,139,.52),0 0 58px rgba(48,245,139,.22),inset 0 1px 0 rgba(255,255,255,.08); }
.dock-chat.dock-alert .dock-chat-head { background:linear-gradient(180deg,color-mix(in srgb,#2ee889 12%,var(--panel-solid)),color-mix(in srgb,#20c979 5%,var(--panel-solid))); }
.dock-chat.dock-alert .dock-chat-head strong { color:#e7fff2; text-shadow:0 0 12px rgba(72,255,158,.22); }
.dock-chat.dock-alert::after { content:""; position:absolute; z-index:7; inset:0; padding:2px; border-radius:inherit; background:conic-gradient(from var(--dock-alert-angle),transparent 0deg 280deg,rgba(42,242,137,.16) 300deg,#42ff9d 326deg,#e4fff0 338deg,#42ff9d 349deg,transparent 360deg); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; pointer-events:none; animation:dock-alert-orbit 1.65s linear infinite; filter:drop-shadow(0 0 5px rgba(58,255,153,.72)); }
.dock-chat.dock-alert .dock-chat-head::after { content:attr(data-unread-count); position:absolute; z-index:8; top:7px; right:55px; min-width:18px; height:18px; padding:0 5px; display:grid; place-items:center; border:1px solid rgba(126,255,188,.58); border-radius:999px; background:linear-gradient(180deg,rgba(39,235,130,.34),rgba(15,106,58,.42)); color:#f1fff7; font-size:8.5px; font-weight:900; box-shadow:0 8px 18px rgba(0,0,0,.18),0 0 18px rgba(56,255,154,.32),inset 0 1px 0 rgba(255,255,255,.13); pointer-events:none; }
@keyframes dock-alert-orbit { to { --dock-alert-angle: 360deg; } }
@keyframes dock-pulse { 50% { box-shadow: 0 0 0 5px color-mix(in srgb,var(--danger) 16%,transparent); } }
.license-viewer { overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: var(--panel); }.license-viewer-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 14px; border-bottom: 1px solid var(--border); }.license-viewer-head div { display: grid; gap: 3px; }.license-viewer-head strong { font-size: 11px; }.license-viewer-head small { color: var(--muted); font-size: 9px; }.license-viewer iframe { width: 100%; height: 360px; border: 0; background: white; }.license-consent { display: grid; grid-template-columns: auto 1fr; gap: 10px; margin-top: 12px; padding: 13px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); cursor: pointer; }.license-consent input { margin-top: 3px; accent-color: var(--accent); }.license-consent span { display: grid; gap: 4px; }.license-consent strong { font-size: 10px; }.license-consent small { color: var(--muted); font-size: 9px; line-height: 1.5; }

@media (max-width: 1280px) { .profile-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }.subscription-grid { grid-template-columns: 1fr; }.billing-layout { grid-template-columns: 1fr; }.chat-dock { left: 18px; }.dock-chat { flex-basis: 170px; width: 170px; } }
@media (max-width: 760px) { .profile-grid { grid-template-columns: 1fr; }.profile-directory-toolbar { grid-template-columns: 1fr; }.chat-dock { right: 5px; left: 5px; }.dock-chat { flex-basis: 155px; width: 155px; }.dock-chat.open { position: fixed; inset: auto 8px 0; width: auto; }.subscription-grid { grid-template-columns: 1fr; }.wallet-buttons { grid-template-columns: 1fr; } }
.document-list { display: grid; gap: 9px; }
.document-row { display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 12px; padding: 13px 15px; }
.document-row .metric-icon { width: 36px; height: 36px; }
.document-row div:nth-child(2) { display: grid; gap: 3px; }
.document-row strong { font-size: 10px; }
.document-row small { color: var(--muted); font-size: 9px; }
.map-placeholder { min-height: 520px; display: grid; grid-template-columns: minmax(0,1.5fr) minmax(260px,.65fr); overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--panel); box-shadow: var(--shadow); }
.map-canvas { position: relative; min-height: 520px; overflow: hidden; background: radial-gradient(circle at 25% 25%, var(--accent-soft), transparent 22%), linear-gradient(115deg, var(--panel-alt), var(--bg-soft)); }
.map-canvas::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(var(--border) 1px, transparent 1px), linear-gradient(90deg, var(--border) 1px, transparent 1px); background-size: 46px 46px; opacity: .35; }
.map-route { position: absolute; left: 18%; top: 48%; width: 58%; height: 2px; background: var(--accent); box-shadow: 0 0 12px var(--accent); transform: rotate(-12deg); }
.map-route::before, .map-route::after { content: ""; position: absolute; top: -6px; width: 14px; height: 14px; border: 3px solid var(--accent); border-radius: 50%; background: var(--panel-solid); }
.map-route::before { left: -7px; }.map-route::after { right: -7px; }
.map-caption { position: absolute; left: 20px; bottom: 20px; right: 20px; padding: 13px; border: 1px solid var(--border); border-radius: 12px; background: color-mix(in srgb, var(--panel-solid) 86%, transparent); backdrop-filter: blur(12px); }
.map-caption strong { display: block; font-size: 12px; }.map-caption small { color: var(--muted); font-size: 10px; }
.map-side { padding: 16px; border-left: 1px solid var(--border); }
.map-side h3 { margin: 0 0 12px; font-size: 13px; }
.map-stop { display: grid; grid-template-columns: auto 1fr; gap: 9px; padding: 10px 0; border-bottom: 1px solid var(--border); }
.map-stop span { display: grid; place-items: center; width: 27px; height: 27px; border-radius: 8px; background: var(--accent-soft); color: var(--accent-2); font-size: 9px; font-weight: 850; }
.map-stop div { display: grid; gap: 2px; }.map-stop strong { font-size: 10px; }.map-stop small { color: var(--muted); font-size: 9px; }
.stats-overview { display: grid; grid-template-columns: 1.25fr .75fr; gap: 13px; }
.chart-card { min-height: 320px; padding: 18px; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--panel); box-shadow: var(--shadow); }
.chart-card h3 { margin: 4px 0 20px; font-size: 14px; }
.bar-chart { height: 210px; display: flex; align-items: end; justify-content: space-around; gap: 12px; padding: 12px 6px 0; border-bottom: 1px solid var(--border); background-image: linear-gradient(to top, var(--border) 1px, transparent 1px); background-size: 100% 52px; }
.bar { position: relative; width: 9%; min-width: 24px; height: var(--h); border-radius: 7px 7px 2px 2px; background: linear-gradient(to top, var(--accent-strong), var(--accent-2)); box-shadow: 0 0 22px var(--accent-glow); }
.bar span { position: absolute; bottom: -28px; left: 50%; color: var(--muted); font-size: 9px; transform: translateX(-50%); }
.stat-stack { display: grid; gap: 13px; }
.stat-card { display: grid; gap: 5px; }
.stat-card span { color: var(--muted); font-size: 10px; }.stat-card strong { font-size: 24px; }.stat-card small { color: var(--success); font-size: 9px; }
.contact-card h3 { margin: 0 0 10px; font-size: 13px; }.contact-card p { margin: 4px 0; color: var(--text-2); font-size: 10px; line-height: 1.6; }.contact-card .card-actions { margin-top: 13px; justify-content: flex-start; }
.empty-state { min-height: 300px; display: grid; place-items: center; padding: 40px; border: 1px dashed var(--border-strong); border-radius: var(--radius-lg); text-align: center; }
.empty-state div { max-width: 420px; }.empty-state .metric-icon { margin: 0 auto 12px; }.empty-state h3 { margin: 0 0 7px; }.empty-state p { margin: 0 0 16px; color: var(--muted); font-size: 11px; line-height: 1.6; }

html.compact .load-row { min-height: 52px; padding-top: 6px; padding-bottom: 6px; }
html.compact .offer-card, html.compact .vehicle-card { padding: 12px; }

/* Vstup, přihlášení a registrace */
html[data-session="authenticated"] .auth-root { display: none; }
html[data-session="guest"] .app-shell,
html[data-session="guest"] .drawer,
html[data-session="guest"] .drawer-backdrop { display: none; }
html[data-session="guest"] body { overflow: auto; }
[data-admin-only] { display: none; }
html[data-role="founder"] [data-admin-only] { display: block; }
html[data-role="founder"] .admin-navigation { display: grid; flex: 0 0 auto; min-width: 0; gap: 1px; }

.auth-root { min-height: 100vh; }
.auth-shell { min-height: 100vh; display: flex; flex-direction: column; background: radial-gradient(circle at 75% 20%, var(--accent-soft), transparent 33rem), var(--bg); }
.auth-header { position: relative; z-index: 10; min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 13px clamp(18px, 4vw, 64px); border-bottom: 1px solid var(--border); background: color-mix(in srgb, var(--bg) 82%, transparent); backdrop-filter: blur(20px); }
.auth-brand { display: flex; align-items: center; gap: 11px; padding: 0; border: 0; background: transparent; color: var(--text); text-align: left; cursor: pointer; }
.auth-brand > span:last-child { display: grid; gap: 2px; }
.auth-brand strong { font-size: 17px; letter-spacing: .02em; }
.auth-brand small { color: var(--muted); font-size: 10px; letter-spacing: .09em; text-transform: uppercase; }
.auth-header-actions { display: flex; align-items: center; gap: 9px; }
.auth-header-actions .button svg { transform: rotate(180deg); }
.prototype-chip { display: inline-flex; align-items: center; gap: 7px; min-height: 32px; padding: 0 10px; border: 1px solid var(--border); border-radius: 9px; background: var(--panel-alt); color: var(--text-2); font-size: 10px; }
.prototype-chip i { width: 7px; height: 7px; border-radius: 50%; background: var(--success); box-shadow: 0 0 0 4px color-mix(in srgb, var(--success) 14%, transparent); }
.button.large { min-height: 48px; padding-inline: 20px; border-radius: 13px; font-size: 13px; }

.welcome-stage { flex: 1; width: min(1480px, 100%); margin: 0 auto; padding: clamp(28px, 5vw, 72px) clamp(18px, 4vw, 64px) 36px; }
.welcome-hero { min-height: 560px; display: grid; grid-template-columns: minmax(420px, .92fr) minmax(460px, 1.08fr); align-items: center; gap: clamp(38px, 6vw, 96px); }
.welcome-hero-copy { position: relative; z-index: 2; }
.auth-kicker { display: flex; align-items: center; gap: 9px; margin: 0 0 22px; color: var(--accent-2); font-size: 10px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.auth-kicker span { width: 24px; height: 1px; background: var(--accent-2); box-shadow: 0 0 10px var(--accent-glow); }
.welcome-hero h1 { margin: 0; max-width: 710px; font-size: clamp(48px, 5.6vw, 82px); line-height: .98; letter-spacing: -.055em; }
.welcome-hero h1 em { color: var(--accent-2); font-style: normal; text-shadow: 0 0 32px var(--accent-glow); }
.welcome-hero-copy > p:not(.auth-kicker) { max-width: 650px; margin: 24px 0 0; color: var(--text-2); font-size: 15px; line-height: 1.75; }
.welcome-cta { display: flex; gap: 12px; margin-top: 28px; }
/* Úvodní CTA: efekt je záměrně omezený pouze na tato tři tlačítka, aby neovlivnil jiné animace K-Line. */
.auth-welcome-shell .welcome-cta > .button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  box-shadow: 0 18px 38px rgba(0,0,0,.24), 0 7px 16px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.18), inset 0 -2px 4px rgba(0,0,0,.12);
}
.auth-welcome-shell .welcome-cta > .button::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: -45%;
  bottom: -45%;
  left: -34%;
  width: 25%;
  pointer-events: none;
  opacity: 0;
  background: linear-gradient(105deg, transparent 0%, rgba(255,255,255,.06) 18%, rgba(255,255,255,.72) 50%, rgba(255,255,255,.10) 78%, transparent 100%);
  filter: blur(4px);
  transform: skewX(-16deg) translateX(-280%);
  animation: welcome-cta-sequential-shine 7.2s ease-in-out infinite;
}
.auth-welcome-shell .welcome-cta > .button:nth-child(2)::after { animation-delay: 2.4s; }
.auth-welcome-shell .welcome-cta > .button:nth-child(3)::after { animation-delay: 4.8s; }
.auth-welcome-shell .welcome-cta > .button:hover {
  transform: translateY(-2px);
  box-shadow: 0 24px 48px rgba(0,0,0,.28), 0 0 24px color-mix(in srgb, var(--accent-glow) 22%, transparent), inset 0 1px 0 rgba(255,255,255,.2), inset 0 -2px 4px rgba(0,0,0,.12);
}
.welcome-finish-button {
  margin-left: 8px;
  color: #f5fff9;
  border-color: rgba(78, 224, 151, .72);
  background: linear-gradient(135deg, #178a5b, #20b878 58%, #11764e);
  box-shadow: 0 20px 42px rgba(0,0,0,.27), 0 0 24px rgba(42, 220, 139, .18), inset 0 1px 0 rgba(255,255,255,.22), inset 0 -2px 5px rgba(0,0,0,.15) !important;
}
.welcome-finish-button:hover {
  border-color: rgba(111, 255, 186, .92);
  box-shadow: 0 26px 54px rgba(0,0,0,.30), 0 0 34px rgba(42, 220, 139, .30), inset 0 1px 0 rgba(255,255,255,.24), inset 0 -2px 5px rgba(0,0,0,.15) !important;
}
@keyframes welcome-cta-sequential-shine {
  0%, 8%, 34%, 100% { transform: skewX(-16deg) translateX(-280%); opacity: 0; }
  12% { opacity: .72; }
  28% { transform: skewX(-16deg) translateX(620%); opacity: .12; }
  31% { transform: skewX(-16deg) translateX(680%); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) { .auth-welcome-shell .welcome-cta > .button::after { animation: none; display: none; } }
.trust-row { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 24px; color: var(--muted); font-size: 10px; }
.trust-row span { display: inline-flex; align-items: center; gap: 5px; }
.trust-row svg { width: 12px; height: 12px; color: var(--success); }

.welcome-brand-visual { position: relative; min-height: 520px; display: grid; place-items: center; isolation: isolate; }
.welcome-brand-visual::before { content: ""; position: absolute; z-index: -1; width: 84%; aspect-ratio: 1; border: 1px solid color-mix(in srgb, var(--accent) 20%, transparent); border-radius: 50%; box-shadow: inset 0 0 70px var(--accent-soft), 0 0 100px rgba(0,0,0,.2); }
.welcome-brand-visual::after { content: ""; position: absolute; z-index: -1; width: 96%; aspect-ratio: 1.7; border: 1px solid color-mix(in srgb, var(--accent) 34%, transparent); border-radius: 50%; transform: rotate(-9deg); box-shadow: 0 0 28px var(--accent-glow); }
.welcome-brand-visual > img { width: min(730px, 100%); aspect-ratio: 16/9; object-fit: cover; border-radius: 32px; mask-image: radial-gradient(ellipse at center, #000 38%, rgba(0,0,0,.94) 55%, transparent 76%); filter: saturate(1.05) contrast(1.04); }
.visual-glow { position: absolute; z-index: -2; width: 65%; height: 46%; border-radius: 50%; background: var(--accent); opacity: .2; filter: blur(90px); }
.floating-proof { position: absolute; display: flex; align-items: center; gap: 10px; min-width: 184px; padding: 11px 13px; border: 1px solid var(--border-strong); border-radius: 13px; background: color-mix(in srgb, var(--panel-solid) 82%, transparent); box-shadow: 0 18px 44px rgba(0,0,0,.28); backdrop-filter: blur(16px); }
.floating-proof > span { display: grid; place-items: center; width: 32px; height: 32px; flex: 0 0 auto; border-radius: 10px; background: var(--accent-soft); color: var(--accent-2); }
.floating-proof > div { display: grid; gap: 2px; }
.floating-proof small { color: var(--muted); font-size: 9px; }
.floating-proof strong { font-size: 10px; }
.proof-one { top: 14%; left: 0; }.proof-two { right: -2%; bottom: 25%; }.proof-three { left: 10%; bottom: 8%; }

.welcome-values { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; padding-top: 22px; border-top: 1px solid var(--border); }
.welcome-values article { display: grid; grid-template-columns: auto 1fr; gap: 13px; padding: 15px; border: 1px solid var(--border); border-radius: 14px; background: color-mix(in srgb, var(--panel) 70%, transparent); }
.welcome-values article > span { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 10px; color: var(--accent-2); background: var(--accent-soft); font-size: 10px; font-weight: 850; }
.welcome-values h2 { margin: 1px 0 5px; font-size: 12px; }.welcome-values p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.auth-footer { display: flex; justify-content: space-between; gap: 20px; padding: 18px clamp(18px, 4vw, 64px); border-top: 1px solid var(--border); color: var(--muted); font-size: 9px; }

.auth-center { flex: 1; display: grid; place-items: center; padding: 36px 18px; }
.auth-card { width: min(520px, 100%); padding: clamp(24px, 4vw, 38px); border: 1px solid var(--border-strong); border-radius: 22px; background: var(--panel); box-shadow: 0 28px 80px rgba(0,0,0,.32); backdrop-filter: blur(20px); }
.login-card { position: relative; isolation: isolate; overflow: hidden; border-color: color-mix(in srgb,var(--accent-2) 30%,color-mix(in srgb,var(--border-strong) 82%,rgba(255,255,255,.16))); background: linear-gradient(180deg,color-mix(in srgb,var(--panel) 97%,white 3%),color-mix(in srgb,var(--panel) 95%,black 5%)); box-shadow: 0 40px 110px rgba(0,0,0,.46), 0 16px 38px rgba(0,0,0,.22), 0 0 0 1px color-mix(in srgb,var(--accent-2) 12%,transparent), 0 0 18px color-mix(in srgb,var(--accent-glow) 18%,transparent), 0 0 42px color-mix(in srgb,var(--accent-glow) 13%,transparent), 0 0 82px color-mix(in srgb,var(--accent-glow) 8%,transparent), inset 0 1px 0 rgba(255,255,255,.10), inset 0 0 20px rgba(255,255,255,.018); }
.login-card::before { content: ""; position: absolute; z-index: 0; top: -28%; bottom: -28%; left: -42%; width: 26%; pointer-events: none; background: linear-gradient(100deg,transparent 0%,rgba(255,255,255,.015) 22%,rgba(255,255,255,.11) 48%,rgba(255,255,255,.025) 72%,transparent 100%); filter: blur(5px); transform: skewX(-16deg) translateX(-260%); animation: login-card-slow-shine 10.5s ease-in-out infinite; }
.login-card::after { content: ""; position: absolute; z-index: 0; inset: 1px; border-radius: 21px; pointer-events: none; background: linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,0) 20%); box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--accent-2) 8%,rgba(255,255,255,.025)), inset 0 0 18px color-mix(in srgb,var(--accent-glow) 4%,transparent); }
.login-card > * { position: relative; z-index: 1; }
@keyframes login-card-slow-shine { 0%,18% { transform: skewX(-16deg) translateX(-270%); opacity: 0; } 24% { opacity: .65; } 64% { opacity: .5; } 76%,100% { transform: skewX(-16deg) translateX(620%); opacity: 0; } }
.login-card .auth-field > div { min-height: 45px; border-color: color-mix(in srgb,var(--border) 82%,rgba(255,255,255,.06)); border-radius: 13px; background: linear-gradient(180deg,color-mix(in srgb,var(--input) 94%,white 3%),color-mix(in srgb,var(--input) 94%,black 6%)); box-shadow: 0 9px 20px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.055), inset 0 -1px 0 rgba(0,0,0,.09); transition: transform 170ms ease,border-color 170ms ease,box-shadow 180ms ease,background 180ms ease; }
.login-card .auth-field > div:hover { transform: translateY(-1px); border-color: color-mix(in srgb,var(--accent) 18%,var(--border-strong)); box-shadow: 0 12px 26px rgba(0,0,0,.13), 0 0 16px color-mix(in srgb,var(--accent-glow) 6%,transparent), inset 0 1px 0 rgba(255,255,255,.065), inset 0 -1px 0 rgba(0,0,0,.10); }
.login-card .auth-field > div:focus-within { transform: translateY(-1px); border-color: color-mix(in srgb,var(--accent) 68%,var(--border-strong)); background: linear-gradient(180deg,color-mix(in srgb,var(--input) 90%,var(--accent-soft) 10%),color-mix(in srgb,var(--input) 96%,black 4%)); box-shadow: 0 13px 30px rgba(0,0,0,.15), 0 0 0 2px color-mix(in srgb,var(--accent) 13%,transparent), 0 0 23px color-mix(in srgb,var(--accent-glow) 13%,transparent), inset 0 1px 0 rgba(255,255,255,.075); }
.login-card .auth-field svg { filter: drop-shadow(0 2px 4px rgba(0,0,0,.24)); transition: color 170ms ease,filter 170ms ease; }
.login-card .auth-field > div:focus-within svg { color: var(--accent-2); filter: drop-shadow(0 0 7px color-mix(in srgb,var(--accent-glow) 38%,transparent)); }
.login-card .button-primary.full { border: 1px solid color-mix(in srgb,var(--accent-2) 38%,rgba(255,255,255,.16)); box-shadow: 0 14px 30px color-mix(in srgb,var(--accent-glow) 18%,rgba(0,0,0,.14)), inset 0 1px 0 rgba(255,255,255,.16), inset 0 -2px 4px rgba(0,0,0,.10); transition: transform 170ms ease,box-shadow 180ms ease,filter 170ms ease; }
.login-card .button-primary.full:hover { transform: translateY(-2px); filter: brightness(1.04); box-shadow: 0 18px 38px color-mix(in srgb,var(--accent-glow) 24%,rgba(0,0,0,.16)), inset 0 1px 0 rgba(255,255,255,.18), inset 0 -2px 4px rgba(0,0,0,.10); }
.login-card .demo-role-grid button { border-color: color-mix(in srgb,var(--border) 84%,rgba(255,255,255,.06)); border-radius: 14px; background: linear-gradient(180deg,color-mix(in srgb,var(--panel-alt) 96%,white 3%),color-mix(in srgb,var(--panel-alt) 95%,black 5%)); box-shadow: 0 10px 24px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.045); transition: transform 170ms ease,border-color 170ms ease,box-shadow 180ms ease,background 180ms ease; }
.login-card .demo-role-grid button:hover { transform: translateY(-2px); border-color: color-mix(in srgb,var(--accent) 34%,var(--border-strong)); background: linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 32%,var(--panel-alt)),color-mix(in srgb,var(--accent-soft) 15%,var(--panel-alt))); box-shadow: 0 17px 36px rgba(0,0,0,.15), 0 0 22px color-mix(in srgb,var(--accent-glow) 9%,transparent), inset 0 1px 0 rgba(255,255,255,.055); }
@media (prefers-reduced-motion: reduce) { .login-card::before { animation: none; display: none; } }
.auth-card-heading { margin-bottom: 23px; text-align: center; }
.auth-card-heading h1, .waiting-card h1 { margin: 7px 0 9px; font-size: 28px; letter-spacing: -.035em; }
.auth-card-heading p:last-child, .waiting-card > p:not(.eyebrow) { margin: 0; color: var(--text-2); font-size: 11px; line-height: 1.65; }
.complete-registration-card { width: min(560px,100%); border-color: color-mix(in srgb, var(--success) 24%, var(--border-strong)); box-shadow: 0 34px 90px rgba(0,0,0,.38), 0 0 38px color-mix(in srgb, var(--success) 8%, transparent); }
.complete-registration-form .auth-field > div { min-height: 48px; border-radius: 13px; }
.complete-registration-form input[name="applicationId"] { text-transform: uppercase; letter-spacing: .06em; font-weight: 800; }
.complete-registration-form input[name="code"] { letter-spacing: .20em; font-weight: 900; }
.complete-registration-submit { color: #f5fff9; border-color: rgba(78,224,151,.72); background: linear-gradient(135deg,#178a5b,#20b878 58%,#11764e); box-shadow: 0 16px 34px rgba(0,0,0,.22), 0 0 22px rgba(42,220,139,.17), inset 0 1px 0 rgba(255,255,255,.2); }
.complete-registration-submit:hover { transform: translateY(-2px); box-shadow: 0 20px 42px rgba(0,0,0,.26), 0 0 30px rgba(42,220,139,.26), inset 0 1px 0 rgba(255,255,255,.22); }
.auth-form { display: grid; gap: 13px; }
.auth-field { display: grid; gap: 6px; }
.auth-field > span { color: var(--text-2); font-size: 10px; font-weight: 750; }
.auth-field > div { display: flex; align-items: center; gap: 8px; min-height: 43px; padding: 0 11px; border: 1px solid var(--border); border-radius: 10px; background: var(--input); color: var(--muted); transition: border-color 150ms ease, box-shadow 150ms ease; }
.auth-field > div:focus-within { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
.auth-field svg { width: 15px; height: 15px; }
.auth-field input, .auth-field select { width: 100%; min-width: 0; height: 41px; padding: 0; border: 0; outline: 0; background: transparent; color: var(--text); font-size: 11px; }
.login-options { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 1px 0 4px; color: var(--muted); font-size: 10px; }
.login-options label { display: flex; align-items: center; gap: 6px; }.login-options button { padding: 0; border: 0; background: transparent; color: var(--accent-2); font-size: 10px; cursor: pointer; }
.demo-divider { display: flex; align-items: center; gap: 10px; margin: 22px 0 14px; color: var(--muted); font-size: 9px; }
.demo-divider::before, .demo-divider::after { content: ""; flex: 1; height: 1px; background: var(--border); }
.demo-role-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; }
.demo-role-grid-admin-only { grid-template-columns: minmax(280px, 480px); justify-content: center; }
.demo-role-grid button { display: grid; justify-items: center; gap: 4px; min-height: 92px; padding: 10px 6px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); color: var(--text); cursor: pointer; transition: transform 150ms ease, border-color 150ms ease, background-color 150ms ease; }
.demo-role-grid button:hover { transform: translateY(-2px); border-color: color-mix(in srgb, var(--accent) 45%, transparent); background: var(--accent-soft); }
.demo-role-icon { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: var(--accent-soft); color: var(--accent-2); }
.demo-role-grid strong { font-size: 10px; }.demo-role-grid small { color: var(--muted); font-size: 8.5px; }
.auth-switch { margin: 20px 0 0; color: var(--muted); font-size: 10px; text-align: center; }.auth-switch button { padding: 0; border: 0; background: none; color: var(--accent-2); cursor: pointer; }
.login-note { margin-top: 12px; }

.registration-stage { flex: 1; width: min(1240px, 100%); margin: 0 auto; padding: 30px 18px 48px; }
.registration-card { overflow: hidden; border: 1px solid var(--border-strong); border-radius: 22px; background: var(--panel); box-shadow: 0 28px 80px rgba(0,0,0,.26); backdrop-filter: blur(18px); }
.registration-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 22px 26px 16px; }
.registration-top h1 { margin: 5px 0 0; font-size: 22px; }.registration-top > span { padding: 7px 10px; border-radius: 8px; background: var(--accent-soft); color: var(--accent-2); font-size: 10px; font-weight: 800; }
.registration-progress { display: grid; grid-template-columns: repeat(6, 1fr); margin: 0; padding: 0 26px 20px; list-style: none; }
.registration-progress li { position: relative; display: grid; justify-items: center; gap: 5px; color: var(--muted); }
.registration-progress li::before { content: ""; position: absolute; z-index: 0; top: 14px; right: 50%; width: 100%; height: 1px; background: var(--border-strong); }
.registration-progress li:first-child::before { display: none; }
.registration-progress li > span { position: relative; z-index: 1; display: grid; place-items: center; width: 29px; height: 29px; border: 1px solid var(--border-strong); border-radius: 50%; background: var(--panel-solid); font-size: 10px; font-weight: 800; }
.registration-progress li > span svg { width: 12px; height: 12px; }
.registration-progress li small { font-size: 9px; }
.registration-progress li.active, .registration-progress li.done { color: var(--accent-2); }.registration-progress li.active > span, .registration-progress li.done > span { border-color: var(--accent); background: var(--accent); color: #fff; box-shadow: 0 0 18px var(--accent-glow); }.registration-progress li.done::before, .registration-progress li.active::before { background: var(--accent); }
.registration-content { min-height: 390px; padding: 24px 26px 28px; border-top: 1px solid var(--border); }
.registration-heading { margin-bottom: 20px; text-align: center; }.registration-heading h2 { margin: 0 0 6px; font-size: 20px; }.registration-heading p { max-width: 680px; margin: 0 auto; color: var(--muted); font-size: 10px; line-height: 1.6; }
.registration-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 26px; border-top: 1px solid var(--border); background: color-mix(in srgb, var(--panel-alt) 64%, transparent); }
.registration-actions > .button:first-child svg { transform: rotate(180deg); }
.registration-error { display: flex; align-items: center; gap: 9px; margin: 0 26px 4px; padding: 10px 12px; border: 1px solid color-mix(in srgb, var(--danger) 38%, transparent); border-radius: 10px; background: color-mix(in srgb, var(--danger) 10%, transparent); color: #ff969e; font-size: 10px; }.registration-error svg { width: 15px; height: 15px; }

.account-type-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; max-width: 830px; margin: 0 auto; }
.account-type-card { position: relative; min-height: 250px; display: flex; flex-direction: column; align-items: flex-start; padding: 23px; overflow: hidden; border: 1px solid var(--border); border-radius: 17px; background: var(--panel-alt); text-align: left; cursor: pointer; transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease; }
.account-type-card:hover { transform: translateY(-3px); border-color: var(--border-strong); box-shadow: 0 20px 40px rgba(0,0,0,.18); }.account-type-card.selected { border-color: var(--accent); box-shadow: inset 0 0 0 1px var(--accent), 0 16px 34px var(--accent-glow); background: linear-gradient(145deg, var(--accent-soft), var(--panel-alt)); }
.account-type-card > i { position: absolute; top: 16px; right: 16px; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: var(--accent); color: #fff; }.account-type-card > i:empty { display: none; }.account-type-card > i svg { width: 12px; height: 12px; }
.account-type-icon { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: 24px; border-radius: 14px; background: var(--accent-soft); color: var(--accent-2); }.account-type-icon svg { width: 23px; height: 23px; }
.account-type-card > small { color: var(--accent-2); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.account-type-card > strong { margin-top: 5px; font-size: 18px; }.account-type-card > p { margin: 9px 0 16px; color: var(--muted); font-size: 10px; line-height: 1.6; }.account-type-card > em { display: inline-flex; align-items: center; gap: 4px; margin-top: auto; color: var(--text-2); font-size: 10px; font-style: normal; font-weight: 750; }.account-type-card > em svg { width: 12px; height: 12px; }
.registration-note { display: flex; align-items: center; justify-content: center; gap: 8px; max-width: 830px; margin: 16px auto 0; padding: 10px 12px; border: 1px solid color-mix(in srgb, var(--success) 26%, transparent); border-radius: 10px; background: color-mix(in srgb, var(--success) 8%, transparent); color: var(--text-2); font-size: 10px; }.registration-note svg { color: var(--success); }

.registration-plan-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.registration-plan-card { position: relative; display: flex; flex-direction: column; overflow: hidden; padding: 0; border: 1px solid var(--border); border-radius: 16px; background: var(--panel-alt); color: var(--text); text-align: left; cursor: pointer; transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease; }.registration-plan-card:hover { transform: translateY(-3px); border-color: var(--border-strong); }.registration-plan-card.selected { border-color: var(--accent); box-shadow: 0 16px 38px var(--accent-glow), inset 0 0 0 1px var(--accent); }.registration-plan-card.gold-plan.selected { border-color: #d8a845; box-shadow: 0 16px 38px rgba(216,168,69,.2), inset 0 0 0 1px #d8a845; }
.registration-plan-card img { width: 100%; height: 145px; object-fit: cover; border-bottom: 1px solid var(--border); }.registration-plan-card > div { display: grid; align-content: start; flex: 1; padding: 15px; }.registration-plan-card h3 { margin: 4px 0 7px; font-size: 18px; }.registration-plan-card div > p:not(.eyebrow) { min-height: 46px; margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55; }.registration-plan-card ul { display: grid; gap: 7px; margin: 13px 0 0; padding: 0; list-style: none; }.registration-plan-card li { display: flex; align-items: center; gap: 6px; color: var(--text-2); font-size: 10px; }.registration-plan-card li svg { width: 11px; height: 11px; color: var(--success); }
.plan-selected { position: absolute; z-index: 2; top: 10px; right: 10px; display: grid; place-items: center; width: 25px; height: 25px; border-radius: 50%; background: var(--accent); color: #fff; box-shadow: 0 5px 14px rgba(0,0,0,.28); }.plan-selected:empty { display: none; }.plan-selected svg { width: 12px; height: 12px; }

.registration-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; max-width: 960px; margin: 0 auto; }.registration-form-grid .full-span { grid-column: 1 / -1; }
.form-subheading { display: flex; align-items: center; gap: 10px; margin-top: 8px; padding: 10px 0 3px; border-top: 1px solid var(--border); }.form-subheading:first-child { margin-top: 0; padding-top: 0; border-top: 0; }.form-subheading > span { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 9px; background: var(--accent-soft); color: var(--accent-2); }.form-subheading > div { display: grid; gap: 2px; }.form-subheading strong { font-size: 10px; }.form-subheading small { color: var(--muted); font-size: 9px; }

.document-upload-list { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }.document-upload-card { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 11px; min-height: 76px; padding: 11px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); cursor: pointer; transition: border-color 150ms ease, transform 150ms ease; }.document-upload-card:hover { transform: translateY(-1px); border-color: var(--border-strong); }.document-upload-card input { position: absolute; width: 1px; height: 1px; opacity: 0; }.document-upload-icon { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: var(--accent-soft); color: var(--accent-2); }.document-upload-copy { display: grid; gap: 3px; min-width: 0; }.document-upload-copy strong { font-size: 10px; }.document-upload-copy small { color: var(--muted); font-size: 9px; }.document-upload-copy em { overflow: hidden; color: var(--success); font-size: 9px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }.upload-button { display: inline-flex; align-items: center; gap: 4px; padding: 6px 8px; border: 1px solid var(--border); border-radius: 8px; background: var(--panel-solid); color: var(--text-2); font-size: 9px; }.upload-button svg { width: 11px; height: 11px; }
.upload-summary { display: flex; align-items: center; gap: 10px; margin-top: 13px; padding: 12px; border: 1px solid var(--border); border-radius: 11px; background: var(--accent-soft); }.upload-summary > span { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 9px; background: var(--accent); color: #fff; }.upload-summary > div { display: grid; gap: 2px; }.upload-summary strong { font-size: 10px; }.upload-summary small { color: var(--muted); font-size: 9px; line-height: 1.5; }

.review-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 10px; }.review-card { padding: 14px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); }.review-card-head { display: flex; align-items: center; gap: 9px; margin-bottom: 12px; }.review-card-head > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--accent-soft); color: var(--accent-2); }.review-card-head > div { display: grid; gap: 2px; }.review-card-head small, .plan-review small { color: var(--muted); font-size: 9px; }.review-card-head strong, .plan-review strong { font-size: 11px; }.review-card dl, .review-admin-grid dl { margin: 0; display: grid; gap: 0; }.review-card dl > div, .review-admin-grid dl > div { display: grid; grid-template-columns: 110px 1fr; gap: 10px; padding: 7px 0; border-bottom: 1px solid var(--border); }.review-card dt, .review-admin-grid dt { color: var(--muted); font-size: 9px; }.review-card dd, .review-admin-grid dd { margin: 0; color: var(--text-2); font-size: 9px; }.plan-review { display: grid; grid-template-columns: 140px 1fr; align-items: center; gap: 12px; }.plan-review img { width: 140px; height: 80px; object-fit: cover; border-radius: 9px; }.plan-review > div { display: grid; gap: 3px; }.plan-review p { margin: 3px 0 0; color: var(--muted); font-size: 9px; line-height: 1.5; }.documents-review { grid-column: 2; }.documents-review ul { display: grid; gap: 5px; margin: 0; padding: 0; list-style: none; }.documents-review li { display: flex; align-items: center; gap: 5px; color: var(--text-2); font-size: 9px; }.documents-review li svg { width: 10px; height: 10px; color: var(--success); }
.consent-list { display: grid; gap: 8px; margin-top: 12px; }.consent-list label { display: flex; align-items: flex-start; gap: 9px; padding: 10px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); cursor: pointer; }.consent-list input { margin-top: 2px; accent-color: var(--accent); }.consent-list span { display: grid; gap: 2px; }.consent-list strong { font-size: 10px; }.consent-list small { color: var(--muted); font-size: 9px; }

.waiting-card { width: min(620px,100%); text-align: center; }.waiting-orb { display: grid; place-items: center; width: 66px; height: 66px; margin: 0 auto 17px; border: 1px solid color-mix(in srgb, var(--success) 44%, transparent); border-radius: 22px; background: color-mix(in srgb, var(--success) 13%, transparent); color: var(--success); box-shadow: 0 0 36px color-mix(in srgb, var(--success) 18%, transparent); }.waiting-orb svg { width: 28px; height: 28px; }.application-number { display: inline-grid; gap: 3px; margin: 18px auto; padding: 10px 18px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); }.application-number span { color: var(--muted); font-size: 9px; }.application-number strong { color: var(--accent-2); font-size: 13px; letter-spacing: .05em; }.verification-timeline { max-width: 420px; margin: 8px auto 22px; padding: 0; list-style: none; text-align: left; }.verification-timeline li { position: relative; display: grid; grid-template-columns: auto 1fr; gap: 10px; padding: 8px 0; color: var(--muted); }.verification-timeline li::after { content: ""; position: absolute; top: 38px; bottom: -8px; left: 14px; width: 1px; background: var(--border-strong); }.verification-timeline li:last-child::after { display: none; }.verification-timeline li > span { display: grid; place-items: center; width: 29px; height: 29px; border: 1px solid var(--border-strong); border-radius: 50%; background: var(--panel-solid); font-size: 9px; }.verification-timeline li > div { display: grid; gap: 2px; }.verification-timeline strong { color: var(--text-2); font-size: 10px; }.verification-timeline small { font-size: 9px; }.verification-timeline li.done > span { background: var(--success); border-color: var(--success); color: #fff; }.verification-timeline li.active > span { background: var(--accent); border-color: var(--accent); color: #fff; box-shadow: 0 0 16px var(--accent-glow); }.verification-timeline li.active strong { color: var(--text); }.waiting-actions { display: flex; justify-content: center; gap: 8px; }.prototype-disclaimer { display: block; margin-top: 16px; color: var(--muted); font-size: 8.5px; }

/* Schvalování zakladatele */
.approval-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 12px; }.approval-stats article { display: flex; align-items: center; gap: 11px; padding: 14px; border: 1px solid var(--border); border-radius: 13px; background: var(--panel); box-shadow: var(--shadow); }.approval-stats article > div { display: grid; gap: 3px; }.approval-stats small { color: var(--muted); font-size: 9px; }.approval-stats strong { font-size: 20px; }
.approval-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 10px; padding: 11px; border: 1px solid var(--border); border-radius: 13px; background: var(--panel); }.approval-toolbar .filter-chips { padding: 0; }.approval-search { display: flex; align-items: center; gap: 7px; min-width: 260px; height: 35px; padding: 0 9px; border: 1px solid var(--border); border-radius: 9px; background: var(--input); color: var(--muted); }.approval-search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--text); font-size: 10px; }
.approval-list { display: grid; gap: 8px; }.approval-card { overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: var(--panel); box-shadow: var(--shadow); }.approval-summary { display: grid; grid-template-columns: auto minmax(240px,1fr) auto auto auto; align-items: center; gap: 12px; padding: 13px; }.approval-company { min-width: 0; }.approval-company h3 { margin: 4px 0 3px; font-size: 12px; }.approval-company > span { color: var(--muted); font-size: 9px; }.account-kind { display: inline-flex; align-items: center; gap: 5px; padding: 6px 8px; border-radius: 8px; background: var(--panel-alt); color: var(--text-2); font-size: 9px; }.account-kind svg { width: 12px; height: 12px; }.status-pill.red { color: #ff969e; background: color-mix(in srgb, var(--danger) 14%, transparent); }.approval-card details { border-top: 1px solid var(--border); }.approval-card summary { padding: 8px 13px; color: var(--muted); font-size: 9px; cursor: pointer; }.approval-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; padding: 5px 13px 14px; }.approval-detail-grid dl { margin: 0; }.approval-detail-grid dl div { display: grid; grid-template-columns: 90px 1fr; gap: 9px; padding: 6px 0; border-bottom: 1px solid var(--border); }.approval-detail-grid dt { color: var(--muted); font-size: 9px; }.approval-detail-grid dd { margin: 0; color: var(--text-2); font-size: 9px; }.approval-detail-grid > div > strong { font-size: 10px; }.approval-detail-grid ul { display: grid; gap: 5px; margin: 8px 0 0; padding: 0; list-style: none; }.approval-detail-grid li { display: flex; align-items: center; gap: 5px; color: var(--text-2); font-size: 9px; }.approval-detail-grid li svg { width: 10px; height: 10px; color: var(--accent-2); }
.review-dialog { width: min(780px, calc(100vw - 28px)); }.review-profile { display: flex; align-items: center; gap: 11px; padding: 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); }.review-profile > div { display: grid; gap: 3px; }.review-profile small { color: var(--accent-2); font-size: 9px; }.review-profile strong { font-size: 12px; }.review-profile span { color: var(--muted); font-size: 9px; }.review-admin-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 12px 0; }.review-admin-grid section { padding: 13px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); }.review-admin-grid h3 { margin: 0 0 9px; font-size: 10px; }.review-document-checklist { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }.review-document-checklist label { display: flex; align-items: center; gap: 6px; color: var(--text-2); font-size: 9px; }.review-document-checklist input { accent-color: var(--accent); }.review-document-checklist svg { width: 11px; height: 11px; color: var(--accent-2); }.admin-decision-row { display: flex; justify-content: flex-end; gap: 8px; margin-top: 13px; }.button.reject { border-color: color-mix(in srgb, var(--danger) 35%, transparent); background: color-mix(in srgb, var(--danger) 10%, var(--panel-alt)); color: #ff969e; }.button.changes { border-color: color-mix(in srgb, var(--warning) 35%, transparent); background: color-mix(in srgb, var(--warning) 10%, var(--panel-alt)); color: #f5c76d; }
.logout-section { padding-bottom: 120px; }

.sidebar-overlay { display: none; }

@media (max-width: 1180px) {
  .topbar { grid-template-columns: auto minmax(250px,1fr) auto; padding: 0 20px; gap: 14px; }
  .sync-chip { display: none; }
  .profile-copy { display: none; }
  .profile-button { grid-template-columns: auto auto; }
  .metrics-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .dashboard-grid { grid-template-columns: minmax(0,1.4fr) minmax(280px,.8fr); }
  .content-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 920px) {
  .app-shell { display: block; }
  .workspace { grid-column: 1; }
  .sidebar { transform: translateX(-105%); }
  .sidebar.open { transform: translateX(0); }
  .sidebar-close, .mobile-menu { display: inline-grid; }
  .sidebar-overlay { position: fixed; z-index: 40; inset: 0; display: block; visibility: hidden; opacity: 0; background: rgba(1,5,12,.62); transition: opacity 180ms ease, visibility 180ms; }
  .sidebar-overlay.open { visibility: visible; opacity: 1; }
  .topbar { grid-template-columns: auto 1fr auto; }
  .topbar-center { grid-column: 1 / -1; grid-row: 2; display: none; }
  .topbar-center.route-search-active { display: none; }
  .topbar-actions .plan-chip { display: none; }
  .dashboard-grid { grid-template-columns: 1fr; }
  .side-stack { grid-template-columns: 1fr 1fr; }
  .advanced-dashboard { grid-template-columns: 1fr; }
  .section-filters { grid-template-columns: repeat(3,1fr); }
  .map-placeholder { grid-template-columns: 1fr; }
  .map-side { border-top: 1px solid var(--border); border-left: 0; }
}

@media (max-width: 680px) {
  :root { --topbar-height: 68px; }
  .topbar { height: var(--topbar-height); padding: 0 12px; }
  .topbar h1 { font-size: 17px; }
  .topbar-actions { gap: 5px; }
  .profile-button > svg { display: none; }
  .main-content { padding: 18px 12px; }
  .welcome-row { align-items: flex-start; flex-direction: column; }
  .welcome-actions { width: 100%; }
  .welcome-actions .button { flex: 1; }
  .metrics-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
  .metric-card { min-height: 108px; flex-direction: column; align-items: flex-start; gap: 8px; padding: 13px; }
  .metric-icon { width: 34px; height: 34px; }
  .metric-card strong { font-size: 20px; }
  .side-stack { grid-template-columns: 1fr; }
  .load-row { grid-template-columns: 1fr auto; gap: 8px; }
  .load-row .load-cell { display: none; }
  .panel { padding: 14px; }
  .radio-panel, .ai-panel { align-items: flex-start; flex-wrap: wrap; }
  .radio-main, .ai-panel > div:nth-child(2) { min-width: calc(100% - 64px); }
  .radio-panel select { flex: 1; max-width: none; }
  .drawer-scroll { padding: 15px; }
  .choice-grid.two { grid-template-columns: 1fr; }
  .theme-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .theme-card { padding: 6px; }
  .form-grid { grid-template-columns: 1fr; }
  .form-grid .full-span { grid-column: auto; }
  .content-grid, .content-grid.two { grid-template-columns: 1fr; }
  .section-heading { align-items: flex-start; flex-direction: column; }
  .section-toolbar { width: 100%; }
  .section-toolbar .button { flex: 1; }
  .section-filters { grid-template-columns: 1fr 1fr; }
  .filter-choice-grid { grid-template-columns: 1fr 1fr; }
  .filter-builder-toolbar { align-items: flex-start; flex-direction: column; }
  .offer-data-grid { grid-template-columns: 1fr 1fr; }
  .offer-data-grid > div:nth-child(3n) { border-right: 1px solid var(--border); }
  .offer-data-grid > div:nth-child(2n) { border-right: 0; }
  .messages-layout { grid-template-columns: 1fr; height: auto; max-height: none; min-height: auto; }
  .conversation-list { max-height: 240px; overflow-y: auto; border-right: 0; border-bottom: 1px solid var(--border); }
  .chat-pane { min-height: 480px; }
  .document-row { grid-template-columns: auto 1fr auto; }
  .document-row > .button { display: none; }
  .stats-overview { grid-template-columns: 1fr; }
}

/* v0.7.0 — pracovní prostředí, profily, filtry a přístupnost */
:root {
  --main-text-scale: 1;
  --menu-text-scale: 1;
  --label-text-scale: 1;
  --chat-text-scale: 1;
  --micro-text-scale: 1;
  --menu-micro-text-scale: 1;
  --label-micro-text-scale: 1;
  --chat-micro-text-scale: 1;
  --kline-watermark: none;
}

.environment-loader { position: fixed; z-index: 1000; inset: 0; display: grid; place-items: center; overflow: hidden; background: radial-gradient(circle at 50% 16%, rgba(31,105,255,.14), transparent 32%), #020712; color: #fff; transition: opacity 340ms ease, visibility 340ms ease; }
.environment-loader[hidden] { display: none; }
.environment-loader.finished { opacity: 0; visibility: hidden; }
.environment-loader video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .72; }
.environment-loader.video-fallback video { display: none; }
.environment-loader.video-fallback { background: radial-gradient(circle at 50% 35%, #123c77, #020712 65%); }
.environment-loader-shade { position: absolute; inset: 0; background: radial-gradient(circle at 50% 32%, rgba(92,168,255,.14), transparent 28%), radial-gradient(circle, transparent 0 25%, rgba(0,5,15,.72) 76%), linear-gradient(180deg, rgba(0,5,14,.12), rgba(0,5,14,.78)); }
.environment-loader-copy { position: relative; width: min(560px, calc(100vw - 40px)); padding: 34px 32px 30px; border: 1px solid rgba(166,208,255,.18); border-radius: 30px; background: linear-gradient(180deg, rgba(7,22,43,.52), rgba(4,12,25,.7)); box-shadow: 0 28px 90px rgba(0,0,0,.48), 0 0 0 1px rgba(255,255,255,.022) inset, 0 0 50px rgba(51,132,255,.12); backdrop-filter: blur(14px); text-align: center; text-shadow: 0 2px 18px #000; }
.environment-loader-copy::before { content: ""; position: absolute; inset: 1px; border-radius: 29px; background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0) 22%); pointer-events: none; }
.loader-mark { position: relative; display: grid; place-items: center; width: 78px; height: 78px; margin: 0 auto 18px; border: 1px solid rgba(163,206,255,.66); border-radius: 24px; background: linear-gradient(180deg, rgba(18,55,104,.82), rgba(5,19,41,.72)); color: #d9ebff; font-size: 35px; font-weight: 950; box-shadow: 0 18px 42px rgba(0,0,0,.34), 0 0 38px rgba(40,120,255,.36), inset 0 1px 0 rgba(255,255,255,.16); backdrop-filter: blur(12px); }
.loader-mark::after { content: ""; position: absolute; inset: 1px; border-radius: 23px; background: linear-gradient(140deg, rgba(255,255,255,.18), rgba(255,255,255,0) 38%); pointer-events: none; }
.environment-loader-copy h1 { margin: 7px 0 20px; color: #eff7ff; font-size: clamp(24px,4vw,42px); letter-spacing: .01em; text-shadow: 0 8px 28px rgba(0,0,0,.42), 0 0 16px rgba(81,162,255,.18); }
.environment-progress { position: relative; height: 15px; overflow: hidden; padding: 2px; border: 1px solid rgba(177,213,255,.34); border-radius: 999px; background: linear-gradient(180deg, rgba(5,10,20,.82), rgba(12,25,44,.62)); box-shadow: inset 0 2px 10px rgba(0,0,0,.46), 0 10px 28px rgba(0,0,0,.28), 0 0 20px rgba(72,142,255,.08); }
.environment-progress::before { content: ""; position: absolute; inset: 1px; border-radius: inherit; background: repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0 18px, rgba(255,255,255,0) 18px 36px); opacity: .6; mix-blend-mode: screen; pointer-events: none; }
.environment-progress i { --loader-metal:#c4ccd7; position: relative; display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, color-mix(in srgb,var(--loader-metal) 82%,#7d8795 18%) 0%, color-mix(in srgb,var(--loader-metal) 82%,white 18%) 30%, var(--loader-metal) 55%, color-mix(in srgb,var(--loader-metal) 74%,white 26%) 78%, color-mix(in srgb,var(--loader-metal) 88%,#6e6250 12%) 100%); background-size: 200% 100%; box-shadow: 0 0 18px color-mix(in srgb,var(--loader-metal) 64%,transparent), 0 0 34px color-mix(in srgb,var(--loader-metal) 26%,transparent), inset 0 1px 0 rgba(255,255,255,.34), inset 0 -2px 5px rgba(4,24,62,.28); animation: environment-progress-shift 2.2s linear infinite; }
.environment-progress i::before { content: ""; position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(180deg, rgba(255,255,255,.36), rgba(255,255,255,0) 52%); opacity: .82; }
.environment-progress i::after { content: ""; position: absolute; top: -35%; right: -24px; width: 64px; height: 170%; border-radius: 999px; background: radial-gradient(circle, rgba(255,255,255,.95) 0%, rgba(255,255,255,.42) 32%, rgba(255,255,255,0) 72%); filter: blur(4px); opacity: .92; }
#environment-progress-label { display: block; margin-top: 11px; color: #d7e8ff; font-size: 12px; font-weight: 800; letter-spacing: .055em; text-shadow: 0 0 14px rgba(86,156,255,.16); }
@keyframes environment-progress-shift { from { background-position: 0% 50%; } to { background-position: 200% 50%; } }

/* K-Line · sjednocené tmavší 3D scrollbary */
html {
  scrollbar-width: thin;
  scrollbar-color: color-mix(in srgb,var(--text-2) 38%,#172235 62%) color-mix(in srgb,var(--panel-solid) 82%,#050a12 18%);
}
* {
  scrollbar-width: thin;
  scrollbar-color: color-mix(in srgb,var(--text-2) 34%,#172235 66%) color-mix(in srgb,var(--panel-solid) 82%,#050a12 18%);
}
*::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
*::-webkit-scrollbar-track {
  border: 1px solid color-mix(in srgb,var(--border) 70%,transparent);
  border-radius: 999px;
  background: linear-gradient(90deg,
    color-mix(in srgb,var(--panel-solid) 88%,#02060c 12%),
    color-mix(in srgb,var(--panel-alt) 76%,#050b14 24%)
  );
  box-shadow: inset 0 1px 4px rgba(0,0,0,.38), inset 0 0 0 1px rgba(255,255,255,.018);
}
*::-webkit-scrollbar-thumb {
  min-height: 42px;
  border: 2px solid transparent;
  border-radius: 999px;
  background:
    linear-gradient(180deg,
      color-mix(in srgb,var(--text-2) 34%,#526078 66%) 0%,
      color-mix(in srgb,var(--text-2) 22%,#263246 78%) 52%,
      color-mix(in srgb,var(--text-2) 18%,#151e2d 82%) 100%
    ) padding-box;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 -1px 0 rgba(0,0,0,.3),
    0 2px 7px rgba(0,0,0,.3);
}
*::-webkit-scrollbar-thumb:hover {
  background:
    linear-gradient(180deg,
      color-mix(in srgb,var(--accent-2) 24%,#66748a 76%) 0%,
      color-mix(in srgb,var(--accent) 24%,#35445a 76%) 55%,
      color-mix(in srgb,var(--accent) 15%,#1a2434 85%) 100%
    ) padding-box;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.19),
    inset 0 -1px 0 rgba(0,0,0,.3),
    0 3px 9px rgba(0,0,0,.34),
    0 0 10px color-mix(in srgb,var(--accent-glow) 34%,transparent);
}
*::-webkit-scrollbar-thumb:active {
  background:
    linear-gradient(180deg,
      color-mix(in srgb,var(--accent-2) 34%,#58677c 66%),
      color-mix(in srgb,var(--accent) 30%,#27354a 70%)
    ) padding-box;
  box-shadow: inset 0 2px 4px rgba(0,0,0,.32), 0 0 12px color-mix(in srgb,var(--accent-glow) 38%,transparent);
}
*::-webkit-scrollbar-corner {
  background: color-mix(in srgb,var(--panel-solid) 86%,#050a12 14%);
}
/* Horizontální čipy zůstávají čisté bez viditelné lišty. */
.filter-chips::-webkit-scrollbar { display: none; }


.app-shell, .sidebar, .workspace, .chat-dock { transition: grid-template-columns 240ms ease, transform 240ms ease, left 240ms ease; }
.sidebar-close, .mobile-menu { display: inline-grid; }
.sidebar-restore { position: fixed; z-index: 39; top: 86px; left: 0; display: none; place-items: center; width: 34px; height: 48px; border: 1px solid var(--border-strong); border-left: 0; border-radius: 0 12px 12px 0; background: var(--panel-solid); color: var(--accent-2); box-shadow: var(--shadow); cursor: pointer; }
.sidebar-restore svg { width: 17px; height: 17px; }
html.sidebar-collapsed .app-shell { grid-template-columns: 0 1fr; }
html.sidebar-collapsed .sidebar { transform: translateX(-105%); }
html.sidebar-collapsed .sidebar-restore { display: grid; }
html.sidebar-collapsed .chat-dock { left: 18px; }
.live-clock { display: grid; gap: 2px; padding: 10px 12px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); }
.live-clock strong { color: var(--accent-2); font-size: 17px; letter-spacing: .08em; }
.live-clock small { color: var(--muted); font-size: calc(8px * var(--menu-text-scale)); text-transform: capitalize; }

html[data-theme="kline"] .workspace::before { content: ""; position: fixed; z-index: 0; inset: var(--topbar-height) 0 0 var(--sidebar-width); background-image: var(--kline-watermark); background-repeat: no-repeat; background-position: center; background-size: min(70vw,1050px) auto; opacity: .035; filter: saturate(.75) contrast(1.15); pointer-events: none; }
html[data-theme="kline"].sidebar-collapsed .workspace::before { left: 0; }
html[data-theme="ultra"] body {
  background:
    radial-gradient(circle at 12% 0%, rgba(47, 134, 255, 0.20), transparent 22rem),
    radial-gradient(circle at 88% 8%, rgba(87, 240, 211, 0.14), transparent 18rem),
    radial-gradient(circle at 78% 58%, rgba(50, 84, 216, 0.16), transparent 28rem),
    linear-gradient(180deg, #04101c 0%, #050d18 46%, #07172a 100%);
  background-attachment: fixed;
}
html[data-theme="ultra"] .workspace { position: relative; isolation: isolate; }
html[data-theme="ultra"] .workspace > * { position: relative; z-index: 1; }
html[data-theme="ultra"] .workspace::before { content: ""; position: fixed; z-index: 0; inset: var(--topbar-height) 0 0 var(--sidebar-width); background:
    radial-gradient(circle at 12% 12%, rgba(62, 131, 255, 0.12), transparent 18rem),
    radial-gradient(circle at 82% 14%, rgba(87, 240, 211, 0.09), transparent 13rem),
    radial-gradient(circle at 86% 68%, rgba(45, 103, 255, 0.15), transparent 21rem),
    linear-gradient(180deg, rgba(255,255,255,.015), rgba(255,255,255,0) 20%),
    linear-gradient(115deg, rgba(18, 41, 73, 0.22), rgba(6, 17, 31, 0.06) 38%, rgba(12, 30, 54, 0.18) 100%);
  pointer-events: none; }
html[data-theme="ultra"] .workspace::after { content: ""; position: fixed; z-index: 0; inset: var(--topbar-height) 0 0 var(--sidebar-width); background-image: var(--kline-watermark); background-repeat: no-repeat; background-position: calc(100% - 3vw) 88%; background-size: min(38vw, 560px) auto; opacity: .05; filter: saturate(1.05) contrast(1.08) drop-shadow(0 0 22px rgba(87,240,211,.06)); pointer-events: none; }
html[data-theme="ultra"].sidebar-collapsed .workspace::before,
html[data-theme="ultra"].sidebar-collapsed .workspace::after { left: 0; }
html[data-theme="ultra"] .sidebar {
  background: linear-gradient(180deg, rgba(4, 12, 24, 0.98), rgba(6, 17, 31, 0.96) 48%, rgba(5, 14, 26, 0.99));
  border-right-color: rgba(104, 164, 255, 0.18);
  box-shadow: 18px 0 48px rgba(0,0,0,.28), inset -1px 0 0 rgba(112, 179, 255, 0.08);
}
html[data-theme="ultra"] .topbar {
  border-bottom-color: rgba(111, 181, 255, 0.14);
  background: linear-gradient(180deg, rgba(5, 15, 31, 0.92), rgba(4, 12, 25, 0.82));
  box-shadow: 0 16px 40px rgba(0,0,0,.22), inset 0 -1px 0 rgba(255,255,255,.03);
}
html[data-theme="ultra"] .drawer {
  border-left-color: rgba(104, 164, 255, 0.2);
  background: linear-gradient(180deg, rgba(7, 20, 38, 0.98), rgba(5, 15, 29, 0.98));
  box-shadow: -34px 0 92px rgba(0,0,0,.42), -10px 0 26px rgba(0,0,0,.16), 0 0 46px rgba(47,134,255,.14), inset 1px 0 0 rgba(255,255,255,.04);
}
html[data-theme="ultra"] .drawer::before {
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0) 16%), radial-gradient(circle at 100% 0%, rgba(87,240,211,.1), transparent 28%);
}
html[data-theme="ultra"] .drawer-head,
html[data-theme="ultra"] .setting-section { border-color: rgba(101, 156, 230, 0.16); }
html[data-theme="ultra"] .brand-mark {
  border-color: rgba(108, 227, 255, 0.34);
  background: linear-gradient(145deg, #1490ff, #0e3a79 58%, #0b2040 100%);
  box-shadow: 0 0 0 1px rgba(255,255,255,.05), 0 0 28px rgba(47, 134, 255, .33), inset 0 0 0 1px rgba(255,255,255,.18);
}
html[data-theme="ultra"] .brand-mark::after { box-shadow: 0 0 12px rgba(87,240,211,.88); }
html[data-theme="ultra"] .brand-copy strong { letter-spacing: .04em; text-shadow: 0 0 10px rgba(47,134,255,.18); }
html[data-theme="ultra"] .live-clock-open,
html[data-theme="ultra"] .profile-button,
html[data-theme="ultra"] .sync-chip,
html[data-theme="ultra"] .plan-chip,
html[data-theme="ultra"] .language-switch,
html[data-theme="ultra"] .global-search,
html[data-theme="ultra"] .icon-button,
html[data-theme="ultra"] .button-secondary,
html[data-theme="ultra"] .mini-button,
html[data-theme="ultra"] .theme-card,
html[data-theme="ultra"] .field input,
html[data-theme="ultra"] .field select,
html[data-theme="ultra"] .field textarea,
html[data-theme="ultra"] .ai-form input,
html[data-theme="ultra"] .suggestion-row button,
html[data-theme="ultra"] .switch-row,
html[data-theme="ultra"] .global-search-results,
html[data-theme="ultra"] .promotion-toggle-switch,
html[data-theme="ultra"] .promotion-active-chip,
html[data-theme="ultra"] .promotion-wallet-balance,
html[data-theme="ultra"] .promotion-free-grid > span,
html[data-theme="ultra"] .promotion-pending-topups article,
html[data-theme="ultra"] .promotion-wallet-history article,
html[data-theme="ultra"] .promotion-admin-metrics > span {
  background: linear-gradient(180deg, rgba(11, 29, 52, 0.92), rgba(6, 20, 37, 0.96));
  border-color: rgba(104, 164, 255, 0.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 14px 30px rgba(1,10,20,.16), 0 0 22px rgba(48,123,255,.08);
}
html[data-theme="ultra"] .plan-chip strong,
html[data-theme="ultra"] .global-search-submit:hover,
html[data-theme="ultra"] .global-search-submit:focus-visible,
html[data-theme="ultra"] .ai-avatar,
html[data-theme="ultra"] .mini-route > span,
html[data-theme="ultra"] .route-stop-country > .flag-code { color: var(--ultra-teal); }
html[data-theme="ultra"] .live-clock-open:hover,
html[data-theme="ultra"] .profile-button:hover,
html[data-theme="ultra"] .icon-button:hover,
html[data-theme="ultra"] .button-secondary:hover,
html[data-theme="ultra"] .mini-button:hover,
html[data-theme="ultra"] .theme-card:hover,
html[data-theme="ultra"] .suggestion-row button:hover,
html[data-theme="ultra"] .promotion-toggle-switch:hover,
html[data-theme="ultra"] .global-search:focus-within,
html[data-theme="ultra"] .field input:focus,
html[data-theme="ultra"] .field select:focus,
html[data-theme="ultra"] .field textarea:focus,
html[data-theme="ultra"] .ai-form input:focus,
html[data-theme="ultra"] .profile-button:focus-visible,
html[data-theme="ultra"] .icon-button:focus-visible,
html[data-theme="ultra"] .mini-button:focus-visible,
html[data-theme="ultra"] .button-secondary:focus-visible {
  border-color: rgba(103, 219, 255, 0.42);
  box-shadow: 0 0 0 1px rgba(87, 240, 211, 0.22), 0 0 24px rgba(47, 134, 255, 0.17), 0 12px 28px rgba(0,0,0,.18);
}
html[data-theme="ultra"] .button-primary {
  background: linear-gradient(135deg, #276bff, #1e4fe6 52%, #30c9ff 120%);
  border-color: rgba(126, 210, 255, 0.48);
  box-shadow: 0 14px 34px rgba(34, 94, 229, 0.34), 0 0 22px rgba(47, 134, 255, 0.18), inset 0 1px 0 rgba(255,255,255,.18);
}
html[data-theme="ultra"] .button-primary:hover { box-shadow: 0 18px 40px rgba(34,94,229,.38), 0 0 30px rgba(47,134,255,.26), inset 0 1px 0 rgba(255,255,255,.22); }
html[data-theme="ultra"] .nav-item { color: #b8cae6; }
html[data-theme="ultra"] .nav-item:not(.active):hover {
  color: var(--text);
  background: linear-gradient(135deg, rgba(32, 72, 124, 0.32), rgba(16, 40, 71, 0.12));
  border-color: rgba(104, 164, 255, 0.22);
  box-shadow: 0 0 0 1px rgba(91, 205, 255, 0.06), 0 12px 22px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.05);
}
html[data-theme="ultra"] .nav-item.active {
  color: #ffffff;
  background: linear-gradient(102deg, #1c62ff, #276fff 48%, #16d5ef 125%);
  border-color: rgba(126, 210, 255, 0.48);
  box-shadow: 0 0 0 1px rgba(255,255,255,.05), 0 0 26px rgba(47,134,255,.30), 0 14px 28px rgba(11,36,92,.28), inset 0 1px 0 rgba(255,255,255,.16);
}
html[data-theme="ultra"] .metric-card,
html[data-theme="ultra"] .panel,
html[data-theme="ultra"] .offer-card,
html[data-theme="ultra"] .vehicle-card,
html[data-theme="ultra"] .document-row,
html[data-theme="ultra"] .contact-card,
html[data-theme="ultra"] .auction-card,
html[data-theme="ultra"] .stat-card,
html[data-theme="ultra"] .company-card,
html[data-theme="ultra"] .app-dialog,
html[data-theme="ultra"] .market-control-dialog-shell,
html[data-theme="ultra"] .missed-message-reminder-card {
  border-color: rgba(101, 156, 230, 0.18);
  background: linear-gradient(160deg, rgba(8, 24, 43, 0.92), rgba(9, 27, 47, 0.86) 58%, rgba(6, 20, 37, 0.96));
  box-shadow: 0 24px 54px rgba(0,0,0,.24), 0 0 0 1px rgba(122,176,255,.06), 0 0 32px rgba(48,123,255,.12), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter: blur(20px);
}
html[data-theme="ultra"] .app-dialog::before,
html[data-theme="ultra"] .toast::before {
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0) 16%), radial-gradient(circle at 100% 0%, rgba(87,240,211,.12), transparent 28%);
}
html[data-theme="ultra"] .dialog-head,
html[data-theme="ultra"] .dialog-actions,
html[data-theme="ultra"] .global-search-head,
html[data-theme="ultra"] .promotion-wallet-history,
html[data-theme="ultra"] .promotion-pending-topups,
html[data-theme="ultra"] .marketplace-promotion-actions { border-color: rgba(101, 156, 230, 0.16); }
html[data-theme="ultra"] .helper-box {
  border-color: rgba(87, 240, 211, 0.28);
  background: linear-gradient(160deg, rgba(12, 37, 59, 0.78), rgba(9, 29, 48, 0.88));
  box-shadow: inset 0 0 0 1px rgba(87,240,211,.05), 0 10px 28px rgba(0,0,0,.12), 0 0 18px rgba(87,240,211,.08);
}
html[data-theme="ultra"] .topbar-credit { color: #ffd06d; text-shadow: 0 0 10px rgba(255,208,109,.22); }
html[data-theme="ultra"] .offer-card,
html[data-theme="ultra"] .vehicle-card,
html[data-theme="ultra"] .auction-card,
html[data-theme="ultra"] .contact-card,
html[data-theme="ultra"] .stat-card { position: relative; overflow: hidden; }
html[data-theme="ultra"] .offer-card::before,
html[data-theme="ultra"] .vehicle-card::before,
html[data-theme="ultra"] .auction-card::before,
html[data-theme="ultra"] .contact-card::before,
html[data-theme="ultra"] .stat-card::before,
html[data-theme="ultra"] .panel::before,
html[data-theme="ultra"] .metric-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(103, 183, 255, 0.10), transparent 34%, transparent 66%, rgba(87,240,211,.06) 100%);
}
html[data-theme="ultra"] .mini-route,
html[data-theme="ultra"] .detail-list span,
html[data-theme="ultra"] .company-card dl div,
html[data-theme="ultra"] .switch-row,
html[data-theme="ultra"] .subscription-card,
html[data-theme="ultra"] .profile-overview-stats > button {
  border-color: rgba(104, 164, 255, 0.16);
  background: linear-gradient(180deg, rgba(13, 33, 58, 0.84), rgba(8, 24, 43, 0.96));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 8px 18px rgba(0,0,0,.12);
}
html[data-theme="ultra"] .offer-card.marketplace-highlighted,
html[data-theme="ultra"] .vehicle-card.marketplace-highlighted {
  border-color: rgba(142, 221, 255, 0.52);
  background: linear-gradient(160deg, rgba(28, 77, 148, 0.34), rgba(11, 36, 67, 0.88) 42%, rgba(7, 25, 44, 0.98) 100%);
  box-shadow: 0 0 0 1px rgba(196,237,255,.10), 0 0 34px rgba(73,145,255,.32), 0 24px 48px rgba(3,10,22,.36), inset 0 1px 0 rgba(255,255,255,.08);
}
html[data-theme="ultra"] .offer-card.marketplace-highlighted::after,
html[data-theme="ultra"] .vehicle-card.marketplace-highlighted::after {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: inset 0 0 0 1px rgba(145, 215, 255, 0.16), 0 0 28px rgba(87,240,211,.10);
}
html[data-theme="ultra"] .offer-card.marketplace-highlighted .card-top h3,
html[data-theme="ultra"] .vehicle-card.marketplace-highlighted .card-top h3,
html[data-theme="ultra"] .offer-card.marketplace-highlighted .route-stop-country strong,
html[data-theme="ultra"] .vehicle-card.marketplace-highlighted .route-stop-country strong { color: #f4fbff; text-shadow: 0 0 16px rgba(101, 198, 255, .12); }
html[data-theme="ultra"] .offer-card.marketplace-highlighted .card-price,
html[data-theme="ultra"] .vehicle-card.marketplace-highlighted .card-price { color: #ffffff; text-shadow: 0 0 16px rgba(255,230,155,.15); }
html[data-theme="ultra"] .offer-card.marketplace-highlighted .mini-route,
html[data-theme="ultra"] .vehicle-card.marketplace-highlighted .mini-route,
html[data-theme="ultra"] .offer-card.marketplace-highlighted .detail-list span,
html[data-theme="ultra"] .vehicle-card.marketplace-highlighted .detail-list span {
  border-color: rgba(126, 203, 255, 0.22);
  background: linear-gradient(180deg, rgba(16, 43, 75, 0.86), rgba(10, 28, 51, 0.98));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 0 18px rgba(47,134,255,.08);
}
html[data-theme="ultra"] .toast {
  border-color: rgba(104, 164, 255, 0.26);
  background: linear-gradient(180deg, rgba(9, 26, 47, 0.97), rgba(5, 16, 31, 0.98));
  box-shadow: 0 18px 34px rgba(0,0,0,.28), 0 0 22px rgba(47,134,255,.16), inset 0 1px 0 rgba(255,255,255,.07);
}
html[data-theme="ultra"] .toast-icon {
  border-color: rgba(87,240,211,.28);
  color: var(--ultra-teal);
  background: linear-gradient(180deg, rgba(87,240,211,.16), rgba(47,134,255,.08));
  box-shadow: 0 0 14px rgba(87,240,211,.14), inset 0 1px 0 rgba(255,255,255,.08);
}
.topbar { position: sticky; z-index: 60; }
.main-content { position: relative; z-index: 1; }

.topbar-center { position: relative; }
.global-search-results { position: absolute; z-index: 150; top: calc(100% + 8px); left: 0; right: 0; max-height: min(580px,70vh); overflow-y: auto; padding: 8px; border: 1px solid var(--border-strong); border-radius: 14px; background: color-mix(in srgb,var(--panel-solid) 98%,transparent); box-shadow: 0 24px 60px rgba(0,0,0,.48); backdrop-filter: blur(18px); pointer-events: auto; isolation: isolate; }
.global-search-head { display: flex; justify-content: space-between; gap: 12px; padding: 8px 9px 10px; border-bottom: 1px solid var(--border); }.global-search-head strong { font-size: 10px; }.global-search-head small { color: var(--muted); font-size: 9px; }
.global-search-results > button { position: relative; z-index: 1; width: 100%; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; min-height: 54px; padding: 8px 9px; border: 1px solid transparent; border-radius: 10px; background: transparent; color: var(--text); text-align: left; cursor: pointer; pointer-events: auto; }.global-search-results > button:hover, .global-search-results > button.keyboard-active { border-color: color-mix(in srgb, var(--accent) 34%, transparent); background: var(--accent-soft); box-shadow: inset 3px 0 0 var(--accent); }.global-search-results > button:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }.global-search-results > button > span { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 9px; background: var(--panel-alt); color: var(--accent-2); }.global-search-results > button svg { width: 15px; height: 15px; }.global-search-results > button div { display: grid; gap: 3px; min-width: 0; }.global-search-results > button strong { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }.global-search-results > button small { overflow: hidden; color: var(--muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }.global-search-results > button em { color: var(--accent-2); font-size: 8.5px; font-style: normal; font-weight: 800; text-transform: uppercase; }.global-search-empty { padding: 25px 14px; color: var(--muted); font-size: 10px; text-align: center; }

.filter-builder-fields { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; max-height: 56vh; overflow-y: auto; padding: 2px 4px 8px 0; }
.filter-builder-fields label { display: grid; gap: 5px; color: var(--muted); font-size: 9px; }
.filter-builder-fields input, .filter-builder-fields select { width: 100%; min-width: 0; height: 40px; padding: 0 10px; border: 1px solid var(--border); border-radius: 9px; outline: 0; background: var(--input); color: var(--text); }
.filter-builder-fields input:focus, .filter-builder-fields select:focus { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }

.settings-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }.settings-layout .full-span { grid-column: 1 / -1; }
.settings-panel { padding: 18px; border: 1px solid var(--border); border-radius: 16px; background: var(--panel); box-shadow: var(--shadow); }
.scale-settings { display: grid; gap: 8px; }.scale-setting { display: grid; grid-template-columns: minmax(170px,1fr) minmax(150px,.8fr) 58px; align-items: center; gap: 12px; padding: 10px; border-radius: 11px; background: var(--panel-alt); }.scale-setting > span { display: grid; gap: 3px; }.scale-setting strong { font-size: 10px; }.scale-setting small { color: var(--muted); font-size: 9px; }.scale-setting input { width: 100%; accent-color: var(--accent); }.scale-setting output { color: var(--accent-2); font-size: 10px; font-weight: 850; text-align: right; }
.profile-overview-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; }.profile-overview-stats > button { display: grid; gap: 3px; width: 100%; padding: 10px; border: 1px solid transparent; border-radius: 10px; background: var(--panel-alt); color: var(--text); text-align: left; font: inherit; cursor: pointer; transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease; }.profile-overview-stats > button:hover { transform: translateY(-1px); border-color: var(--accent); background: color-mix(in srgb, var(--panel-alt) 82%, var(--accent-soft)); box-shadow: 0 7px 18px var(--accent-glow); }.profile-overview-stats > button:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }.profile-overview-stats small { color: var(--muted); font-size: 8.5px; }.profile-overview-stats strong { font-size: 14px; }.profile-overview-stats em { color: var(--muted); font-size: 8.5px; font-style: normal; }.profile-badge-row { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0; }.profile-review-snippet { display: grid; gap: 5px; margin: 11px 0; padding: 11px; border-left: 3px solid var(--accent); border-radius: 8px; background: var(--panel-alt); }.profile-review-snippet strong { font-size: 10px; }.profile-review-snippet p { margin: 0; color: var(--text-2); font-size: 10px; line-height: 1.5; }.profile-review-snippet small { color: var(--muted); font-size: 8.5px; line-height: 1.5; }
.own-rating-summary { display: grid; grid-template-columns: 170px 1fr; gap: 14px; margin-bottom: 14px; }.own-rating-score, .own-rating-note { padding: 16px; border: 1px solid var(--border); border-radius: 14px; background: var(--panel-alt); }.own-rating-score { display: grid; align-content: center; justify-items: center; gap: 5px; text-align: center; }.own-rating-score strong { font-size: 31px; }.own-rating-score span { color: #f3bd31; font-size: 18px; letter-spacing: 2px; }.own-rating-score small, .own-rating-note p, .own-rating-card small { color: var(--muted); }.own-rating-note h3 { margin: 0 0 7px; }.own-rating-note p { margin: 0; line-height: 1.6; }.own-rating-list { display: grid; gap: 10px; }.own-rating-card { padding: 14px; border: 1px solid var(--border); border-radius: 13px; background: var(--panel-alt); }.own-rating-card header { display: flex; justify-content: space-between; gap: 10px; align-items: start; margin-bottom: 8px; }.own-rating-card header span { color: #f3bd31; letter-spacing: 1px; }.own-rating-card p { margin: 0 0 8px; color: var(--text-2); line-height: 1.55; }
@media (max-width: 720px) { .own-rating-summary { grid-template-columns: 1fr; } }

.plan-dialog-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }.plan-dialog-card { display: grid; align-content: start; gap: 10px; padding: 12px; border: 1px solid var(--border); border-radius: 15px; background: var(--panel-alt); }.plan-dialog-card.selected { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }.plan-dialog-card img { width: 100%; aspect-ratio: 16/9; object-fit: cover; border-radius: 10px; background: var(--bg-soft); }.plan-dialog-card h3 { margin: 0; font-size: 18px; }.plan-price { color: var(--accent-2); font-size: 13px; }.plan-dialog-card ul { display: grid; gap: 8px; min-height: 94px; margin: 0; padding: 0; list-style: none; }.plan-dialog-card li { display: flex; align-items: center; gap: 7px; color: var(--text-2); font-size: 10px; }.plan-dialog-card li svg { width: 12px; height: 12px; color: var(--success); }
.notification-list { display: grid; gap: 7px; }.notification-item { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 11px; padding: 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); color: var(--text); text-align: left; cursor: pointer; }.notification-item:hover { border-color: var(--accent); transform: translateX(2px); }.notification-item > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; background: var(--accent-soft); color: var(--accent-2); }.notification-item svg { width: 17px; height: 17px; }.notification-item div { display: grid; gap: 3px; }.notification-item strong { font-size: 10px; }.notification-item small, .notification-item time { color: var(--muted); font-size: 9px; }.notification-item.read { opacity: .58; }

/* Aktualizace 16 */
.language-switch { position: relative; min-height: 35px; display: inline-flex; align-items: center; gap: 6px; padding: 4px 8px; border: 1px solid var(--border); border-radius: 12px; background: color-mix(in srgb, var(--panel-alt) 92%, transparent); box-shadow: 0 8px 20px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.04); }
.language-switch img { width: 20px; height: 14px; border-radius: 3px; object-fit: cover; box-shadow: 0 2px 8px rgba(0,0,0,.16); }
.language-switch select { width: 90px; border: 0; background: transparent; color: var(--text); font: inherit; font-size: 10px; outline: 0; }
.language-switch-enhanced { position: relative; z-index: 630; min-width: 178px; padding: 0; overflow: visible; isolation: isolate; }
.language-switch-native { position: absolute !important; inset: auto auto auto 0; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
.language-switch-trigger { width: 100%; min-height: 40px; display: inline-flex; align-items: center; gap: 10px; padding: 7px 10px; border: 0; border-radius: inherit; background: linear-gradient(180deg, color-mix(in srgb, var(--panel) 92%, transparent), color-mix(in srgb, var(--panel-alt) 94%, transparent)); color: var(--text); cursor: pointer; text-align: left; box-shadow: inset 0 1px 0 rgba(255,255,255,.05); transition: border-color 160ms ease, box-shadow 180ms ease, background-color 180ms ease, transform 160ms ease; }
.language-switch-trigger:hover, .language-switch-enhanced.open .language-switch-trigger { box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 10px 26px color-mix(in srgb,var(--accent-glow) 14%,transparent); }
.language-switch-trigger:focus-visible { outline: none; box-shadow: 0 0 0 3px var(--accent-soft), inset 0 1px 0 rgba(255,255,255,.06); }
.language-switch-trigger-copy { min-width: 0; display: grid; flex: 1; gap: 1px; }
.language-switch-current-label { font-size: 10.5px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.language-switch-current-group { color: var(--muted); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.language-switch-chevron { color: var(--muted); font-size: 12px; transition: transform 180ms ease, color 180ms ease; }
.language-switch-enhanced.open .language-switch-chevron { transform: rotate(180deg); color: var(--accent-2); }
.language-switch-menu { position: fixed; top: 0; left: 0; width: 240px; max-height: min(72vh, 520px); overflow: auto; padding: 10px; border: 1px solid color-mix(in srgb,var(--accent) 16%,var(--border)); border-radius: 18px; background: color-mix(in srgb, var(--panel-solid) 97%, transparent); box-shadow: 0 30px 72px rgba(0,0,0,.38), 0 0 0 1px rgba(255,255,255,.03), 0 0 28px color-mix(in srgb,var(--accent-glow) 12%,transparent); backdrop-filter: blur(18px); opacity: 0; visibility: hidden; transform: translateY(8px) scale(.985); transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease; z-index: 2147483600; isolation: isolate; }
.language-switch-menu.open { opacity: 1; visibility: visible; transform: translateY(0) scale(1); }
.language-switch-menu::-webkit-scrollbar { width: 10px; }
.language-switch-menu::-webkit-scrollbar-thumb { background: color-mix(in srgb,var(--accent) 18%,transparent); border-radius: 999px; border: 2px solid transparent; background-clip: padding-box; }
.language-switch-group + .language-switch-group { margin-top: 10px; padding-top: 10px; border-top: 1px solid color-mix(in srgb,var(--border) 82%,transparent); }
.language-switch-group-title { margin: 0 2px 7px; color: var(--muted); font-size: 8px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.language-switch-option { width: 100%; display: grid; grid-template-columns: 22px minmax(0,1fr); align-items: center; gap: 10px; min-height: 36px; padding: 7px 9px; border: 1px solid transparent; border-radius: 12px; background: transparent; color: var(--text); font: inherit; font-size: 11px; text-align: left; cursor: pointer; transition: background-color 150ms ease, border-color 150ms ease, box-shadow 180ms ease, transform 150ms ease; }
.language-switch-option img { width: 18px; height: 13px; border-radius: 2px; }
.language-switch-option span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.language-switch-option:hover, .language-switch-option:focus-visible { outline: none; transform: translateY(-1px); border-color: color-mix(in srgb,var(--accent) 26%,var(--border)); background: color-mix(in srgb,var(--accent-soft) 42%,transparent); box-shadow: 0 10px 20px color-mix(in srgb,var(--accent-glow) 10%,transparent); }
.language-switch-option.is-active { border-color: color-mix(in srgb,var(--accent) 42%,var(--border)); background: linear-gradient(135deg, color-mix(in srgb,var(--accent-soft) 82%,transparent), color-mix(in srgb,var(--accent) 8%,var(--panel-alt))); box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 0 0 1px color-mix(in srgb,var(--accent) 8%,transparent); }
.language-switch-option.is-active span { font-weight: 800; }
.topbar-credit { display:inline-grid; justify-items:center; align-content:center; gap:1px; min-height:35px; padding:3px 5px; border:0; background:transparent; color:#d9b75b; font:inherit; font-size:10.5px; font-weight:850; letter-spacing:.015em; line-height:1.05; white-space:nowrap; cursor:pointer; text-shadow:0 0 8px rgba(217,183,91,.24); transition:color 160ms ease,text-shadow 160ms ease,transform 160ms ease,opacity 160ms ease; }
.topbar-credit-label { display:block; color:inherit; font:inherit; font-size:10.5px; font-weight:900; }
.topbar-credit-balance { display:block; max-width:78px; overflow:hidden; text-overflow:ellipsis; color:#f3e2aa; font-size:9px; font-weight:900; letter-spacing:.01em; line-height:1.1; }
.topbar-credit:hover,.topbar-credit:focus-visible { color:#f0cf72; text-shadow:0 0 6px rgba(240,207,114,.52),0 0 15px rgba(217,183,91,.28); transform:translateY(-1px); outline:none; }
.topbar-credit:hover .topbar-credit-balance,.topbar-credit:focus-visible .topbar-credit-balance { color:#fff1bf; }
.topbar-credit.loading { opacity:.62; }
.topbar-credit.test-mode { color:#c6a954; }
.topbar-credit.test-mode .topbar-credit-balance { color:#d8c47c; }
.auth-language-switch { position: fixed; z-index: 1004; top: 18px; right: 18px; box-shadow: var(--shadow); }
.metric-card[data-view-link] { cursor: pointer; transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease; }
.metric-card[data-view-link]:hover, .metric-card[data-view-link]:focus-visible { transform: translateY(-3px); border-color: var(--accent); box-shadow: 0 16px 32px var(--accent-glow); outline: none; }
.top-orb { display: inline-grid; place-items: center; width: 31px; height: 31px; margin-left: 6px; border: 1px solid #ffe680; border-radius: 50%; background: radial-gradient(circle at 35% 30%, #fff5a6, #f5c33e 55%, #7a4a00); color: #271600; font-size: 9px; font-weight: 950; box-shadow: 0 0 14px rgba(255, 205, 55, .72), inset 0 1px 0 rgba(255,255,255,.9); vertical-align: middle; }
.converted-price { display: block; margin-top: 3px; color: var(--accent-2); font-size: 9px; font-weight: 650; white-space: nowrap; }
.translated-bubble { margin-top: 7px; padding-top: 7px; border-top: 1px dashed color-mix(in srgb, currentColor 25%, transparent); opacity: .86; }
.translated-bubble small { display: block; margin-bottom: 3px; color: var(--accent-2); font-size: 8.5px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.translated-bubble p { margin: 0; }
.message-avatar { width: 27px !important; height: 27px !important; flex: 0 0 27px; font-size: 8.5px !important; }
.dock-message-row { display: flex; align-items: flex-end; gap: 6px; }
.dock-message-row.mine { flex-direction: row-reverse; }
.dock-message-stack { display: grid; gap: 3px; max-width: 86%; min-width: 0; }
.dock-message-row.mine .dock-message-stack { justify-items: end; }
.dock-message-stack > .dock-message { max-width: 100%; }
.dock-message-meta { display: inline-flex; align-items: center; gap: 5px; min-height: 12px; padding: 0 4px; color: var(--muted); font-size: 8.2px; line-height: 1; }
.dock-message-row.mine .dock-message-meta { justify-content: flex-end; }
.dock-message-meta time { color: inherit; font-size: inherit; }
.dock-message-meta .message-receipt.compact { margin: 0; }
.dock-message-meta .message-receipt.compact b { font-size: 10px; }
.dock-chat { transform-origin: bottom right; transition: width 220ms cubic-bezier(.2,.8,.2,1), flex-basis 220ms cubic-bezier(.2,.8,.2,1), transform 200ms ease, opacity 200ms ease; animation: dock-chat-enter 230ms cubic-bezier(.2,.85,.2,1) both; }
.dock-chat.dock-chat-stable { animation: none !important; }
.dock-chat.closing { pointer-events: none; animation: dock-chat-exit 210ms ease both; }
@keyframes dock-chat-enter { from { opacity: 0; transform: translateY(34px) scale(.94); } to { opacity: 1; transform: none; } }
@keyframes dock-chat-exit { from { opacity: 1; transform: none; } to { opacity: 0; transform: translateY(36px) scale(.92); } }
.avatar, .profile-image { position: relative; }
.loyalty-badge { display: inline-flex; align-items: center; gap: 5px; width: fit-content; min-height: 25px; padding: 3px 7px; border: 1px solid rgba(180,195,220,.35); border-radius: 99px; background: #15233a; color: #dce7f7; box-shadow: 0 5px 14px rgba(0,0,0,.26); line-height: 1; }
.loyalty-badge > b { display: grid; place-items: center; min-width: 16px; font-style: normal; font-size: 12px; }
.loyalty-badge > b > img { display: block; width: auto; height: 24px; object-fit: contain; }
.loyalty-badge > em { font-size: 9px; font-style: normal; font-weight: 850; white-space: nowrap; }
.loyalty-badge.icon-only { justify-content: center; width: 25px; height: 31px; min-height: 31px; padding: 0; border: 0; background: transparent; box-shadow: none; }
.loyalty-badge.icon-only > b > img { height: 31px; }
.avatar > .loyalty-badge.icon-only, .profile-image > .loyalty-badge.icon-only { position: absolute; z-index: 4; top: -7px; right: -7px; }
.avatar > .loyalty-badge.icon-only { width: 18px; height: 26px; min-height: 26px; top: -8px; right: -6px; }.avatar > .loyalty-badge.icon-only > b { min-width: 10px; font-size: 10px; }.avatar > .loyalty-badge.icon-only > b > img { height: 26px; }
.profile-image > .loyalty-badge.icon-only { width: 22px; height: 32px; min-height: 32px; }.profile-image > .loyalty-badge.icon-only > b { min-width: 12px; font-size: 10px; }.profile-image > .loyalty-badge.icon-only > b > img { height: 32px; }
.badge-bronze { border-color: #b88357; background: linear-gradient(145deg,#69432b,#2d211b); color: #ffd0a3; }.badge-yellow { border-color: #e8c94d; background: linear-gradient(145deg,#806813,#352d10); color: #fff09a; }.badge-red { border-color: #f27676; background: linear-gradient(145deg,#7a2429,#351317); color: #ffc1c1; }.badge-green { border-color: #58d7a8; background: linear-gradient(145deg,#17684d,#102d25); color: #b9ffe5; }.badge-silver { border-color: #cbd5e3; background: linear-gradient(145deg,#59677b,#252c37); color: #f4f8ff; }.badge-gold { border-color: #f0c75e; background: linear-gradient(145deg,#9b6816,#3f2a0d); color: #fff0a9; }.badge-redgold { border-color: #ffb34f; background: linear-gradient(145deg,#8f2029,#7a5314); color: #fff1c2; }.badge-diamond { border-color: #9be7ff !important; background: linear-gradient(135deg, rgba(95,202,255,.22), rgba(255,255,255,.1)) !important; color: #dff8ff !important; box-shadow: 0 0 18px rgba(95,202,255,.28); }
.badge-legend { display: grid; gap: 7px; }.badge-legend article { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 9px; padding: 8px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-solid); }.badge-legend article > div { display: grid; gap: 3px; }.badge-legend strong { font-size: 10px; }.badge-legend small { color: var(--muted); font-size: 8.5px; }.badge-legend p { margin: 0; color: var(--text-2); font-size: 9px; line-height: 1.45; }
.badge-track-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.badge-track-grid > section { min-width: 0; padding: 12px; border: 1px solid var(--border); border-radius: 14px; background: var(--panel-alt); }
.badge-track-grid h4 { margin: 0 0 10px; font-size: 12px; }
.transport-status-cards { display: grid; grid-template-columns: repeat(7, minmax(105px, 1fr)); gap: 8px; margin-bottom: 12px; overflow-x: auto; }
.transport-status-cards button { display: grid; gap: 3px; min-width: 105px; padding: 10px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel); color: var(--text-2); text-align: left; cursor: pointer; }
.transport-status-cards button:hover, .transport-status-cards button.active { border-color: var(--accent); background: var(--accent-soft); color: var(--text); }
.transport-status-cards strong { font-size: 15px; }
.review-mini-summary { display: flex; gap: 6px; margin: 10px 0; }
.review-mini-summary span { padding: 4px 8px; border-radius: 99px; font-size: 9px; font-weight: 850; }
.review-mini-summary .positive { background: rgba(44,190,125,.14); color: var(--success); }
.review-mini-summary .neutral { background: rgba(246,190,63,.13); color: #d9a727; }
.review-mini-summary .negative { background: rgba(238,84,96,.13); color: var(--danger); }
.own-vehicle-table { overflow-x: auto; border: 1px solid var(--border); border-radius: 15px; background: var(--panel); }
.own-vehicle-row { min-width: 1050px; display: grid; grid-template-columns: 1.25fr .72fr .72fr .82fr 1.5fr .7fr 1fr; align-items: center; gap: 10px; padding: 11px 13px; border-bottom: 1px solid var(--border); color: var(--text-2); font-size: 10px; }
.own-vehicle-row:last-child { border-bottom: 0; }
.own-vehicle-row.head { background: var(--panel-alt); color: var(--muted); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.own-vehicle-title { display: flex; align-items: center; gap: 8px; }
.own-vehicle-title b { width: 46px; height: 34px; display: grid; place-items: center; overflow: hidden; border-radius: 8px; background: var(--accent-soft); font-size: 20px; }
.own-vehicle-title img { width: 100%; height: 100%; object-fit: cover; }
.mini-button.danger { color: var(--danger); }
.menu-editor-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.menu-editor-group { padding: 15px; border: 1px solid var(--border); border-radius: 15px; background: var(--panel); }
.menu-editor-group h3 { margin: 0 0 12px; }
.menu-sort-list { display: grid; gap: 7px; min-height: 80px; }
.menu-sort-list > button { display: grid; grid-template-columns: 18px 1fr auto; align-items: center; gap: 9px; padding: 10px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); color: var(--text); text-align: left; cursor: grab; }
.menu-sort-list > button:active { cursor: grabbing; opacity: .72; }
.menu-sort-list svg { width: 16px; height: 16px; color: var(--accent-2); }
.menu-sort-list small { color: var(--muted); font-size: 9px; }
.location-choice { display: grid; gap: 13px; }
.location-choice .choice-card { min-height: 105px; }
.button.location-active { border-color: var(--success); background: color-mix(in srgb, var(--success) 13%, var(--panel-alt)); color: var(--success); box-shadow: 0 0 0 3px color-mix(in srgb, var(--success) 9%, transparent); }
.location-distance-chip { display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 5px; width: fit-content; margin: 8px 0; padding: 6px 8px; border: 1px solid color-mix(in srgb, var(--success) 28%, transparent); border-radius: 9px; background: color-mix(in srgb, var(--success) 10%, transparent); color: var(--success); }
.location-distance-chip svg { width: 12px; height: 12px; }.location-distance-chip strong { font-size: 10px; }.location-distance-chip small { color: var(--text-2); font-size: 9px; }
.review-eligibility-panel { margin-bottom: 14px; padding: 15px; border: 1px solid var(--border); border-radius: 15px; background: var(--panel); box-shadow: var(--shadow); }
.review-eligibility-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin: 11px 0; }
.review-eligibility-list article { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 10px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); }
.review-eligibility-list article > div { display: grid; gap: 4px; min-width: 0; }.review-eligibility-list small { overflow: hidden; color: var(--muted); font-size: 8.5px; text-overflow: ellipsis; white-space: nowrap; }.review-eligibility-list strong { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }.review-eligibility-list .button { min-height: 34px; padding-inline: 9px; font-size: 9px; }
.clickable-review-card { cursor: pointer; transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease; }.clickable-review-card:hover, .clickable-review-card:focus-visible { transform: translateY(-2px); border-color: var(--accent); box-shadow: 0 14px 32px var(--accent-glow); outline: none; }
.app-rating-invite { position:relative; isolation:isolate; display:grid; gap:14px; margin:0 0 16px; padding:18px 19px; overflow:hidden; border:1px solid color-mix(in srgb,#f1c652 52%,var(--border)); border-radius:18px; background:linear-gradient(145deg,color-mix(in srgb,#f1c652 8%,var(--panel)),color-mix(in srgb,var(--accent) 5%,var(--panel-alt))); box-shadow:0 18px 42px rgba(0,0,0,.17),0 0 30px rgba(241,198,82,.12),inset 0 1px 0 rgba(255,255,255,.07); }
.app-rating-invite::before { content:""; position:absolute; inset:1px; z-index:-1; border-radius:17px; background:linear-gradient(180deg,rgba(255,255,255,.065),transparent 25%); pointer-events:none; }
.app-rating-invite-glow { position:absolute; z-index:-1; top:-95px; right:-65px; width:250px; height:220px; border-radius:50%; background:radial-gradient(circle,rgba(246,202,78,.24),transparent 67%); filter:blur(12px); pointer-events:none; animation:app-rating-glow 4.6s ease-in-out infinite; }
.app-rating-invite-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.app-rating-invite-head > div { display:grid; gap:3px; }
.app-rating-invite-head h3 { margin:0; color:var(--text); font-size:16px; }
.app-rating-invite-head p { max-width:720px; margin:0; color:var(--text-2); font-size:9px; line-height:1.55; }
.app-rating-invite-head > span { flex:0 0 auto; padding:6px 9px; border:1px solid rgba(241,198,82,.34); border-radius:999px; background:rgba(241,198,82,.08); color:#e7bf51; font-size:8px; font-weight:850; box-shadow:0 0 16px rgba(241,198,82,.09); }
.app-rating-form { display:grid; grid-template-columns:minmax(250px,.8fr) minmax(300px,1.4fr); gap:12px; align-items:stretch; }
.app-rating-stars { display:grid; grid-template-columns:repeat(5,1fr); gap:6px; margin:0; padding:11px; border:1px solid var(--border); border-radius:13px; background:color-mix(in srgb,var(--panel-alt) 90%,transparent); }
.app-rating-stars legend { grid-column:1/-1; padding:0 5px; color:var(--muted); font-size:8px; font-weight:800; }
.app-rating-stars label { position:relative; display:grid; place-items:center; gap:1px; min-height:55px; border:1px solid var(--border); border-radius:10px; background:var(--panel-solid); color:#6f7784; cursor:pointer; transition:transform 160ms ease,border-color 160ms ease,background 160ms ease,color 160ms ease,box-shadow 180ms ease; }
.app-rating-stars label:hover { transform:translateY(-2px); border-color:rgba(241,198,82,.5); color:#e9c150; box-shadow:0 8px 18px rgba(0,0,0,.12),0 0 14px rgba(241,198,82,.1); }
.app-rating-stars input { position:absolute; opacity:0; pointer-events:none; }
.app-rating-stars label.selected,.app-rating-stars label:has(input:checked) { transform:translateY(-2px); border-color:#dcb13b; background:rgba(241,198,82,.13); color:#ffd45f; box-shadow:0 10px 22px rgba(0,0,0,.14),0 0 20px rgba(241,198,82,.18),inset 0 1px 0 rgba(255,255,255,.05); }
.app-rating-stars label span { font-size:22px; line-height:1; filter:drop-shadow(0 4px 7px rgba(0,0,0,.2)); }
.app-rating-stars label small { color:inherit; font-size:7px; font-weight:850; }
.app-rating-comment { display:grid; align-content:start; gap:5px; }
.app-rating-comment > span { color:var(--text-2); font-size:8px; font-weight:800; }
.app-rating-comment textarea { min-height:83px; padding:10px 11px; resize:vertical; border:1px solid var(--border); border-radius:11px; outline:0; background:var(--input); color:var(--text); font:inherit; font-size:9px; line-height:1.5; box-shadow:inset 0 2px 8px rgba(0,0,0,.08); transition:border-color 160ms ease,box-shadow 160ms ease; }
.app-rating-comment textarea:focus { border-color:color-mix(in srgb,#e7bc46 62%,var(--border)); box-shadow:0 0 0 3px rgba(231,188,70,.08),inset 0 2px 8px rgba(0,0,0,.08); }
.app-rating-comment small { color:var(--muted); font-size:7.5px; }
.app-rating-submit { grid-column:1/-1; display:flex; align-items:center; justify-content:flex-end; gap:12px; padding-top:2px; }
.app-rating-submit > span { margin-right:auto; color:#c7a642; font-size:8px; font-weight:800; }
.admin-app-rating-summary { display:grid; grid-template-columns:180px 200px minmax(320px,1fr); gap:10px; margin-bottom:14px; }
.admin-app-rating-summary > div { display:grid; align-content:center; gap:3px; min-height:112px; padding:14px; border:1px solid var(--border); border-radius:14px; background:var(--panel-alt); box-shadow:var(--shadow); }
.admin-app-rating-summary > div > small { color:var(--muted); font-size:8px; }
.admin-app-rating-summary > div > strong { color:var(--text); font-size:27px; }
.admin-app-rating-summary > div > span { color:#e9bf49; font-size:11px; letter-spacing:1px; }
.admin-app-rating-bars { gap:5px!important; }
.admin-app-rating-bars > span { display:grid; grid-template-columns:34px 1fr 24px; align-items:center; gap:7px; color:var(--muted); font-size:7.5px; }
.admin-app-rating-bars b { color:#d7b54b; font-size:7.5px; }
.admin-app-rating-bars i { height:6px; overflow:hidden; border-radius:999px; background:var(--border); }
.admin-app-rating-bars em { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#c99722,#f3cf60); box-shadow:0 0 9px rgba(235,192,65,.22); }
.admin-app-rating-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.admin-app-rating-list article { display:grid; gap:9px; padding:14px; border:1px solid var(--border); border-radius:14px; background:var(--panel-alt); box-shadow:0 11px 28px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.035); }
.admin-app-rating-list header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.admin-app-rating-list header > div { display:grid; gap:2px; min-width:0; }
.admin-app-rating-list header strong { overflow:hidden; color:var(--text); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.admin-app-rating-list header small { overflow:hidden; color:var(--muted); font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
.admin-app-rating-list header > span { flex:0 0 auto; color:#f0c64c; font-size:13px; letter-spacing:1px; }
.admin-app-rating-list p { margin:0; color:var(--text-2); font-size:9px; line-height:1.55; }
.admin-app-rating-list footer { display:flex; justify-content:space-between; gap:10px; padding-top:7px; border-top:1px solid var(--border); color:var(--muted); font-size:7.5px; }
@keyframes app-rating-glow { 0%,100% { transform:scale(.94); opacity:.58; } 50% { transform:scale(1.08); opacity:.9; } }
@media (max-width:900px) { .app-rating-form { grid-template-columns:1fr; } .admin-app-rating-summary { grid-template-columns:1fr 1fr; } .admin-app-rating-bars { grid-column:1/-1; } }
@media (max-width:640px) { .app-rating-invite-head { flex-direction:column; } .app-rating-stars { gap:4px; } .app-rating-stars label { min-height:48px; } .app-rating-stars label span { font-size:18px; } .app-rating-submit { align-items:stretch; flex-direction:column; } .app-rating-submit > span { margin:0; } .admin-app-rating-summary,.admin-app-rating-list { grid-template-columns:1fr; } .admin-app-rating-bars { grid-column:auto; } .admin-app-rating-list footer { flex-direction:column; } }
.review-target { display: grid; gap: 5px; margin-bottom: 13px; padding: 12px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); }.review-target small { color: var(--muted); font-size: 9px; }.review-target strong { font-size: 13px; }
.star-rating { display: grid; justify-items: center; gap: 8px; margin: 0 0 14px; padding: 14px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); }.star-rating legend { padding: 0 7px; color: var(--text-2); font-size: 10px; font-weight: 800; }.star-rating > div { display: flex; flex-direction: row-reverse; justify-content: center; gap: 5px; }.star-rating input { position: absolute; opacity: 0; pointer-events: none; }.star-rating label { color: color-mix(in srgb,var(--muted) 48%,transparent); font-size: 37px; line-height: 1; cursor: pointer; transition: color 120ms ease, transform 120ms ease, text-shadow 120ms ease; }.star-rating input:checked ~ label, .star-rating label:hover, .star-rating label:hover ~ label { color: var(--warning); text-shadow: 0 0 13px color-mix(in srgb,var(--warning) 42%,transparent); }.star-rating label:hover { transform: scale(1.12); }.star-rating output { color: var(--warning); font-size: 12px; font-weight: 900; }
.achievement-overlay[hidden] { display: none; }
.achievement-overlay { position: fixed; z-index: 5000; inset: 0; display: grid; place-items: center; padding: 20px; background: rgba(1,7,19,.9); backdrop-filter: blur(10px); }
.achievement-card { position: relative; width: min(560px, 100%); overflow: hidden; padding: 38px; border: 1px solid #f6d77e; border-radius: 25px; background: linear-gradient(145deg, #071226, #0d2343); color: #fff; text-align: center; box-shadow: 0 30px 100px rgba(0,0,0,.6), 0 0 0 1px rgba(255,226,139,.16), 0 0 26px rgba(240,199,94,.42), 0 0 68px rgba(240,199,94,.24), 0 0 118px rgba(185,123,19,.13); animation: achievement-gold-breathe 3.8s ease-in-out infinite; }
.achievement-card::before { content: ""; position: absolute; z-index: 0; top: -30%; bottom: -30%; left: -36%; width: 22%; transform: translateX(-170%) skewX(-18deg); background: linear-gradient(90deg, transparent, rgba(255,245,203,.08) 24%, rgba(255,231,151,.38) 50%, rgba(255,255,255,.18) 63%, transparent); filter: blur(1px); pointer-events: none; animation: achievement-gold-shine 4.6s ease-in-out infinite; }
.achievement-card::after { content: ""; position: absolute; z-index: 0; inset: 0; border-radius: inherit; box-shadow: inset 0 0 18px rgba(255,226,139,.14), inset 0 0 42px rgba(185,123,19,.08); pointer-events: none; }
.achievement-card > * { position: relative; z-index: 1; }
.achievement-glow { position: absolute; z-index: 0; inset: -50% 20% auto; height: 300px; background: radial-gradient(circle, rgba(240,199,94,.31), rgba(240,199,94,.10) 42%, transparent 70%); pointer-events: none; animation: achievement-gold-halo 3.8s ease-in-out infinite; }
@keyframes achievement-gold-breathe { 0%,100% { box-shadow: 0 30px 100px rgba(0,0,0,.6), 0 0 0 1px rgba(255,226,139,.16), 0 0 22px rgba(240,199,94,.34), 0 0 58px rgba(240,199,94,.19), 0 0 105px rgba(185,123,19,.10); } 50% { box-shadow: 0 30px 100px rgba(0,0,0,.6), 0 0 0 1px rgba(255,235,174,.26), 0 0 34px rgba(240,199,94,.53), 0 0 82px rgba(240,199,94,.29), 0 0 132px rgba(185,123,19,.16); } }
@keyframes achievement-gold-shine { 0%,18% { transform: translateX(-170%) skewX(-18deg); opacity: 0; } 28% { opacity: .9; } 56% { transform: translateX(770%) skewX(-18deg); opacity: .58; } 64%,100% { transform: translateX(770%) skewX(-18deg); opacity: 0; } }
@keyframes achievement-gold-halo { 0%,100% { opacity: .72; transform: scale(.96); } 50% { opacity: 1; transform: scale(1.06); } }
.achievement-symbol { position: relative; width: 92px; height: 92px; display: grid; place-items: center; margin: 18px auto 8px; border: 2px solid #f5d477; border-radius: 50%; background: radial-gradient(circle at 35% 30%, #fff2ad, #b97b13 58%, #342000); color: #2b1800; font-size: 44px; box-shadow: 0 0 35px rgba(245,212,119,.45); cursor: pointer; transition: transform 160ms ease, box-shadow 160ms ease; }
.achievement-symbol > img { display: block; width: auto; height: 74px; object-fit: contain; }
.achievement-symbol:hover, .achievement-symbol:focus-visible { transform: scale(1.08); box-shadow: 0 0 52px rgba(245,212,119,.68); outline: 3px solid rgba(255,255,255,.72); outline-offset: 3px; }.achievement-badge-hint { position: relative; display: block; margin-bottom: 15px; color: #f5d477; font-size: 9px; }
.badge-information-highlight { animation: badge-information-highlight 2.2s ease; }
@keyframes badge-information-highlight { 0%,100% { box-shadow: var(--shadow); } 20%,70% { border-color: #f0c75e; box-shadow: 0 0 0 4px rgba(240,199,94,.16), 0 0 36px rgba(240,199,94,.22); } }
.achievement-card h2 { margin: 0 0 10px; font-size: 28px; }
.achievement-card > p:not(.eyebrow) { color: #c9d6e8; line-height: 1.65; }
.achievement-progress-copy { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px; margin: 20px 0; }
.achievement-progress-copy span { display: grid; gap: 5px; padding: 13px; border: 1px solid rgba(255,255,255,.12); border-radius: 12px; background: rgba(255,255,255,.05); }
.achievement-progress-copy small { color: #90a6c4; font-size: 9px; }
.filter-builder { width: min(1080px, 90vw); }
.filter-builder-item { display: grid; align-content: start; gap: 6px; padding: 9px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); }
.filter-builder-item > label:not(.filter-field-toggle) { margin: 0; }
.filter-field-toggle { display: flex; align-items: center; gap: 6px; color: var(--accent-2); font-size: 9px; font-weight: 850; }
.filter-field-toggle input { accent-color: var(--accent); }
.builder-live-count { position: sticky; bottom: 0; display: flex; justify-content: center; gap: 4px; padding: 9px 12px; border: 1px solid var(--accent); border-radius: 10px; background: var(--panel-solid); color: var(--text-2); font-size: 10px; box-shadow: 0 -8px 20px rgba(0,0,0,.13); }
.builder-live-count strong { color: var(--accent-2); }
.app-dialog:has(.filter-builder) { width: min(1180px, 94vw); max-width: none; }
.app-dialog:has(.filter-builder) .dialog-content { max-height: 52vh; }
.app-dialog:has(.filter-builder)::backdrop { background: rgba(1, 7, 19, .48); backdrop-filter: none; }

/* Správce filtrů zůstává nahoře a končí před první řadou nabídek. */
.app-dialog:has(.filter-builder) { inset: 0 auto auto 50%; width: min(1540px, calc(100vw - 16px)); max-height: min(420px, 42vh); margin: 0; border-top: 0; border-radius: 0 0 18px 18px; transform: translateX(-50%); }
.app-dialog:has(.filter-builder)[open] { transform: translateX(-50%); }
.app-dialog:has(.filter-builder) > form { max-height: min(420px, 42vh); }
.app-dialog:has(.filter-builder) .dialog-head { padding: 9px 18px; }
.app-dialog:has(.filter-builder) .dialog-head h2 { font-size: 17px; }
.app-dialog:has(.filter-builder) .dialog-content { min-height: 0; max-height: none; overflow: hidden; padding: 8px 18px; }
.app-dialog:has(.filter-builder) .dialog-actions { padding: 8px 18px; }
.app-dialog:has(.filter-builder)::backdrop { background: rgba(1, 7, 19, .2); backdrop-filter: none; }
.filter-builder { width: 100%; max-height: 100%; gap: 6px; }
.filter-builder > .field { grid-template-columns: 150px minmax(0, 1fr); align-items: center; }
.filter-builder > .field input { min-height: 32px; height: 32px; padding-block: 5px; }
.filter-builder-toolbar { min-height: 22px; font-size: 9px; }
.filter-builder-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px 8px; min-height: 0; max-height: min(185px, 18.5vh); overflow-y: auto; overscroll-behavior: contain; padding: 5px 7px 5px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); scrollbar-gutter: stable; }
.filter-builder-item { display: grid; grid-template-columns: 112px minmax(0, 1fr); align-items: center; gap: 9px; min-height: 38px; padding: 4px 7px; border: 1px solid color-mix(in srgb, var(--border) 80%, transparent); border-radius: 9px; background: color-mix(in srgb, var(--panel-alt) 72%, transparent); transition: border-color 140ms ease, background-color 140ms ease, box-shadow 140ms ease; }
.filter-builder-item:hover { border-color: color-mix(in srgb, var(--accent) 38%, var(--border)); background: var(--accent-soft); box-shadow: 0 5px 16px color-mix(in srgb, var(--accent-glow) 35%, transparent); }
.filter-builder-item .filter-field-toggle { display: flex; align-items: center; gap: 6px; margin: 0; color: var(--text-2); font-size: 8.5px; line-height: 1.15; cursor: pointer; }
.filter-builder-item > label:not(.filter-field-toggle) { display: grid; grid-template-columns: minmax(110px, .48fr) minmax(135px, 1fr); align-items: center; gap: 8px; }
.filter-builder-item > label:not(.filter-field-toggle) > span { font-size: 8.5px; }
.filter-builder-item input:not([type="checkbox"]), .filter-builder-item select { min-height: 29px; height: 29px; padding-block: 4px; font-size: 10px; }
.filter-field-toggle input[type="checkbox"] { appearance: none; display: grid; place-items: center; width: 16px; min-width: 16px; height: 16px; margin: 0; border: 1px solid var(--border-strong); border-radius: 5px; outline: 0; background: var(--input); box-shadow: inset 0 1px 2px rgba(0,0,0,.12); cursor: pointer; transition: background-color 140ms ease, border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease; }
.filter-field-toggle input[type="checkbox"]::after { content: ""; width: 4px; height: 8px; opacity: 0; border: solid #fff; border-width: 0 2px 2px 0; transform: translateY(-1px) rotate(45deg) scale(.65); transition: opacity 120ms ease, transform 120ms ease; }
.filter-field-toggle input[type="checkbox"]:checked { border-color: var(--accent); background: linear-gradient(145deg, color-mix(in srgb, var(--accent) 78%, white), var(--accent)); box-shadow: 0 3px 9px var(--accent-glow); }
.filter-field-toggle input[type="checkbox"]:checked::after { opacity: 1; transform: translateY(-1px) rotate(45deg) scale(1); }
.filter-field-toggle input[type="checkbox"]:hover { transform: scale(1.06); border-color: var(--accent); }
.filter-field-toggle input[type="checkbox"]:focus-visible { box-shadow: 0 0 0 3px var(--accent-soft); }
.builder-live-count { padding: 5px 10px; border-radius: 8px; font-size: 9px; box-shadow: none; }
.filter-builder .helper-box { padding: 6px 9px; border-radius: 8px; font-size: 8.5px; line-height: 1.35; }

.auction-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
.auction-summary > span { display: grid; gap: 4px; padding: 12px 14px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel); }
.auction-summary small { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.auction-summary strong { color: var(--accent-2); font-size: 19px; }
.auction-detail-layout { display: grid; grid-template-columns: 1.05fr .95fr; gap: 16px; }
.auction-detail-layout > section, .auction-detail-layout > aside { padding: 14px; border: 1px solid var(--border); border-radius: 14px; background: var(--panel-alt); }
.auction-detail-layout aside h3 { margin: 0 0 10px; font-size: 13px; }
.auction-bid-list { display: grid; gap: 8px; max-height: 360px; overflow-y: auto; }
.auction-bid-list article { display: grid; grid-template-columns: 30px 1fr; gap: 9px; padding: 9px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel); }
.auction-bid-list article > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: var(--accent-soft); color: var(--accent-2); }
.auction-bid-list article div { display: grid; gap: 3px; }
.auction-bid-list small, .auction-bid-list p { margin: 0; color: var(--muted); font-size: 9px; }

@starting-style { .app-dialog:has(.filter-builder)[open] { opacity: 0; transform: translate(-50%, -12px); } }

@media (max-width: 720px) {
  .filter-builder > .field, .filter-builder-item, .filter-builder-item > label:not(.filter-field-toggle) { grid-template-columns: 1fr; }
  .filter-builder-item { gap: 6px; }
  .app-dialog:has(.filter-builder), .app-dialog:has(.filter-builder) > form { max-height: 58vh; }
  .auction-summary, .auction-detail-layout { grid-template-columns: 1fr; }
}
.top-addon { border-color: rgba(245,195,62,.45) !important; background: rgba(245,195,62,.08) !important; }
.sync-chip.online { color: var(--success); }

@media (max-width: 1100px) {
  .language-switch { padding-inline: 5px; }
  .language-switch select { width: 72px; }
  .badge-track-grid, .menu-editor-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .topbar-actions .language-switch { display: none; }
  .achievement-card { padding: 25px 18px; }
  .achievement-progress-copy { grid-template-columns: 1fr; }
  .achievement-progress-copy > b { transform: rotate(90deg); }
}

/* Oprava profilových fotografií: obrázek nikdy nesmí změnit rozměr avataru. */
.avatar,
.profile-image {
  flex-shrink: 0;
  aspect-ratio: 1;
  line-height: 1;
}

.avatar > img,
.profile-image > img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  border-radius: inherit;
  object-fit: cover;
  object-position: center;
}

.avatar.has-photo,
.profile-image.has-photo {
  padding: 0;
}

.registry-suggestion-menu { position: fixed; z-index: 1100; display: grid; gap: 4px; max-height: 290px; overflow-y: auto; padding: 7px; border: 1px solid var(--border-strong); border-radius: 12px; background: var(--panel-solid); box-shadow: 0 20px 50px rgba(0,0,0,.42); }
.registry-suggestion-menu button { display: grid; grid-template-columns: 1fr auto; gap: 3px 10px; padding: 9px; border: 0; border-radius: 9px; background: transparent; color: var(--text); text-align: left; cursor: pointer; }.registry-suggestion-menu button:hover { background: var(--accent-soft); }.registry-suggestion-menu strong { font-size: 10px; }.registry-suggestion-menu span { color: var(--text-2); font-size: 9px; }.registry-suggestion-menu small { grid-column: 2; grid-row: 1 / span 2; align-self: center; color: var(--accent-2); font-size: 8.5px; }
.auth-field select, .auth-field select option { color: var(--text); background: var(--input); }
.auth-field.field-invalid-pulse, .license-consent.field-invalid-pulse, .consent-list label.field-invalid-pulse { animation: invalid-pulse 1.35s ease; }
.auth-field.field-invalid-pulse > div { border-color: #ff4655; box-shadow: 0 0 0 4px rgba(255,38,55,.16),0 0 24px rgba(255,38,55,.2); }
@keyframes invalid-pulse { 0%,100% { box-shadow: none; } 18%,52% { border-color: #ff4655; background: rgba(255,38,55,.13); box-shadow: 0 0 0 4px rgba(255,38,55,.16),0 0 28px rgba(255,38,55,.24); } 35%,68% { transform: translateX(3px); } }
.registration-plan-price { color: var(--accent-2); font-size: 12px; }

.view-effect-fade { animation: effect-fade 220ms ease both; }.view-effect-slide { animation: effect-slide 260ms cubic-bezier(.2,.8,.2,1) both; }.view-effect-rise { animation: effect-rise 250ms ease both; }.view-effect-zoom { animation: effect-zoom 230ms ease both; }
@keyframes effect-fade { from { opacity: 0; } } @keyframes effect-slide { from { opacity: 0; transform: translateX(18px); } } @keyframes effect-rise { from { opacity: 0; transform: translateY(16px); } } @keyframes effect-zoom { from { opacity: 0; transform: scale(.985); } }

.avatar-badge { position: absolute; right: -5px; top: -5px; display: grid; place-items: center; width: 19px; height: 19px; border: 2px solid var(--panel-solid); border-radius: 50%; background: var(--accent); color: #fff; box-shadow: 0 5px 12px rgba(0,0,0,.25); }.avatar-badge svg { width: 9px; height: 9px; }
html[data-badge="hidden"] .avatar-badge, html[data-badge="hidden"] .profile-badge, html[data-badge="hidden"] .loyalty-badge { display: none !important; }
.transport-progress { height: 8px; overflow: hidden; border-radius: 99px; background: var(--panel-alt); }.transport-progress i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--accent-strong),var(--accent-2)); box-shadow: 0 0 12px var(--accent-glow); }

.conversation-list-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }.conversation-search { position: relative; isolation: isolate; display: flex; align-items: center; gap: 8px; margin: 10px 1px 11px; padding: 0 11px; overflow: hidden; border: 1px solid color-mix(in srgb,var(--border) 86%,transparent); border-radius: 14px; background: linear-gradient(180deg,color-mix(in srgb,var(--panel-solid) 97%,white 3%),color-mix(in srgb,var(--input) 95%,black 5%)); box-shadow: 0 10px 24px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.045), inset 0 -1px 0 rgba(0,0,0,.06); transition: transform 170ms ease, border-color 170ms ease, box-shadow 190ms ease, background 190ms ease; }.conversation-search::before { content:""; position:absolute; inset:1px 1px auto; height:46%; border-radius:13px 13px 9px 9px; background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,0)); pointer-events:none; z-index:0; }.conversation-search:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--accent) 23%,var(--border-strong)); box-shadow:0 14px 30px rgba(0,0,0,.14),0 0 20px color-mix(in srgb,var(--accent-glow) 9%,transparent),inset 0 1px 0 rgba(255,255,255,.055); }.conversation-search:focus-within { transform:translateY(-2px); border-color:color-mix(in srgb,var(--accent) 48%,var(--border-strong)); background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 22%,var(--panel-solid)),color-mix(in srgb,var(--input) 95%,black 5%)); box-shadow:0 16px 34px rgba(0,0,0,.17),0 0 26px color-mix(in srgb,var(--accent-glow) 15%,transparent),0 0 0 2px color-mix(in srgb,var(--accent) 9%,transparent),inset 0 1px 0 rgba(255,255,255,.06); }.conversation-search svg { position:relative; z-index:1; width:14px; height:14px; color:var(--muted); filter:drop-shadow(0 2px 4px rgba(0,0,0,.18)); transition:color 170ms ease,filter 170ms ease; }.conversation-search:focus-within svg { color:var(--accent-2); filter:drop-shadow(0 0 7px color-mix(in srgb,var(--accent-glow) 38%,transparent)); }.conversation-search input { position:relative; z-index:1; width:100%; height:38px; border:0; outline:0; background:transparent; color:var(--text); }.conversation-search input::placeholder { color:color-mix(in srgb,var(--muted) 90%,transparent); }.conversation-search-results { display: grid; gap: 4px; margin-bottom: 8px; }.conversation-search-results > button { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 8px; padding: 7px; border: 1px solid var(--border); border-radius: 9px; background: var(--panel-alt); color: var(--text); text-align: left; cursor: pointer; }.conversation-search-results .profile-image { width: 31px; height: 31px; border-radius: 9px; font-size: 9px; }.conversation-search-results > button div { display: grid; gap: 2px; }.conversation-search-results strong { font-size: 9px; }.conversation-search-results small, .conversation-no-result { color: var(--muted); font-size: 8.5px; }.conversation-records { min-height: 0; overflow-y: auto; overscroll-behavior: contain; align-content: start; display: grid; gap: 8px; padding: 3px 0 8px; }

.conversation-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; padding: 0 9px 10px; }
.conversation-tabs button { position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 32px; border: 1px solid color-mix(in srgb,var(--border) 86%,transparent); border-radius: 11px; background: linear-gradient(180deg,color-mix(in srgb,var(--panel-alt) 96%,white 4%),color-mix(in srgb,var(--panel-alt) 94%,black 6%)); color: var(--muted); box-shadow: 0 8px 18px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.05), inset 0 -1px 0 rgba(0,0,0,.08); font-size: 9px; font-weight: 800; cursor: pointer; transition: transform 170ms ease, border-color 170ms ease, background 180ms ease, color 170ms ease, box-shadow 190ms ease; }
.conversation-tabs button::before { content: ""; position: absolute; inset: 1px 1px auto; height: 48%; border-radius: 10px 10px 7px 7px; background: linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,0)); opacity: .72; pointer-events: none; }
.conversation-tabs button:hover { transform: translateY(-2px); border-color: color-mix(in srgb,var(--accent) 28%,var(--border-strong)); background: linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 28%,var(--panel-alt)),color-mix(in srgb,var(--accent-soft) 12%,var(--panel-alt))); color: var(--text); box-shadow: 0 14px 28px rgba(0,0,0,.16), 0 0 20px color-mix(in srgb,var(--accent-glow) 11%,transparent), inset 0 1px 0 rgba(255,255,255,.065); }
.conversation-tabs button.active { border-color: color-mix(in srgb,var(--accent) 54%,var(--border-strong)); background: linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 62%,var(--panel-alt)),color-mix(in srgb,var(--accent-soft) 30%,var(--panel-alt))); color: var(--text); box-shadow: 0 13px 30px rgba(0,0,0,.18), 0 0 24px color-mix(in srgb,var(--accent-glow) 15%,transparent), inset 0 1px 0 rgba(255,255,255,.075), inset 0 -2px 5px rgba(0,0,0,.08); }
.conversation-tabs button.active:hover { transform: translateY(-2px); border-color: color-mix(in srgb,var(--accent) 68%,var(--border-strong)); box-shadow: 0 16px 34px rgba(0,0,0,.20), 0 0 28px color-mix(in srgb,var(--accent-glow) 18%,transparent), inset 0 1px 0 rgba(255,255,255,.08); }
.conversation-tabs b { position: relative; z-index: 1; min-width: 18px; padding: 2px 6px; border: 1px solid color-mix(in srgb,var(--accent) 18%,transparent); border-radius: 99px; background: linear-gradient(180deg,color-mix(in srgb,var(--accent) 22%,transparent),color-mix(in srgb,var(--accent) 12%,transparent)); color: var(--accent-2); box-shadow: 0 4px 10px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.08); font-size: 8.5px; }
.conversation-record { position: relative; overflow: hidden; margin: 0 1px; border: 1px solid color-mix(in srgb,var(--border) 86%,transparent); border-radius: 16px; background: linear-gradient(180deg, color-mix(in srgb,var(--panel-solid) 97%,white 3%), color-mix(in srgb,var(--panel) 94%,black 6%)); box-shadow: 0 10px 24px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.035); transition: transform 170ms ease, border-color 170ms ease, box-shadow 190ms ease, background 190ms ease; }
.conversation-record::before { content: ""; position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,0) 24%); opacity: .85; pointer-events: none; }
.conversation-record:hover { transform: translateY(-2px); border-color: color-mix(in srgb,var(--accent) 28%,var(--border-strong)); background: linear-gradient(180deg, color-mix(in srgb,var(--accent-soft) 34%,var(--panel-solid)), color-mix(in srgb,var(--accent-soft) 16%,var(--panel))); box-shadow: 0 18px 42px rgba(0,0,0,.18), 0 0 26px color-mix(in srgb,var(--accent-glow) 12%,transparent), inset 0 1px 0 rgba(255,255,255,.05); }
.conversation-record.active { border-color: color-mix(in srgb,var(--accent) 38%,var(--border-strong)); background: linear-gradient(180deg, color-mix(in srgb,var(--accent-soft) 52%,var(--panel-solid)), color-mix(in srgb,var(--accent-soft) 26%,var(--panel))); box-shadow: 0 20px 48px rgba(0,0,0,.20), 0 0 30px color-mix(in srgb,var(--accent-glow) 14%,transparent), inset 3px 0 0 var(--accent), inset 0 1px 0 rgba(255,255,255,.05); }
.conversation-record.unread { border-color: rgba(72,255,158,.96); background: linear-gradient(180deg,color-mix(in srgb,#2ee889 14%,var(--panel-solid)),color-mix(in srgb,#20c979 8%,var(--panel))); box-shadow: 0 20px 48px rgba(0,0,0,.20), 0 0 0 1px rgba(72,255,158,.28), 0 0 20px rgba(56,255,154,.48), 0 0 42px rgba(56,255,154,.24), inset 0 0 0 1px rgba(129,255,192,.16), inset 0 1px 0 rgba(255,255,255,.08); }
.conversation-record.unread::after { content: ""; position: absolute; inset: 2px; z-index: 0; border: 1px solid rgba(101,255,177,.32); border-radius: 13px; box-shadow: 0 0 18px rgba(72,255,158,.18) inset; pointer-events: none; }
.conversation-record.unread:hover { border-color: #66ffaf; background: linear-gradient(180deg,color-mix(in srgb,#31ef8f 18%,var(--panel-solid)),color-mix(in srgb,#20cb79 11%,var(--panel))); box-shadow: 0 24px 54px rgba(0,0,0,.24), 0 0 0 1px rgba(93,255,173,.28), 0 0 28px rgba(42,242,137,.56), 0 0 68px rgba(42,242,137,.26), inset 0 0 0 1px rgba(129,255,192,.18), inset 0 1px 0 rgba(255,255,255,.09); }
.conversation-record.unread[data-unread-count]::before { content: attr(data-unread-count); position: absolute; top: 11px; right: 10px; bottom: auto; left: auto; width: auto; z-index: 2; min-width: 18px; height: 18px; padding: 0 5px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(126,255,188,.58); border-radius: 999px; background: linear-gradient(180deg, rgba(39,235,130,.28), rgba(15,106,58,.32)); color: #ecfff4; font-size: 9px; font-weight: 900; box-shadow: 0 8px 18px rgba(0,0,0,.18), 0 0 18px rgba(56,255,154,.28), inset 0 1px 0 rgba(255,255,255,.12); }
.conversation-record.unread .conversation-copy strong { color: #dffff0; text-shadow: 0 0 12px rgba(74,255,160,.18); }
.conversation-record.unread .conversation::after { content:""; position:absolute; z-index:0; top:-28%; bottom:-28%; left:-46%; width:34%; border-radius:50%; background:linear-gradient(100deg,transparent 0%,rgba(131,255,191,.04) 18%,rgba(169,255,211,.36) 48%,rgba(83,255,164,.08) 72%,transparent 100%); filter:blur(1px); transform:skewX(-15deg); pointer-events:none; animation:conversation-unread-shine 2.35s ease-in-out infinite; }
@keyframes conversation-unread-shine { 0% { left:-48%; opacity:0; } 12% { opacity:.78; } 60% { opacity:.5; } 100% { left:116%; opacity:0; } }
.conversation-record.unread .conversation-copy small,
.conversation-record.unread .conversation-last-date,
.conversation-record.unread .conversation time { color: color-mix(in srgb,#b7f5d5 72%,var(--muted)); }
.conversation-record .conversation { position: relative; z-index: 1; border-bottom: 0; border-radius: 15px 15px 0 0; padding: 13px 12px 10px; transition: transform 170ms ease, color 170ms ease; }
.conversation-record:hover .conversation { transform: translateX(2px); }
.conversation-record .conversation:hover, .conversation-record.active .conversation { background: transparent; }
.conversation-record:hover .conversation-copy strong, .conversation-record.active .conversation-copy strong { color: var(--text); }
.conversation-record:hover .conversation-copy small, .conversation-record:hover .conversation-last-date, .conversation-record:hover .conversation time { color: color-mix(in srgb,var(--text) 82%,var(--muted)); }
.conversation-record:hover .profile-image, .conversation-record.active .profile-image { box-shadow: 0 10px 22px rgba(0,0,0,.22), 0 0 18px color-mix(in srgb,var(--accent-glow) 10%,transparent); transform: translateY(-1px); }
.conversation .profile-image { width: 34px; height: 34px; border-radius: 10px; font-size: 9px; transition: transform 170ms ease, box-shadow 170ms ease; }
.conversation-actions { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 4px; padding: 0 10px 10px 52px; }
.conversation-actions button { --conversation-action-border: color-mix(in srgb,var(--accent) 26%,var(--border)); --conversation-action-bg: color-mix(in srgb,var(--accent-soft) 58%,transparent); --conversation-action-glow: color-mix(in srgb,var(--accent-glow) 34%,transparent); --conversation-action-text: var(--text); --conversation-action-delay: 0s; position: relative; overflow: hidden; display: inline-flex; align-items: center; gap: 4px; min-height: 23px; padding: 3px 6px; border: 1px solid var(--border); border-radius: 6px; background: var(--panel-solid); color: var(--text-2); box-shadow: inset 0 1px 0 rgba(255,255,255,.035); font-size: 8.5px; font-weight: 750; cursor: pointer; transition: transform 160ms ease, border-color 160ms ease, color 160ms ease, background 170ms ease, box-shadow 170ms ease; }
.conversation-actions button::after { content: ""; position: absolute; inset: -1px; border-radius: inherit; background: linear-gradient(120deg, transparent 0 35%, color-mix(in srgb,var(--conversation-action-glow) 75%,white 14%) 50%, transparent 65% 100%); opacity: 0; transform: translateX(-115%); pointer-events: none; }
.conversation-actions button:hover { transform: translateY(-1px); border-color: var(--conversation-action-border); background: var(--conversation-action-bg); color: var(--conversation-action-text); box-shadow: 0 6px 16px rgba(0,0,0,.14), 0 0 16px var(--conversation-action-glow), inset 0 1px 0 rgba(255,255,255,.04); }
.conversation-actions button:hover::after { opacity: .46; transform: translateX(115%); transition: transform 440ms ease, opacity 220ms ease; }
.conversation-actions button.danger:hover { border-color: var(--conversation-action-border); color: var(--conversation-action-text); }
.conversation-actions [data-conversation-dock] { --conversation-action-border: rgba(70,157,255,.78); --conversation-action-bg: rgba(70,157,255,.13); --conversation-action-glow: rgba(70,157,255,.34); --conversation-action-text: #eef7ff; --conversation-action-delay: .00s; }
.conversation-actions [data-conversation-archive] { --conversation-action-border: rgba(229,182,73,.76); --conversation-action-bg: rgba(229,182,73,.14); --conversation-action-glow: rgba(229,182,73,.34); --conversation-action-text: #fff4d2; --conversation-action-delay: .14s; }
.conversation-actions [data-conversation-restore] { --conversation-action-border: rgba(70,197,132,.78); --conversation-action-bg: rgba(70,197,132,.14); --conversation-action-glow: rgba(70,197,132,.34); --conversation-action-text: #e6fff3; --conversation-action-delay: .14s; }
.conversation-actions [data-conversation-mute] { --conversation-action-border: rgba(255,208,71,.8); --conversation-action-bg: rgba(255,208,71,.15); --conversation-action-glow: rgba(255,208,71,.36); --conversation-action-text: #fff4cc; --conversation-action-delay: .28s; }
.conversation-actions [data-conversation-delete] { --conversation-action-border: rgba(243,96,116,.82); --conversation-action-bg: rgba(243,96,116,.15); --conversation-action-glow: rgba(243,96,116,.36); --conversation-action-text: #ffe5ea; --conversation-action-delay: .42s; }
.conversation-records-intro .conversation-actions button { animation: conversationActionIntroGlow 1.24s ease calc(1s + var(--conversation-action-delay)) 1 both; }
.conversation-records-intro .conversation-actions button::after { animation: conversationActionIntroSweep 1.24s ease calc(1s + var(--conversation-action-delay)) 1 both; }
.conversation-actions svg { width: 10px; height: 10px; }
@keyframes conversationActionIntroGlow {
  0%, 100% { border-color: var(--border); background: var(--panel-solid); color: var(--text-2); box-shadow: inset 0 1px 0 rgba(255,255,255,.035); transform: translateY(0); }
  18% { border-color: var(--border); background: var(--panel-solid); color: var(--text-2); box-shadow: inset 0 1px 0 rgba(255,255,255,.035); }
  44%, 58% { border-color: var(--conversation-action-border); background: var(--conversation-action-bg); color: var(--conversation-action-text); box-shadow: 0 0 0 1px color-mix(in srgb,var(--conversation-action-border) 28%,transparent) inset, 0 7px 18px rgba(0,0,0,.16), 0 0 18px var(--conversation-action-glow), inset 0 1px 0 rgba(255,255,255,.05); transform: translateY(-1px); }
  82% { border-color: color-mix(in srgb,var(--conversation-action-border) 35%,var(--border)); background: color-mix(in srgb,var(--conversation-action-bg) 55%,var(--panel-solid)); color: color-mix(in srgb,var(--conversation-action-text) 60%,var(--text-2)); box-shadow: 0 2px 8px color-mix(in srgb,var(--conversation-action-glow) 18%,transparent), inset 0 1px 0 rgba(255,255,255,.04); }
}
@keyframes conversationActionIntroSweep {
  0%, 17%, 100% { opacity: 0; transform: translateX(-115%); }
  34%, 58% { opacity: .68; transform: translateX(110%); }
  82% { opacity: .12; transform: translateX(135%); }
}
.message-avatar > .loyalty-badge.icon-only { width: 15px; height: 20px; min-height: 20px; top: -8px; right: -8px; }
.message-avatar > .loyalty-badge.icon-only > b { min-width: 8px; font-size: 8.5px; }
.message-avatar > .loyalty-badge.icon-only > b > img { height: 20px; }
.dock-chat-head .profile-image > .loyalty-badge.icon-only { width: 14px; height: 19px; min-height: 19px; top: -7px; right: -7px; }
.dock-chat-head .profile-image > .loyalty-badge.icon-only > b > img { height: 19px; }

body { font-size: 14px; }
.main-content { font-size: calc(14px * var(--main-text-scale)); }
.section-heading h2 { font-size: calc(22px * var(--main-text-scale)); }
.welcome-row h2 { font-size: calc(24px * var(--main-text-scale)); }
.offer-card h3, .vehicle-card h3, .public-profile-card h3, .panel h3 { font-size: calc(12px * var(--main-text-scale)); }
.offer-card .card-price, .metric-card > div > strong { font-size: calc(20px * var(--main-text-scale)); }
.nav-item { font-size: calc(10px * var(--menu-text-scale)); }
.nav-label { font-size: calc(8px * var(--menu-text-scale)); }
.brand-copy strong { font-size: calc(15px * var(--menu-text-scale)); }.brand-copy span { font-size: calc(8px * var(--menu-text-scale)); }
.topbar h1 { font-size: calc(17px * var(--menu-text-scale)); }
.offer-card small, .vehicle-card small, .load-row small, .detail-list small, .mini-route small, .eyebrow, label, dt, time { font-size: calc(8.5px * var(--label-text-scale)); }
.mini-route small, .load-row small { color: color-mix(in srgb,var(--text-2) 80%,var(--muted)); font-weight: 650; }
.chat-pane, .chat-dock, .chat-message, .chat-compose { font-size: calc(1em * var(--chat-text-scale)); }
.dock-chat { width: clamp(205px,16vw,245px); flex-basis: clamp(205px,16vw,245px); background: color-mix(in srgb,var(--panel-solid) 96%,white 4%); }.dock-chat.open { width: clamp(310px,25vw,390px); flex-basis: clamp(310px,25vw,390px); }.dock-chat-head strong { color: var(--text); font-size: calc(10px * var(--chat-text-scale)); }.dock-message, .dock-compose input { font-size: calc(10.5px * var(--chat-text-scale)); }

@media (max-width: 920px) {
  .sidebar-close { display: inline-grid; }
  .sidebar-restore, html.sidebar-collapsed .sidebar-restore { display: none; }
  html.sidebar-collapsed .app-shell { display: block; }
  html.sidebar-collapsed .sidebar { transform: translateX(-105%); }
  html[data-theme="kline"] .workspace::before { left: 0; }
  html[data-theme="ultra"] .workspace::before,
  html[data-theme="ultra"] .workspace::after { left: 0; }
  .filter-builder-fields { grid-template-columns: 1fr 1fr; }
  .settings-layout { grid-template-columns: 1fr; }.settings-layout .full-span { grid-column: auto; }
  .plan-dialog-grid { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
  .filter-builder-fields { grid-template-columns: 1fr; }
  .scale-setting { grid-template-columns: 1fr 55px; }.scale-setting > span { grid-column: 1 / -1; }
  .profile-overview-stats { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
  .metrics-grid { grid-template-columns: 1fr; }
  .metric-card { min-height: 84px; display: grid; grid-template-columns: auto 1fr; }
  .quick-grid { grid-template-columns: 1fr 1fr; }
  .theme-grid { grid-template-columns: 1fr; }
  .theme-card { grid-template-columns: 72px 1fr; grid-template-rows: auto auto; column-gap: 9px; }
  .theme-preview { grid-row: 1 / 3; height: 48px; }
  .profile-identity { grid-template-columns: auto 1fr; }
  .profile-identity .mini-button { grid-column: 1 / -1; }
  .section-filters { grid-template-columns: 1fr; }
  .filter-choice-grid, .offer-data-grid, .offer-data-grid.compact { grid-template-columns: 1fr; }
  .offer-data-grid > div, .offer-data-grid > div:nth-child(2n), .offer-data-grid > div:nth-child(3n), .offer-data-grid.compact > div:nth-child(2n), .offer-data-grid.compact > div:nth-child(3n) { border-right: 0; }
  .filter-set-head { align-items: flex-start; flex-direction: column; }
  .offer-route-map { min-height: 285px; }
  .offer-map-label.start { top: 9%; }.offer-map-label.end { bottom: 9%; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media (max-width: 1040px) {
  .review-eligibility-list { grid-template-columns: 1fr 1fr; }
  .welcome-hero { grid-template-columns: 1fr; min-height: auto; }
  .welcome-hero-copy { max-width: 760px; }
  .welcome-brand-visual { min-height: 440px; }
  .proof-one { left: 4%; }.proof-two { right: 4%; }
  .registration-plan-card img { height: 125px; }
  .approval-summary { grid-template-columns: auto minmax(210px,1fr) auto auto; }
  .approval-summary > .button { grid-column: 2 / -1; justify-self: end; }
}

@media (max-width: 760px) {
  .review-eligibility-list { grid-template-columns: 1fr; }
  .auth-header { min-height: 68px; padding: 10px 14px; }
  .auth-brand small, .prototype-chip { display: none; }
  .welcome-stage { padding-top: 38px; }
  .welcome-hero { gap: 20px; }
  .welcome-hero h1 { font-size: clamp(42px, 12vw, 62px); }
  .welcome-brand-visual { min-height: 360px; }
  .floating-proof { min-width: 158px; padding: 9px; }
  .proof-one { top: 10%; left: 0; }.proof-two { right: 0; bottom: 20%; }.proof-three { left: 5%; bottom: 1%; }
  .welcome-values { grid-template-columns: 1fr; }
  .auth-footer { flex-direction: column; }
  .registration-stage { padding: 14px 8px 28px; }
  .registration-card { border-radius: 15px; }
  .registration-top, .registration-content, .registration-actions { padding-left: 14px; padding-right: 14px; }
  .registration-progress { padding-left: 10px; padding-right: 10px; }
  .registration-progress li small { display: none; }
  .registration-content { min-height: 320px; }
  .account-type-grid, .registration-plan-grid, .document-upload-list { grid-template-columns: 1fr; }
  .account-type-card { min-height: 210px; }
  .registration-plan-card { display: grid; grid-template-columns: 150px 1fr; }
  .registration-plan-card img { height: 100%; min-height: 185px; border-right: 1px solid var(--border); border-bottom: 0; }
  .registration-form-grid { grid-template-columns: 1fr; }
  .registration-form-grid .full-span { grid-column: auto; }
  .review-layout { grid-template-columns: 1fr; }
  .documents-review { grid-column: auto; }
  .approval-stats { grid-template-columns: 1fr 1fr; }
  .approval-toolbar { align-items: stretch; flex-direction: column; }
  .approval-search { min-width: 0; width: 100%; }
  .approval-summary { grid-template-columns: auto 1fr auto; }
  .approval-summary .account-kind { grid-column: 2; justify-self: start; }
  .approval-summary .status-pill { grid-column: 3; grid-row: 1; }
  .approval-summary > .button { grid-column: 2 / -1; }
  .approval-detail-grid, .review-admin-grid { grid-template-columns: 1fr; }
}

@media (max-width: 500px) {
  .auth-header-actions .button { min-width: 38px; padding: 0 10px; font-size: 0; }
  .auth-header-actions .button svg { font-size: 12px; }
  .welcome-hero-copy > p:not(.auth-kicker) { font-size: 13px; }
  .welcome-cta, .waiting-actions { flex-direction: column; }
  .welcome-cta .button, .waiting-actions .button { width: 100%; }
  .welcome-finish-button { margin-left: 0; }
  .trust-row { display: grid; gap: 8px; }
  .welcome-brand-visual { min-height: 290px; }
  .floating-proof { min-width: 142px; }
  .floating-proof strong { font-size: 9px; }
  .proof-three { display: none; }
  .auth-card { padding: 22px 15px; border-radius: 16px; }
  .demo-role-grid { grid-template-columns: 1fr; }
  .demo-role-grid button { min-height: 66px; grid-template-columns: auto 1fr; grid-template-rows: auto auto; justify-items: start; text-align: left; }
  .demo-role-icon { grid-row: 1 / 3; }
  .registration-top h1 { font-size: 18px; }
  .registration-plan-card { display: flex; }
  .registration-plan-card img { height: 135px; min-height: 0; border-right: 0; border-bottom: 1px solid var(--border); }
  .registration-actions .button { flex: 1; padding-inline: 9px; }
  .document-upload-card { grid-template-columns: auto 1fr; }
  .upload-button { grid-column: 2; justify-self: start; }
  .plan-review { grid-template-columns: 1fr; }.plan-review img { width: 100%; height: 110px; }
  .approval-stats { grid-template-columns: 1fr; }
  .approval-summary { grid-template-columns: auto 1fr; }
  .approval-summary .status-pill, .approval-summary .account-kind, .approval-summary > .button { grid-column: 2; grid-row: auto; justify-self: start; }
  .admin-decision-row { flex-direction: column; }.admin-decision-row .button { width: 100%; }
}

/* Velké veřejné okno hodnocení – samostatný scroll všech recenzí. */
.app-dialog:has(.public-reviews) {
  width: min(1080px, calc(100vw - 34px));
  height: min(88vh, 900px);
  max-height: calc(100vh - 26px);
}
.app-dialog:has(.public-reviews) > form {
  height: 100%;
  max-height: none;
}
.app-dialog:has(.public-reviews) .dialog-content {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 0;
  flex: 1;
  overflow: hidden;
  padding: 18px 20px;
}
.app-dialog:has(.public-reviews) .dialog-actions {
  flex: 0 0 auto;
}
.public-reviews {
  display: flex;
  flex-direction: column;
  min-height: 0;
  flex: 1;
  gap: 12px;
}
.public-reviews-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  flex: 0 0 auto;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--panel-alt);
}
.public-reviews-head h3 {
  margin: 4px 0 3px;
  font-size: 18px;
}
.review-scroll-hint {
  color: var(--muted);
  font-size: 9px;
}
.review-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(76px, 1fr));
  gap: 7px;
}
.review-summary > span {
  display: grid;
  justify-items: center;
  gap: 2px;
  padding: 9px 10px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel-solid);
}
.review-summary strong { font-size: 14px; }
.review-summary small { color: var(--muted); font-size: 8.5px; }
.review-summary .positive strong { color: var(--success); }
.review-summary .neutral strong { color: var(--warning); }
.review-summary .negative strong { color: var(--danger); }
.public-review-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: start;
  gap: 9px;
  min-height: 260px;
  flex: 1;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding: 2px 7px 8px 2px;
  outline: none;
}
.public-review-list:focus-visible {
  border-radius: 12px;
  box-shadow: 0 0 0 2px var(--accent);
}
.public-review-list article {
  display: grid;
  align-content: start;
  gap: 7px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel-alt);
}
.public-review-list article > strong {
  color: var(--warning);
  font-size: 14px;
  letter-spacing: .06em;
}
.public-review-list article p {
  margin: 0;
  color: var(--text-2);
  font-size: 10px;
  line-height: 1.55;
}
.public-review-list article small {
  color: var(--muted);
  font-size: 8.5px;
  line-height: 1.45;
}
.review-sentiment {
  width: fit-content;
  padding: 4px 7px;
  border-radius: 99px;
  background: var(--accent-soft);
  color: var(--accent-2);
  font-size: 8.5px;
  font-weight: 850;
}
.review-sentiment.positive { color: var(--success); }
.review-sentiment.neutral { color: var(--warning); }
.review-sentiment.negative { color: var(--danger); }
.review-list-footer {
  flex: 0 0 auto;
  padding: 7px 10px;
  border-radius: 9px;
  background: var(--panel-alt);
  color: var(--muted);
  font-size: 9px;
  text-align: center;
}

@media (max-width: 760px) {
  .app-dialog:has(.public-reviews) {
    width: calc(100vw - 16px);
    height: calc(100vh - 16px);
    max-height: none;
  }
  .public-reviews-head { grid-template-columns: 1fr; }
  .public-review-list { grid-template-columns: 1fr; min-height: 220px; }
  .review-summary { grid-template-columns: repeat(3, 1fr); }
}

/* Celoobrazovkový náhled obsahových obrázků */
.image-preview-open { overflow: hidden; }
.image-preview-overlay { position: fixed; inset: 0; z-index: 5000; display: grid; place-items: center; padding: 24px; background: rgba(3,7,14,.88); backdrop-filter: blur(12px); }
.image-preview-overlay[hidden] { display: none !important; }
.image-preview-shell { position: relative; display: grid; grid-template-rows: minmax(0,1fr) auto; width: min(96vw, 1500px); height: min(94vh, 1000px); overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 22px; background: rgba(12,17,27,.96); box-shadow: 0 46px 132px rgba(0,0,0,.68), 0 18px 44px rgba(0,0,0,.24), 0 0 46px rgba(88,156,255,.10), inset 0 1px 0 rgba(255,255,255,.04); }
.image-preview-shell::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0) 18%); }
.image-preview-shell > * { position: relative; z-index: 1; }
.image-preview-stage { min-height: 0; display: grid; place-items: center; overflow: auto; padding: 28px; }
.image-preview-stage img { display: block; max-width: 100%; max-height: calc(94vh - 105px); width: auto; height: auto; object-fit: contain; border-radius: 14px; box-shadow: 0 18px 60px rgba(0,0,0,.42); }
.image-preview-footer { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 66px; padding: 12px 16px; border-top: 1px solid rgba(255,255,255,.12); background: rgba(17,23,35,.96); }
.image-preview-footer > span { min-width: 0; overflow: hidden; color: rgba(255,255,255,.72); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.image-preview-x { position: absolute; z-index: 2; top: 14px; right: 14px; display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; background: rgba(7,11,18,.78); color: #fff; font-size: 28px; line-height: 1; cursor: pointer; box-shadow: 0 8px 24px rgba(0,0,0,.38); backdrop-filter: blur(10px); }
.image-preview-x:hover { background: rgba(28,36,50,.96); transform: scale(1.04); }
.profile-image.has-photo > img, .chat-shared-image, .dock-shared-image, .vehicle-card img, .offer-card img, [data-load-card] img, [data-vehicle-card] img, [data-transport-card] img, .own-vehicle-title img { cursor: zoom-in; }
@media (max-width: 700px) { .image-preview-overlay { padding: 8px; } .image-preview-shell { width: 100%; height: 96vh; border-radius: 16px; } .image-preview-stage { padding: 16px; } .image-preview-footer { min-height: 58px; } .image-preview-stage img { max-height: calc(96vh - 90px); } }


/* Barevná záře fotografií: odstín se dopočítá z každého obrázku v app.js. */
.kline-image-color-glow {
  --image-glow-rgb: 74 144 226;
  filter:
    drop-shadow(0 0 7px rgb(var(--image-glow-rgb) / .46))
    drop-shadow(0 8px 13px rgb(var(--image-glow-rgb) / .27));
  transition: filter 180ms ease, transform 180ms ease;
}
.kline-image-color-glow:hover,
.public-profile-card:hover .kline-image-color-glow,
.offer-card:hover .kline-image-color-glow,
.vehicle-card:hover .kline-image-color-glow {
  filter:
    drop-shadow(0 0 10px rgb(var(--image-glow-rgb) / .58))
    drop-shadow(0 10px 17px rgb(var(--image-glow-rgb) / .34));
}
.kline-image-color-glow-fallback {
  --image-glow-rgb: 72 137 219;
}
.image-preview-colored-glow {
  filter:
    drop-shadow(0 0 18px rgb(var(--image-glow-rgb) / .54))
    drop-shadow(0 22px 34px rgb(var(--image-glow-rgb) / .30));
}

/* K-Line: jednotný jemný hover stín pro interaktivní karty a ovládací prvky */
:where(.offer-card, .vehicle-card, .public-profile-card, .document-row, .contact-card, .auction-card, .stat-card, .notification-item) {
  transition: transform 160ms ease, border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

:where(.offer-card, .vehicle-card, .public-profile-card, .document-row, .contact-card, .auction-card, .stat-card, .notification-item):hover {
  border-color: color-mix(in srgb, var(--accent) 46%, var(--border-strong));
  box-shadow: 0 14px 30px color-mix(in srgb, var(--accent-glow) 62%, transparent), inset 0 1px 0 rgba(255,255,255,.055);
  transform: translateY(-2px);
}

.load-row {
  transition: transform 160ms ease, border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

.load-row:hover {
  border-color: color-mix(in srgb, var(--accent) 42%, var(--border-strong));
  box-shadow: 0 11px 24px color-mix(in srgb, var(--accent-glow) 55%, transparent), inset 0 1px 0 rgba(255,255,255,.05);
  transform: translateX(2px) translateY(-1px);
}

.button-secondary:hover,
.mini-button:hover,
.icon-button:hover,
.profile-button:hover,
.conversation-actions > button:hover,
.conversation-search-results > button:hover,
.menu-sort-list > button:hover,
.registry-suggestion-menu button:hover {
  border-color: color-mix(in srgb, var(--accent) 48%, var(--border-strong));
  box-shadow: 0 9px 22px color-mix(in srgb, var(--accent-glow) 58%, transparent), inset 0 1px 0 rgba(255,255,255,.055);
}

.button-primary:hover {
  box-shadow: 0 12px 30px color-mix(in srgb, var(--accent-glow) 88%, transparent), inset 0 1px 0 rgba(255,255,255,.2);
}

.icon-button:hover,
.profile-button:hover {
  transform: translateY(-2px);
}

.notification-item:hover {
  transform: translateX(2px) translateY(-1px);
}

@media (prefers-reduced-motion: reduce) {
  :where(.offer-card, .vehicle-card, .public-profile-card, .load-row, .document-row, .contact-card, .auction-card, .stat-card, .notification-item, .button, .mini-button, .icon-button, .profile-button) {
    transition-duration: 0ms !important;
  }
}


/* Stát + město u nabídek a vozidel */
.mini-route.country-route { grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); gap: 10px; }
.route-stop-country { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 9px; min-width: 0; }
.route-stop-country > .flag-code { width: 31px; height: 31px; border-radius: 9px; background: var(--accent-soft); }
.route-stop-country > span { display: grid; min-width: 0; gap: 1px; }
.route-stop-country strong { display: block; overflow: hidden; color: var(--text); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.route-stop-country .route-stop-city { display: block; overflow: hidden; color: var(--text-2); font-size: 9.5px; font-weight: 760; text-overflow: ellipsis; white-space: nowrap; }
.route-stop-country .route-stop-time { display: block; overflow: hidden; color: var(--muted); font-size: 7.5px; text-overflow: ellipsis; white-space: nowrap; }
.vehicle-country-location { margin: 2px 0 10px; padding: 10px 11px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); }
.vehicle-country-location .route-stop-country { width: max-content; max-width: 100%; }
@media (max-width: 620px) {
  .mini-route.country-route { grid-template-columns: 1fr; }
  .mini-route.country-route .route-arrow { justify-self: center; transform: rotate(90deg); }
}

/* K-Line: čitelnější souhrn výsledků napříč tržišti a adresáři. */
.result-stat-strip {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px 18px;
  margin: 2px 0 8px;
  color: var(--text-2);
  font-size: 10px;
  line-height: 1.45;
}
.result-stat-strip > span {
  position: relative;
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
  white-space: nowrap;
}
.result-stat-strip > span + span {
  padding-left: 18px;
}
.result-stat-strip > span + span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 1px;
  height: 14px;
  background: color-mix(in srgb, var(--border-strong) 72%, transparent);
  transform: translateY(-50%);
}
.result-stat-strip small {
  color: var(--muted);
  font-size: 9.5px;
  font-weight: 650;
  letter-spacing: .01em;
}
.result-stat-strip strong {
  color: var(--text);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: -.01em;
}
.result-stat-strip em {
  color: var(--text-2);
  font-size: 9.5px;
  font-style: normal;
  font-weight: 650;
}
.result-stat-strip > span.accent strong {
  color: var(--accent-2);
}
@media (max-width: 760px) {
  .result-stat-strip { gap: 6px 12px; }
  .result-stat-strip > span + span { padding-left: 12px; }
}


/* K-Line — sjednocené škálování textu v Nastavení.
   Poslední pravidla jsou záměrně na konci, aby novější komponenty neobcházely posuvníky. */

/* Hlavní text: nadpisy, hlavní hodnoty a běžný obsah karet. */
.section-heading h2 { font-size: calc(22px * var(--main-text-scale)); }
.welcome-row h2 { font-size: calc(24px * var(--main-text-scale)); }
:where(.offer-card, .vehicle-card, .public-profile-card, .auction-card, .stat-card, .panel, .settings-panel) h3 { font-size: calc(12px * var(--main-text-scale)); }
.offer-card .card-price, .metric-card > div > strong { font-size: calc(20px * var(--main-text-scale)); }
.profile-description, .welcome-copy { font-size: calc(9.5px * var(--main-text-scale)); }

/* Nabídka: levá navigace, značka a horní panel. Nejdrobnější položky kombinují oba posuvníky. */
.nav-item { font-size: calc(10px * var(--menu-text-scale)); }
.nav-label { font-size: calc(8.5px * var(--menu-micro-text-scale)); }
.brand-copy strong { font-size: calc(15px * var(--menu-text-scale)); }
.brand-copy span { font-size: calc(8.5px * var(--menu-micro-text-scale)); }
.topbar h1 { font-size: calc(17px * var(--menu-text-scale)); }
.profile-button strong { font-size: calc(10px * var(--menu-text-scale)); }
.profile-button small, .live-clock small { font-size: calc(8.5px * var(--menu-micro-text-scale)); }

/* Popisky a data: pracovní údaje se řídí posuvníkem Popisky a data. */
.offer-card small,
.vehicle-card small,
.load-row small,
.detail-list small,
.mini-route small,
.eyebrow,
.field > span,
.section-filters label,
.offer-data-grid dt,
.bank-details dt,
.document-row small,
.map-stop small,
.stat-card small,
.profile-stats small,
.vehicle-tags span,
.route-stop-country .route-stop-city {
  font-size: calc(9px * var(--label-text-scale));
}

/* Nejmenší pracovní údaje: reagují současně na Popisky a data + Nejdrobnější písmo. */
.route-stop-country .route-stop-time,
.filter-choice small,
.badge-legend small,
.review-eligibility-list small,
.registry-suggestion-menu small,
.profile-review-snippet small,
.profile-overview-stats small,
.profile-overview-stats em,
.review-summary small,
.achievement-badge-hint,
.achievement-progress-copy small,
.message-avatar > .loyalty-badge.icon-only > b {
  font-size: calc(8.5px * var(--label-micro-text-scale));
  line-height: 1.45;
}

/* Chat: všechny základní i nejmenší chatové texty skutečně následují posuvník Text chatu. */
.conversation-copy strong,
.chat-pane-head strong,
.dock-chat-head strong,
.dock-message,
.dock-compose input,
.chat-compose input,
.chat-message,
.chat-bubble {
  font-size: calc(9px * var(--chat-text-scale));
}
.conversation-copy small,
.conversation-last-date,
.conversation time,
.chat-pane-head small,
.simulation-role,
.chat-image-name,
.conversation-search-results small,
.conversation-no-result {
  font-size: calc(8.5px * var(--chat-micro-text-scale));
  line-height: 1.45;
}

/* Mikrotexty napříč systémem a registrací. */
.setting-title p,
.scale-setting small,
.switch-row small,
.download-option small,
.notification-item small,
.notification-item time,
.toast small,
.filter-hint,
.filter-set-head span,
.filter-set-head small,
.filter-builder-toolbar,
.result-limit,
.auth-brand small,
.auth-field > span,
.registration-plan-card div > p:not(.eyebrow),
.registration-plan-card li,
.review-card dt,
.review-card dd,
.plan-review small,
.license-consent small,
.payment-warning,
.helper-box small,
.image-preview-footer > span {
  font-size: calc(9px * var(--micro-text-scale));
  line-height: 1.5;
}

/* Posuvníky: čitelnější a hmatatelnější, beze změny logiky. */
.scale-setting input[type="range"] { height: 22px; cursor: pointer; }
.scale-setting input[type="range"]::-webkit-slider-runnable-track { height: 5px; border-radius: 999px; background: color-mix(in srgb,var(--border-strong) 72%,transparent); }
.scale-setting input[type="range"]::-webkit-slider-thumb { width: 15px; height: 15px; margin-top: -5px; border: 2px solid var(--panel-solid); border-radius: 50%; background: var(--accent-2); box-shadow: 0 0 10px color-mix(in srgb,var(--accent) 48%,transparent); -webkit-appearance: none; }
.scale-setting input[type="range"]::-moz-range-track { height: 5px; border: 0; border-radius: 999px; background: color-mix(in srgb,var(--border-strong) 72%,transparent); }
.scale-setting input[type="range"]::-moz-range-progress { height: 5px; border-radius: 999px; background: var(--accent); }
.scale-setting input[type="range"]::-moz-range-thumb { width: 13px; height: 13px; border: 2px solid var(--panel-solid); border-radius: 50%; background: var(--accent-2); box-shadow: 0 0 10px color-mix(in srgb,var(--accent) 48%,transparent); }

/* K-Line — doplňkové zvýraznění a zesvětlení pro jednotlivé skupiny textu. */
.scale-setting { grid-template-columns: minmax(170px,1fr) minmax(150px,.8fr) 58px; }
.scale-style-controls { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 7px; padding-top: 2px; }
.scale-style-toggle { position: relative; display: inline-flex; align-items: center; cursor: pointer; }
.scale-style-toggle input { position: absolute; opacity: 0; pointer-events: none; }
.scale-style-toggle span { display: inline-flex; align-items: center; min-height: 27px; padding: 5px 9px; border: 1px solid var(--border); border-radius: 999px; background: color-mix(in srgb,var(--panel-alt) 90%,transparent); color: var(--muted); font-size: calc(8.5px * var(--micro-text-scale)); font-weight: 750; transition: border-color 150ms ease, background-color 150ms ease, color 150ms ease, box-shadow 150ms ease, transform 150ms ease; }
.scale-style-toggle:hover span { transform: translateY(-1px); border-color: color-mix(in srgb,var(--accent) 42%,var(--border)); color: var(--text); box-shadow: 0 6px 16px color-mix(in srgb,var(--accent) 12%,transparent); }
.scale-style-toggle input:checked + span { border-color: color-mix(in srgb,var(--accent) 62%,transparent); background: var(--accent-soft); color: var(--accent-2); box-shadow: 0 0 0 2px color-mix(in srgb,var(--accent) 12%,transparent), 0 7px 18px color-mix(in srgb,var(--accent) 12%,transparent); }
.scale-style-toggle input:focus-visible + span { outline: 2px solid var(--accent); outline-offset: 2px; }

html[data-main-text-emphasis="on"] :where(.section-heading h2,.welcome-row h2,.profile-description,.welcome-copy,.offer-card h3,.vehicle-card h3,.public-profile-card h3,.auction-card h3,.stat-card h3,.panel h3,.settings-panel h3,.metric-card > div > strong,.card-price) { font-weight: 850 !important; }
html[data-main-text-bright="on"] :where(.profile-description,.welcome-copy,.section-heading p,.panel p,.settings-panel p) { color: var(--text) !important; text-shadow: 0 0 10px color-mix(in srgb,var(--accent) 9%,transparent); }

html[data-menu-text-emphasis="on"] :where(.nav-item,.nav-label,.brand-copy strong,.brand-copy span,.topbar h1,.profile-button strong,.profile-button small,.live-clock small) { font-weight: 850 !important; }
html[data-menu-text-bright="on"] :where(.nav-item,.nav-label,.brand-copy span,.profile-button small,.live-clock small) { color: var(--text) !important; text-shadow: 0 0 9px color-mix(in srgb,var(--accent) 10%,transparent); }

html[data-label-text-emphasis="on"] :where(.offer-card small,.vehicle-card small,.load-row small,.detail-list small,.mini-route small,.eyebrow,.field > span,.section-filters label,.offer-data-grid dt,.bank-details dt,.document-row small,.map-stop small,.stat-card small,.profile-stats small,.vehicle-tags span,.route-stop-country .route-stop-city,.route-stop-country .route-stop-time,.filter-choice small,.badge-legend small) { font-weight: 800 !important; }
html[data-label-text-bright="on"] :where(.offer-card small,.vehicle-card small,.load-row small,.detail-list small,.mini-route small,.field > span,.section-filters label,.offer-data-grid dt,.bank-details dt,.document-row small,.map-stop small,.stat-card small,.profile-stats small,.route-stop-country .route-stop-city,.route-stop-country .route-stop-time,.filter-choice small,.badge-legend small) { color: var(--text-2) !important; }

html[data-chat-text-emphasis="on"] :where(.conversation-copy strong,.conversation-copy small,.chat-pane-head strong,.chat-pane-head small,.dock-chat-head strong,.dock-message,.dock-compose input,.chat-compose input,.chat-message p,.chat-bubble,.simulation-role) { font-weight: 800 !important; }
html[data-chat-text-bright="on"] :where(.conversation-copy small,.conversation-last-date,.conversation time,.chat-pane-head small,.simulation-role,.chat-image-name,.conversation-search-results small,.conversation-no-result,.dock-message:not(.mine),.chat-message:not(.user) p) { color: var(--text) !important; }

html[data-micro-text-emphasis="on"] :where(.setting-title p,.scale-setting small,.switch-row small,.download-option small,.notification-item small,.notification-item time,.toast small,.filter-hint,.filter-set-head span,.filter-set-head small,.filter-builder-toolbar,.result-limit,.auth-brand small,.auth-field > span,.registration-plan-card div > p:not(.eyebrow),.registration-plan-card li,.review-card dt,.review-card dd,.plan-review small,.license-consent small,.payment-warning,.helper-box small,.image-preview-footer > span) { font-weight: 800 !important; }
html[data-micro-text-bright="on"] :where(.setting-title p,.scale-setting small,.switch-row small,.download-option small,.notification-item small,.notification-item time,.toast small,.filter-hint,.filter-set-head span,.filter-set-head small,.filter-builder-toolbar,.result-limit,.auth-brand small,.auth-field > span,.registration-plan-card div > p:not(.eyebrow),.registration-plan-card li,.review-card dt,.review-card dd,.plan-review small,.license-consent small,.payment-warning,.helper-box small,.image-preview-footer > span) { color: var(--text-2) !important; }

/* K-Line — tapety jednotlivých konverzací. Výběr je pouze v sekci Zprávy a nabídky. */
.chat-pane { position: relative; }
.chat-wallpaper-toggle { display: inline-flex; align-items: center; gap: 5px; }
.chat-wallpaper-toggle svg { width: 12px; height: 12px; }
.chat-wallpaper-picker { position: absolute; z-index: 96; top: 62px; right: 14px; width: min(530px, calc(100% - 28px)); max-height: calc(100% - 82px); padding: 12px; margin: 0; overflow-y: auto; pointer-events: auto; isolation: isolate; border: 1px solid var(--border-strong); border-radius: 15px; background: color-mix(in srgb,var(--panel-solid) 99%,#06101d 1%); box-shadow: 0 30px 78px rgba(0,0,0,.52), 0 10px 24px rgba(0,0,0,.14), 0 0 28px color-mix(in srgb,var(--accent-glow) 11%,transparent), 0 0 0 1px color-mix(in srgb,var(--accent) 14%,transparent); backdrop-filter: blur(20px); }
.chat-wallpaper-picker-head { display: flex !important; align-items: center; justify-content: space-between; gap: 12px !important; margin-bottom: 10px; }
.chat-wallpaper-picker-head > div { display: grid; gap: 2px; }
.chat-wallpaper-picker-head strong { font-size: 11px; }
.chat-wallpaper-picker-head small { color: var(--muted); font-size: 8.5px; }
.chat-wallpaper-picker-head > button { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid var(--border); border-radius: 9px; background: var(--panel-alt); color: var(--text); cursor: pointer; font-size: 17px; }
.chat-wallpaper-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.chat-wallpaper-choice { display: grid; grid-template-columns: 54px 1fr; align-items: center; gap: 9px; min-width: 0; padding: 7px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); color: var(--text); text-align: left; cursor: pointer; transition: transform 150ms ease, border-color 150ms ease, box-shadow 150ms ease; }
.chat-wallpaper-choice:hover { transform: translateY(-2px); border-color: color-mix(in srgb,var(--accent) 50%,var(--border)); box-shadow: 0 10px 24px color-mix(in srgb,var(--accent) 12%,transparent); }
.chat-wallpaper-choice.selected { border-color: var(--accent); box-shadow: 0 0 0 2px var(--accent-soft); }
.chat-wallpaper-choice > span:last-child { display: grid; min-width: 0; gap: 2px; }
.chat-wallpaper-choice strong { font-size: 9px; }
.chat-wallpaper-choice small { overflow: hidden; color: var(--muted); font-size: 7.5px; text-overflow: ellipsis; white-space: nowrap; }
.chat-wallpaper-swatch { display: block; width: 54px; height: 38px; border: 1px solid rgba(255,255,255,.18); border-radius: 8px; box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 5px 12px rgba(0,0,0,.15); background-size: cover; }

.wallpaper-kline { background: radial-gradient(circle at 20% 20%, rgba(69,144,255,.35), transparent 35%), linear-gradient(145deg,#0c1829,#10223a 60%,#07111f); }
.wallpaper-kline-logo { background-image: var(--logo-image), radial-gradient(circle at 50% 45%,rgba(47,126,235,.28),transparent 56%), linear-gradient(145deg,#07101d,#102644 58%,#050b14); background-repeat: no-repeat; background-position: center; background-size: 82% auto, cover, cover; }
.wallpaper-chrome { background: linear-gradient(120deg,rgba(255,255,255,.16),transparent 18%,rgba(255,255,255,.08) 35%,transparent 52%), repeating-linear-gradient(135deg,#1b222b 0 12px,#3b4652 12px 15px,#111820 15px 28px); }
.wallpaper-light { background: radial-gradient(circle at 18% 12%,#fff 0 13%,transparent 34%), linear-gradient(135deg,#eef5fb,#cdddea 48%,#f7fbff); }
.wallpaper-night { background: radial-gradient(circle at 75% 18%,rgba(79,116,255,.28),transparent 28%), radial-gradient(circle at 28% 78%,rgba(26,64,124,.34),transparent 32%), linear-gradient(145deg,#030812,#081426 55%,#02050b); }
.wallpaper-sunset { background: radial-gradient(circle at 78% 72%,rgba(255,185,72,.42),transparent 30%), radial-gradient(circle at 20% 30%,rgba(225,58,126,.34),transparent 32%), linear-gradient(145deg,#392155,#8a3558 50%,#da7043); }
.wallpaper-aurora { background: radial-gradient(ellipse at 70% 20%,rgba(80,255,194,.38),transparent 34%), radial-gradient(ellipse at 20% 70%,rgba(57,139,255,.34),transparent 40%), linear-gradient(145deg,#06131d,#083340 52%,#07151b); }

.chat-pane[data-chat-wallpaper="kline"],
.chat-pane[data-chat-wallpaper="kline"] .chat-stream,
.dock-chat[data-chat-wallpaper="kline"],
.dock-chat[data-chat-wallpaper="kline"] .dock-messages { background: radial-gradient(circle at 18% 18%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 30%), linear-gradient(145deg,color-mix(in srgb,var(--panel) 96%,#0d1d32 4%),color-mix(in srgb,var(--panel-alt) 94%,#132a48 6%)); }
.chat-pane[data-chat-wallpaper="kline-logo"],
.chat-pane[data-chat-wallpaper="kline-logo"] .chat-stream,
.dock-chat[data-chat-wallpaper="kline-logo"],
.dock-chat[data-chat-wallpaper="kline-logo"] .dock-messages { background-image: linear-gradient(color-mix(in srgb,var(--panel-solid) 40%,transparent),color-mix(in srgb,var(--panel-solid) 40%,transparent)), var(--logo-image), radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 56%), linear-gradient(145deg,#050c16,#10243f 55%,#040912); background-repeat: no-repeat; background-position: center, center, center, center; background-size: cover, 100% 100%, cover, cover; background-attachment: scroll; }
.chat-pane[data-chat-wallpaper="chrome"],
.chat-pane[data-chat-wallpaper="chrome"] .chat-stream,
.dock-chat[data-chat-wallpaper="chrome"],
.dock-chat[data-chat-wallpaper="chrome"] .dock-messages { background: linear-gradient(120deg,rgba(255,255,255,.07),transparent 16%,rgba(255,255,255,.035) 36%,transparent 52%), repeating-linear-gradient(135deg,#151b23 0 22px,#29323d 22px 25px,#0f141b 25px 48px); }
.chat-pane[data-chat-wallpaper="light"],
.chat-pane[data-chat-wallpaper="light"] .chat-stream,
.dock-chat[data-chat-wallpaper="light"],
.dock-chat[data-chat-wallpaper="light"] .dock-messages { background: radial-gradient(circle at 14% 10%,rgba(255,255,255,.95),transparent 32%), linear-gradient(135deg,#dde9f3,#bfcfdd 50%,#eef5fa); }
.chat-pane[data-chat-wallpaper="night"],
.chat-pane[data-chat-wallpaper="night"] .chat-stream,
.dock-chat[data-chat-wallpaper="night"],
.dock-chat[data-chat-wallpaper="night"] .dock-messages { background: radial-gradient(circle at 82% 20%,rgba(71,101,255,.2),transparent 29%), radial-gradient(circle at 20% 82%,rgba(32,86,170,.24),transparent 34%), linear-gradient(145deg,#02060c,#081427 58%,#010409); }
.chat-pane[data-chat-wallpaper="sunset"],
.chat-pane[data-chat-wallpaper="sunset"] .chat-stream,
.dock-chat[data-chat-wallpaper="sunset"],
.dock-chat[data-chat-wallpaper="sunset"] .dock-messages { background: radial-gradient(circle at 78% 76%,rgba(255,196,94,.32),transparent 30%), radial-gradient(circle at 16% 22%,rgba(229,63,135,.3),transparent 32%), linear-gradient(145deg,#392052,#7a2f55 48%,#bd5b3c); }
.chat-pane[data-chat-wallpaper="aurora"],
.chat-pane[data-chat-wallpaper="aurora"] .chat-stream,
.dock-chat[data-chat-wallpaper="aurora"],
.dock-chat[data-chat-wallpaper="aurora"] .dock-messages { background: radial-gradient(ellipse at 72% 17%,rgba(64,248,180,.26),transparent 35%), radial-gradient(ellipse at 18% 77%,rgba(58,135,255,.27),transparent 41%), linear-gradient(145deg,#041019,#072d38 55%,#061116); }

/* Skleněné vrstvy u tapet drží text a ovládání čitelné ve všech třech vzhledech. */
.chat-pane[data-chat-wallpaper] .chat-pane-head,
.chat-pane[data-chat-wallpaper] .chat-compose { background: color-mix(in srgb,var(--panel-solid) 91%,transparent); backdrop-filter: blur(14px); }
.dock-chat[data-chat-wallpaper] .dock-chat-head,
.dock-chat[data-chat-wallpaper] .dock-compose { background: color-mix(in srgb,var(--panel-solid) 92%,transparent); backdrop-filter: blur(12px); }
.chat-pane[data-chat-wallpaper] .chat-message p,
.dock-chat[data-chat-wallpaper] .dock-message:not(.mine) { box-shadow: 0 7px 20px rgba(0,0,0,.16); }
.chat-pane[data-chat-wallpaper="light"] .chat-message:not(.user) p,
.dock-chat[data-chat-wallpaper="light"] .dock-message:not(.mine) { background: rgba(18,35,54,.88); color: #f3f8ff; }
.chat-pane[data-chat-wallpaper="light"] .chat-empty { color: #44586b; }
.chat-pane[data-chat-wallpaper="light"] .chat-empty strong { color: #182c3e; }

@media (max-width: 760px) {
  .chat-wallpaper-grid { grid-template-columns: 1fr 1fr; }
  .chat-wallpaper-picker { right: 8px; top: 66px; width: calc(100% - 16px); max-height: calc(100% - 84px); }
  .chat-pane-tools .simulation-role { display: none; }
}

@media (max-width: 760px) {
  .scale-setting { grid-template-columns: minmax(0,1fr) 55px; }
  .scale-setting-copy, .scale-style-controls { grid-column: 1 / -1; }
}

/* Automatický překlad příchozích zpráv – originál zůstává nahoře, překlad je vizuálně odlišený. */
.translated-bubble {
  margin-top: 6px;
  padding: 7px 9px 8px;
  border: 1px solid color-mix(in srgb,var(--accent) 22%,transparent);
  border-left: 2px solid color-mix(in srgb,var(--accent-2) 72%,var(--accent));
  border-radius: 9px;
  background: color-mix(in srgb,var(--accent-soft) 58%,transparent);
  color: color-mix(in srgb,var(--accent-2) 72%,var(--text));
  opacity: .96;
}
.translated-bubble small {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-bottom: 4px;
  color: var(--accent-2);
  font-size: calc(8.5px * var(--chat-micro-text-scale));
  font-weight: 850;
  letter-spacing: .025em;
  text-transform: none;
}
.translation-mark {
  display: inline-grid;
  place-items: center;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  border: 1px solid color-mix(in srgb,var(--accent) 35%,transparent);
  border-radius: 6px;
  background: color-mix(in srgb,var(--accent) 14%,transparent);
  color: var(--accent-2);
  font-size: calc(8px * var(--chat-micro-text-scale));
  font-weight: 950;
  line-height: 1;
}
.translated-bubble .translation-copy {
  margin: 0;
  color: color-mix(in srgb,var(--accent-2) 58%,var(--text));
  font-size: calc(9px * var(--chat-text-scale));
  line-height: 1.5;
  font-style: italic;
}
.translation-pending { opacity: .62; }
.translation-pending .translation-mark { animation: translation-pulse 1.15s ease-in-out infinite; }
@keyframes translation-pulse { 0%,100% { opacity: .55; transform: scale(.92); } 50% { opacity: 1; transform: scale(1.05); } }

.dock-message:not(.mine) { display: grid; gap: 5px; }
.dock-message-original { display: block; font-weight: 650; letter-spacing: .01em; text-wrap: pretty; }
.dock-translated-bubble {
  display: grid;
  gap: 3px;
  margin: 2px -2px -1px;
  padding: 6px 7px;
  border-radius: 7px;
  background: color-mix(in srgb,var(--accent-soft) 72%,var(--panel-solid));
}
.dock-translated-bubble small {
  margin: 0;
  font-size: calc(7.8px * var(--chat-micro-text-scale));
}
.dock-translated-bubble .translation-copy {
  display: block;
  font-size: calc(8.5px * var(--chat-text-scale));
  line-height: 1.4;
}
.dock-translated-bubble .translation-mark {
  width: 14px;
  height: 14px;
  flex-basis: 14px;
  font-size: calc(7px * var(--chat-micro-text-scale));
}

/* Hlášení podezřelé spedice */
.button-report {
  border-color: color-mix(in srgb,#7f2845 78%,var(--border));
  background: linear-gradient(145deg,#7f2845,#57182d);
  color: #fff;
  box-shadow: 0 8px 20px rgba(91,24,48,.22), inset 0 1px 0 rgba(255,255,255,.12);
}
.button-report:hover {
  border-color: #a63b61;
  background: linear-gradient(145deg,#913052,#681c36);
  box-shadow: 0 12px 28px rgba(111,28,57,.34), 0 0 0 3px rgba(127,40,69,.10);
}
.button-report svg { width: 13px; height: 13px; }
.profile-dialog-actions { display: grid; gap: 8px; margin-top: 10px; }
#dialog-submit.report-submit {
  border-color: #9b365a;
  background: linear-gradient(145deg,#8a2d4c,#5e1a32);
  color: #fff;
  box-shadow: 0 9px 24px rgba(104,25,53,.28);
}
#dialog-submit.report-submit:hover { filter: brightness(1.08); transform: translateY(-1px); }
.app-dialog:has(.spedition-report-form),
.app-dialog:has(.spedition-report-detail) { width: min(860px,calc(100vw - 28px)); }
.spedition-report-form { display: grid; grid-template-columns: 1fr; gap: 13px; }
.report-target-card {
  display: flex; align-items: center; gap: 11px; padding: 12px;
  border: 1px solid color-mix(in srgb,#7f2845 36%,var(--border));
  border-radius: 13px;
  background: linear-gradient(135deg,color-mix(in srgb,#7f2845 9%,var(--panel-alt)),var(--panel-alt));
  box-shadow: 0 10px 28px rgba(72,18,39,.10);
}
.report-target-card > div { display: grid; gap: 3px; min-width: 0; }
.report-target-card small { color: #c46a88; font-size: calc(8.5px * var(--micro-text-scale)); font-weight: 800; }
.report-target-card strong { font-size: 12px; }
.report-target-card span { display: flex; align-items: center; gap: 5px; color: var(--muted); font-size: calc(8.5px * var(--micro-text-scale)); }
.report-target-card .country-flag { width: 18px; height: 13px; }
.field-hint { color: var(--muted); font-size: calc(8px * var(--micro-text-scale)); line-height: 1.45; }
.report-upload-card {
  display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 9px 14px;
  padding: 13px; border: 1px dashed color-mix(in srgb,#9b365a 48%,var(--border-strong));
  border-radius: 13px; background: color-mix(in srgb,#7f2845 5%,var(--panel-alt));
}
.report-upload-card > div { display: grid; gap: 3px; }
.report-upload-card > div strong { font-size: 10px; }
.report-upload-card > div small { color: var(--muted); font-size: calc(8px * var(--micro-text-scale)); }
.report-file-status { grid-column: 1 / -1; padding-top: 4px; border-top: 1px solid var(--border); color: var(--text-2); font-size: calc(8.5px * var(--micro-text-scale)); overflow-wrap: anywhere; }
.report-helper { border-left: 3px solid #8a2d4c; }
.report-admin-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; margin-bottom: 14px; }
.report-admin-summary > span {
  display: grid; gap: 3px; padding: 12px 14px; border: 1px solid var(--border);
  border-radius: 12px; background: var(--panel); box-shadow: var(--shadow);
}
.report-admin-summary small { color: var(--muted); font-size: calc(8px * var(--micro-text-scale)); }
.report-admin-summary strong { font-size: 20px; color: #b34b70; }
.spedition-report-list { display: grid; gap: 11px; }
.spedition-report-card {
  display: grid; gap: 12px; padding: 15px; border: 1px solid color-mix(in srgb,#7f2845 22%,var(--border));
  border-radius: 15px; background: var(--panel); box-shadow: var(--shadow);
  transition: transform 150ms ease,border-color 150ms ease,box-shadow 150ms ease;
}
.spedition-report-card:hover { transform: translateY(-2px); border-color: color-mix(in srgb,#9b365a 55%,var(--border)); box-shadow: 0 16px 38px rgba(77,20,42,.18); }
.spedition-report-card-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.spedition-report-card-head > div { display: grid; gap: 4px; min-width: 0; }
.spedition-report-card-head strong { font-size: 12px; }
.spedition-report-card-head small,.spedition-report-card-head time { color: var(--muted); font-size: calc(8px * var(--micro-text-scale)); }
.report-status { width: fit-content; padding: 4px 7px; border-radius: 999px; background: rgba(127,40,69,.14); color: #cf668a; font-size: calc(7.5px * var(--micro-text-scale)); font-weight: 850; }
.spedition-report-card > p { margin: 0; color: var(--text-2); font-size: 10px; line-height: 1.65; }
.report-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.report-meta > span { display: grid; align-content: start; gap: 3px; min-width: 0; padding: 9px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); }
.report-meta small { color: var(--muted); font-size: calc(7.8px * var(--micro-text-scale)); }
.report-meta strong { font-size: 9px; }
.report-meta em { overflow: hidden; color: var(--muted); font-size: calc(8px * var(--micro-text-scale)); font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.report-attachment { display: grid; gap: 7px; }
.report-attachment img { display: block; width: min(100%,520px); max-height: 420px; object-fit: contain; border: 1px solid var(--border); border-radius: 11px; background: var(--bg-soft); cursor: zoom-in; }
.report-attachment span { color: var(--muted); font-size: calc(8px * var(--micro-text-scale)); overflow-wrap: anywhere; }
.report-attachment.compact { grid-template-columns: 36px 1fr; align-items: center; }
.report-attachment.compact img { width: 36px; height: 36px; object-fit: cover; border-radius: 8px; }
.report-pdf-link { display: flex; align-items: center; gap: 8px; width: fit-content; max-width: 100%; padding: 8px 10px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); color: var(--text); text-decoration: none; }
.report-pdf-link:hover { border-color: #9b365a; box-shadow: 0 8px 22px rgba(104,25,53,.14); }
.report-pdf-link svg { width: 16px; height: 16px; color: #c05a7f; }
.report-pdf-link > span { display: grid; gap: 2px; min-width: 0; }
.report-pdf-link strong { overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.report-pdf-link small { color: var(--muted); font-size: calc(7.5px * var(--micro-text-scale)); }
.report-no-attachment { color: var(--muted); font-size: calc(8px * var(--micro-text-scale)); }
.spedition-report-detail { display: grid; gap: 13px; }
.report-detail-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; }
.report-detail-grid > div,.report-reason-box,.report-evidence-box { display: grid; gap: 5px; padding: 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); }
.report-detail-grid small,.report-reason-box > small,.report-evidence-box > small { color: #c45b7f; font-size: calc(8px * var(--micro-text-scale)); font-weight: 800; }
.report-detail-grid strong { font-size: 10px; }
.report-detail-grid span { color: var(--muted); font-size: calc(8px * var(--micro-text-scale)); }
.report-reason-box p { margin: 0; color: var(--text-2); font-size: 10px; line-height: 1.7; white-space: pre-wrap; }

@media (max-width: 720px) {
  .report-upload-card { grid-template-columns: 1fr; }
  .report-file-status { grid-column: 1; }
  .report-admin-summary,.report-detail-grid,.report-meta { grid-template-columns: 1fr; }
}

/* Dopravce: meteorologicke vystrahy na aktivnich trasach */
.transport-card-status { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }
.weather-route-alert { position: relative; display: inline-flex; align-items: center; gap: 5px; min-height: 30px; padding: 5px 8px; border: 1px solid color-mix(in srgb,var(--danger) 62%,transparent); border-radius: 10px; background: color-mix(in srgb,var(--danger) 13%,var(--panel)); color: #ffb5ba; box-shadow: 0 0 0 1px color-mix(in srgb,var(--danger) 8%,transparent),0 0 18px color-mix(in srgb,var(--danger) 24%,transparent); animation: weather-warning-blink 1.15s ease-in-out infinite; }
.weather-route-alert b { font-size: 16px; line-height: 1; }
.weather-route-alert small { color: inherit; font-size: 8.5px; font-weight: 850; letter-spacing: .02em; }
.weather-route-alert.critical { border-color: color-mix(in srgb,var(--danger) 88%,white 8%); background: color-mix(in srgb,var(--danger) 21%,var(--panel)); box-shadow: 0 0 0 2px color-mix(in srgb,var(--danger) 10%,transparent),0 0 24px color-mix(in srgb,var(--danger) 42%,transparent); }
.offer-card.has-weather-warning { border-color: color-mix(in srgb,var(--danger) 42%,var(--border)); box-shadow: var(--shadow),0 0 24px color-mix(in srgb,var(--danger) 11%,transparent); }
.weather-nav-dot { width: 10px; height: 10px; border: 1px solid rgba(255,255,255,.4); border-radius: 50%; background: #ff3549; box-shadow: 0 0 0 4px rgba(255,53,73,.12),0 0 15px rgba(255,53,73,.72); animation: weather-nav-blink 1s ease-in-out infinite; }
.transport-weather-warning { display: grid; gap: 8px; padding: 13px 14px; border: 1px solid color-mix(in srgb,var(--danger) 48%,var(--border)); border-radius: 13px; background: linear-gradient(135deg,color-mix(in srgb,var(--danger) 15%,var(--panel-alt)),var(--panel-alt)); box-shadow: 0 12px 30px color-mix(in srgb,var(--danger) 12%,transparent); }
.transport-weather-warning > div { display: grid; gap: 3px; }
.transport-weather-warning strong { color: #ff9da5; font-size: 11px; }
.transport-weather-warning small { color: var(--muted); font-size: 8.5px; }
.transport-weather-warning p { margin: 0; color: var(--text-2); font-size: 9.5px; line-height: 1.55; }
.transport-weather-warning.critical { border-color: color-mix(in srgb,var(--danger) 78%,white 8%); background: linear-gradient(135deg,color-mix(in srgb,var(--danger) 23%,var(--panel-alt)),var(--panel-alt)); }
.notification-item.weather-notification { border-color: color-mix(in srgb,var(--danger) 48%,var(--border)); background: color-mix(in srgb,var(--danger) 9%,var(--panel-alt)); box-shadow: 0 8px 24px color-mix(in srgb,var(--danger) 10%,transparent); }
.notification-item.weather-notification > span { background: color-mix(in srgb,var(--danger) 16%,var(--panel-alt)); color: #ff9ea7; font-size: 19px; animation: weather-warning-blink 1.25s ease-in-out infinite; }
@keyframes weather-warning-blink { 0%,100% { opacity: .58; transform: scale(.96); filter: saturate(.9); } 50% { opacity: 1; transform: scale(1.04); filter: saturate(1.25); } }
@keyframes weather-nav-blink { 0%,100% { opacity: .32; transform: scale(.78); box-shadow: 0 0 0 2px rgba(255,53,73,.08),0 0 5px rgba(255,53,73,.25); } 50% { opacity: 1; transform: scale(1.14); box-shadow: 0 0 0 5px rgba(255,53,73,.16),0 0 17px rgba(255,53,73,.8); } }


/* Oblíbené firmy / dopravci */
.button-favorite {
  border-color: color-mix(in srgb,#2b77d5 72%,var(--border));
  background: linear-gradient(145deg,#2f80df,#1f5fae);
  color: #fff;
  box-shadow: 0 8px 20px rgba(31,95,174,.22), inset 0 1px 0 rgba(255,255,255,.16);
}
.button-favorite:hover {
  border-color: #56a0f4;
  background: linear-gradient(145deg,#388bea,#2569bf);
  box-shadow: 0 12px 28px rgba(31,95,174,.32), 0 0 0 3px rgba(47,128,223,.10);
}
.button-favorite.is-favorite {
  border-color: color-mix(in srgb,#4a94e8 85%,var(--border));
  background: linear-gradient(145deg,#236fc7,#184f91);
}
.button-favorite svg { width: 13px; height: 13px; fill: currentColor; }
.profile-dialog-secondary-actions {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 8px;
}
.profile-dialog-secondary-actions .button { width: 100%; min-width: 0; justify-content: center; }
.profile-dialog-secondary-actions .button:only-child { grid-column: 1 / -1; }
.favorite-nav-item svg { fill: currentColor; }
.favorites-profile-grid { margin-top: 12px; }
@media (max-width: 640px) {
  .profile-dialog-secondary-actions { grid-template-columns: 1fr; }
}

/* K-Line · Kurzy měn */
html[data-mode="simple"] .nav-advanced[data-advanced] > [data-view="rates"] { display: flex !important; }

.fx-dashboard-panel { position: relative; overflow: hidden; }
.fx-dashboard-panel::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle at 90% 0%, color-mix(in srgb, var(--accent) 13%, transparent), transparent 42%); }
.fx-dashboard-panel > * { position: relative; z-index: 1; }
.fx-dashboard-loading,
.fx-loading-state { display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 112px; color: var(--text-2); }
.fx-loading-state { min-height: 260px; flex-direction: column; text-align: center; }
.fx-loading-state strong { color: var(--text); font-size: calc(11px * var(--main-text-scale, 1)); }
.fx-loading-state small { max-width: 520px; color: var(--muted); font-size: calc(9px * var(--micro-text-scale, 1)); }
.fx-loading-ring { width: 24px; height: 24px; flex: 0 0 auto; border: 2px solid color-mix(in srgb, var(--accent) 18%, transparent); border-top-color: var(--accent); border-radius: 50%; animation: fx-spin .8s linear infinite; }
@keyframes fx-spin { to { transform: rotate(360deg); } }

.fx-dashboard-loading div { display: grid; gap: 3px; }
.fx-dashboard-loading strong,
.fx-dashboard-error strong { color: var(--text); font-size: calc(10px * var(--main-text-scale, 1)); }
.fx-dashboard-loading small,
.fx-dashboard-error small { color: var(--muted); font-size: calc(8.5px * var(--micro-text-scale, 1)); }
.fx-dashboard-error { display: grid; gap: 4px; min-height: 94px; align-content: center; }
.fx-dashboard-rate { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; margin: 8px 0 4px; }
.fx-dashboard-rate > div { display: grid; gap: 1px; }
.fx-dashboard-rate small { color: var(--muted); font-size: calc(8.5px * var(--micro-text-scale, 1)); }
.fx-dashboard-rate strong { color: var(--text); font-size: calc(18px * var(--main-text-scale, 1)); letter-spacing: -.03em; }
.fx-dashboard-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 4px; color: var(--muted); font-size: calc(8px * var(--micro-text-scale, 1)); }
.fx-dashboard-foot strong { color: var(--text-2); font-weight: 800; }

.fx-rates-content { display: grid; gap: 16px; }
.fx-hero-panel { position: relative; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(180px, .65fr); grid-template-areas: "copy movement" "controls chart" "source source"; gap: 14px 18px; overflow: hidden; padding: 19px; border: 1px solid color-mix(in srgb, var(--accent) 28%, var(--border)); border-radius: 18px; background: linear-gradient(135deg, color-mix(in srgb, var(--accent) 13%, var(--panel-solid)), var(--panel-solid) 58%, color-mix(in srgb, var(--accent-2) 8%, var(--panel-solid))); box-shadow: 0 14px 38px color-mix(in srgb, var(--accent) 10%, transparent); }
.fx-hero-panel::after { content: ""; position: absolute; right: -80px; top: -120px; width: 280px; height: 280px; border-radius: 50%; background: radial-gradient(circle, color-mix(in srgb, var(--accent) 18%, transparent), transparent 68%); pointer-events: none; }
.fx-hero-copy { grid-area: copy; position: relative; z-index: 1; }
.fx-hero-title { display: flex; align-items: center; gap: 13px; margin-top: 7px; }
.fx-hero-title h2 { margin: 0; color: var(--text); font-size: clamp(19px, 2.2vw, 29px); letter-spacing: -.045em; }
.fx-hero-title p { margin: 4px 0 0; color: var(--text-2); font-size: calc(9.5px * var(--label-text-scale, 1)); }
.fx-hero-movement { grid-area: movement; position: relative; z-index: 1; display: grid; justify-items: end; align-content: center; gap: 4px; text-align: right; }
.fx-hero-movement small { color: var(--muted); font-size: calc(8.5px * var(--micro-text-scale, 1)); }
.fx-hero-movement strong { font-size: calc(16px * var(--main-text-scale, 1)); }
.fx-hero-movement span { color: var(--text-2); font-size: calc(8.5px * var(--label-text-scale, 1)); }
.fx-hero-controls { grid-area: controls; position: relative; z-index: 1; display: flex; align-items: end; gap: 9px; }
.fx-hero-controls label { display: grid; gap: 5px; min-width: min(300px, 100%); }
.fx-hero-controls label > span { color: var(--muted); font-size: calc(8px * var(--micro-text-scale, 1)); font-weight: 750; letter-spacing: .03em; }
.fx-hero-controls select { min-height: 39px; padding: 0 34px 0 11px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); color: var(--text); font: inherit; font-size: calc(9.5px * var(--label-text-scale, 1)); outline: none; }
.fx-hero-controls select:focus { border-color: color-mix(in srgb, var(--accent) 60%, var(--border)); box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 13%, transparent); }
.fx-hero-chart { grid-area: chart; position: relative; z-index: 1; align-self: end; }
.fx-source-line { grid-area: source; position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 10px; border-top: 1px solid color-mix(in srgb, var(--border) 78%, transparent); color: var(--muted); font-size: calc(8px * var(--micro-text-scale, 1)); }

.fx-currency-token { display: inline-grid; place-items: center; min-width: 42px; height: 34px; padding: 0 7px; border: 1px solid color-mix(in srgb, var(--accent) 32%, var(--border)); border-radius: 10px; background: linear-gradient(145deg, color-mix(in srgb, var(--accent) 20%, var(--panel-alt)), var(--panel-alt)); color: var(--accent-2); font-size: 10px; font-weight: 900; letter-spacing: .06em; box-shadow: inset 0 1px rgba(255,255,255,.08); }
.fx-currency-token.large { min-width: 56px; height: 46px; border-radius: 13px; font-size: 12px; }

.fx-rate-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.fx-rate-card { position: relative; display: grid; gap: 10px; overflow: hidden; padding: 14px; border: 1px solid var(--border); border-radius: 15px; background: linear-gradient(150deg, var(--panel-solid), color-mix(in srgb, var(--accent) 3.5%, var(--panel-alt))); transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.fx-rate-card:hover { transform: translateY(-1px); border-color: color-mix(in srgb, var(--accent) 36%, var(--border)); box-shadow: 0 12px 28px color-mix(in srgb, var(--accent) 8%, transparent); }
.fx-rate-card.is-selected { border-color: color-mix(in srgb, var(--accent) 52%, var(--border)); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 12%, transparent), 0 12px 28px color-mix(in srgb, var(--accent) 9%, transparent); }
.fx-rate-card.is-selected::before { content: var(--i18n-on-dashboard, "Na Přehledu"); position: absolute; right: 11px; top: 43px; padding: 3px 6px; border-radius: 99px; background: var(--accent-soft); color: var(--accent-2); font-size: 7.5px; font-weight: 850; letter-spacing: .03em; }
.fx-rate-head { display: grid; grid-template-columns: auto 1fr auto; gap: 9px; align-items: center; }
.fx-rate-head > div { display: grid; gap: 2px; min-width: 0; }
.fx-rate-head strong { overflow: hidden; color: var(--text); font-size: calc(10px * var(--main-text-scale, 1)); text-overflow: ellipsis; white-space: nowrap; }
.fx-rate-head small { color: var(--muted); font-size: calc(8px * var(--micro-text-scale, 1)); }
.fx-rate-current { display: grid; gap: 2px; padding: 9px 10px; border: 1px solid color-mix(in srgb, var(--border) 82%, transparent); border-radius: 10px; background: color-mix(in srgb, var(--panel-alt) 84%, transparent); }
.fx-rate-current small { color: var(--muted); font-size: calc(8px * var(--micro-text-scale, 1)); }
.fx-rate-current strong { color: var(--text); font-size: calc(13px * var(--main-text-scale, 1)); letter-spacing: -.02em; }
.fx-rate-compare { display: grid; grid-template-columns: repeat(2, 1fr); gap: 7px; }
.fx-rate-compare > span { display: grid; gap: 2px; padding: 7px 8px; border-radius: 9px; background: color-mix(in srgb, var(--panel-alt) 72%, transparent); }
.fx-rate-compare small { color: var(--muted); font-size: calc(7.8px * var(--micro-text-scale, 1)); }
.fx-rate-compare strong { color: var(--text-2); font-size: calc(9px * var(--label-text-scale, 1)); }
.fx-pin-button { min-height: 34px; margin-top: 1px; }

.fx-change { font-weight: 850; white-space: nowrap; }
.fx-change.up { color: var(--success); }
.fx-change.down { color: var(--danger); }
.fx-change.flat { color: var(--muted); }
.fx-rate-head > .fx-change { font-size: calc(8.5px * var(--label-text-scale, 1)); }
.fx-sparkline { display: block; width: 100%; height: 46px; color: var(--accent-2); opacity: .92; }
.fx-sparkline polyline { fill: none; stroke: currentColor; stroke-width: 2.1; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.fx-sparkline.up { color: var(--success); }
.fx-sparkline.down { color: var(--danger); }
.fx-sparkline.flat { color: var(--accent-2); }
.fx-sparkline-empty { display: grid; place-items: center; height: 46px; color: var(--muted); font-size: calc(8px * var(--micro-text-scale, 1)); }
.fx-disclaimer { display: flex; gap: 7px; align-items: flex-start; padding: 11px 13px; border: 1px dashed color-mix(in srgb, var(--border) 80%, transparent); border-radius: 11px; background: color-mix(in srgb, var(--panel-alt) 65%, transparent); color: var(--muted); font-size: calc(8.3px * var(--micro-text-scale, 1)); line-height: 1.5; }
.fx-disclaimer strong { color: var(--text-2); white-space: nowrap; }
.fx-empty-state { min-height: 320px; }

@media (min-width: 1260px) {
  .fx-rate-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .fx-hero-panel { grid-template-columns: 1fr; grid-template-areas: "copy" "movement" "chart" "controls" "source"; }
  .fx-hero-movement { justify-items: start; text-align: left; }
  .fx-hero-controls { align-items: stretch; flex-direction: column; }
  .fx-hero-controls label { min-width: 0; }
  .fx-source-line { align-items: flex-start; flex-direction: column; }
  .fx-rate-grid { grid-template-columns: 1fr; }
  .fx-dashboard-foot { align-items: flex-start; flex-direction: column; gap: 3px; }
}

/* === Úvodní stránka: rotující prezentace hlavních funkcí K-Line === */
/* K-Line mobilní aplikace – malé downloady pod kartou „K-Line v praxi“ */
.welcome-feature-column {
  width: 100%;
  max-width: 310px;
  justify-self: center;
  display: grid;
  gap: 10px;
  align-content: start;
}
.welcome-feature-column .welcome-feature-showcase { max-width: none; justify-self: stretch; }
.welcome-app-downloads {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  width: 100%;
}
.welcome-app-download {
  position: relative;
  min-width: 0;
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid color-mix(in srgb, var(--border) 80%, transparent);
  border-radius: 12px;
  text-decoration: none;
  color: var(--text);
  overflow: hidden;
  isolation: isolate;
  box-shadow: 0 8px 22px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.05);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, filter .18s ease;
}
.welcome-app-download::after {
  content: "";
  position: absolute;
  inset: -80% auto -80% -45%;
  width: 42%;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent);
  opacity: 0;
  z-index: -1;
  pointer-events: none;
}
.welcome-app-download-android {
  background: linear-gradient(145deg, color-mix(in srgb,#2fd07d 16%,var(--panel-solid)), color-mix(in srgb,#0ea5a5 9%,var(--panel-alt)));
  border-color: color-mix(in srgb,#42d98b 44%,var(--border));
}
.welcome-app-download-android:hover {
  transform: translateY(-2px);
  border-color: color-mix(in srgb,#55e79a 72%,var(--border));
  box-shadow: 0 12px 28px rgba(17,147,101,.19), 0 0 20px rgba(47,208,125,.13), inset 0 1px 0 rgba(255,255,255,.08);
}
.welcome-app-download-android:hover::after { opacity: 1; animation: welcome-app-download-shine .72s ease both; }
.welcome-app-download-apple {
  background: linear-gradient(145deg, color-mix(in srgb,#aab8cc 13%,var(--panel-solid)), color-mix(in srgb,#6683b5 8%,var(--panel-alt)));
  border-color: color-mix(in srgb,#9db0ca 28%,var(--border));
  opacity: .62;
  cursor: not-allowed;
}
.welcome-app-download-icon {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  background: rgba(255,255,255,.06);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.06);
}
.welcome-app-download-android .welcome-app-download-icon { color: #67efa7; background: rgba(47,208,125,.10); }
.welcome-app-download-apple .welcome-app-download-icon { color: #c7d2e3; }
.welcome-app-download-icon svg { width: 15px; height: 15px; }
.welcome-app-download > span:last-child { min-width: 0; display: grid; gap: 2px; text-align: left; }
.welcome-app-download strong { font-size: 8.7px; line-height: 1.2; font-weight: 850; }
.welcome-app-download small { color: var(--muted); font-size: 7.2px; line-height: 1.2; }
@keyframes welcome-app-download-shine { from { left: -45%; } to { left: 112%; } }
@media (max-width: 1180px) {
  .welcome-feature-column { width: min(560px,100%); max-width: none; justify-self: start; }
}
@media (max-width: 620px) {
  .welcome-app-downloads { grid-template-columns: 1fr; }
  .welcome-app-download { min-height: 44px; }
}

.auth-welcome-shell .welcome-stage { width: min(1540px, 100%); }
.auth-welcome-shell .welcome-hero {
  grid-template-columns: minmax(360px, .9fr) minmax(250px, .5fr) minmax(390px, 1.04fr);
  gap: clamp(20px, 2.7vw, 42px);
}
.auth-welcome-shell .welcome-hero h1 {
  max-width: 610px;
  font-size: clamp(43px, 4.75vw, 68px);
  line-height: 1.01;
}
.auth-welcome-shell .welcome-hero-copy > p:not(.auth-kicker) { max-width: 590px; }
.auth-welcome-shell .welcome-brand-visual { min-height: 470px; }

.welcome-feature-showcase {
  position: relative;
  z-index: 4;
  width: 100%;
  max-width: 310px;
  justify-self: center;
  padding: 10px;
  border: 1px solid color-mix(in srgb, var(--accent) 32%, var(--border));
  border-radius: 22px;
  background:
    linear-gradient(145deg, color-mix(in srgb, var(--panel-solid) 92%, transparent), color-mix(in srgb, var(--panel) 78%, transparent));
  box-shadow: 0 36px 105px rgba(0,0,0,.42), 0 0 48px color-mix(in srgb,var(--accent) 24%,transparent), 0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent), inset 0 0 0 1px rgba(255,255,255,.04);
  backdrop-filter: blur(20px);
  overflow: hidden;
}
.welcome-feature-showcase::before {
  content: "";
  position: absolute;
  inset: -45% -35% auto;
  height: 170px;
  background: radial-gradient(circle, var(--accent-glow), transparent 68%);
  opacity: .65;
  pointer-events: none;
}
.feature-showcase-label {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 2px 5px 9px;
  color: var(--accent-2);
  font-size: 8.8px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.feature-showcase-label span {
  width: 18px;
  height: 1px;
  background: currentColor;
  box-shadow: 0 0 9px currentColor;
}
.feature-showcase-stage {
  position: relative;
  min-height: 300px;
}
.feature-slide {
  --feature-tone: var(--accent);
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-rows: auto 1fr;
  align-content: start;
  gap: 14px;
  padding: 18px 17px 16px;
  border: 1px solid color-mix(in srgb, var(--feature-tone) 70%, transparent);
  border-radius: 16px;
  background:
    radial-gradient(circle at 20% 10%, color-mix(in srgb, var(--feature-tone) 17%, transparent), transparent 48%),
    linear-gradient(155deg, color-mix(in srgb, var(--panel-solid) 94%, transparent), color-mix(in srgb, var(--panel-alt) 90%, transparent));
  box-shadow:
    inset 3px 0 0 color-mix(in srgb, var(--feature-tone) 82%, white 6%),
    inset -1px 0 0 color-mix(in srgb, var(--feature-tone) 28%, transparent),
    0 0 24px color-mix(in srgb, var(--feature-tone) 13%, transparent),
    0 14px 35px rgba(0,0,0,.18);
  opacity: 0;
  transform: translateY(8px) scale(.985);
  filter: blur(3px);
  pointer-events: none;
  animation: welcome-feature-cycle 92s ease-in-out infinite both;
  animation-delay: calc(var(--feature-index, 0) * 4s);
}
.feature-radar { --feature-tone: #27b9f2; }
.feature-weather { --feature-tone: #3b82f6; }
.feature-translate { --feature-tone: #8b5cf6; }
.feature-favorites { --feature-tone: #1d8ff2; }
.feature-report { --feature-tone: #a62149; }
.feature-rates { --feature-tone: #1fbd77; }
.feature-chat { --feature-tone: #11a9a0; }
.feature-reviews { --feature-tone: #d69a28; }
.feature-capacity { --feature-tone: #5865e8; }
.feature-search { --feature-tone: #0aa7c5; }
.feature-alerts { --feature-tone: #d84a52; }
.feature-verified { --feature-tone: #20a96b; }
.feature-ai { --feature-tone: #7c5cff; }
.feature-auction { --feature-tone: #d78c28; }
.feature-statistics { --feature-tone: #28a6d7; }
.feature-music { --feature-tone: #df4b88; }
.feature-modern { --feature-tone: #5f7cff; }
.feature-loyalty { --feature-tone: #d8aa2f; }
.feature-followup { --feature-tone: #20c58a; }
.feature-rescue { --feature-tone: #d33f62; }
.feature-visual {
  position: relative;
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border: 1px solid color-mix(in srgb, var(--feature-tone) 55%, transparent);
  border-radius: 22px;
  background: color-mix(in srgb, var(--feature-tone) 12%, var(--panel-alt));
  color: color-mix(in srgb, var(--feature-tone) 78%, white 22%);
  box-shadow: 0 0 28px color-mix(in srgb, var(--feature-tone) 18%, transparent), inset 0 0 22px color-mix(in srgb, var(--feature-tone) 8%, transparent);
}
.feature-visual::after {
  content: "";
  position: absolute;
  width: 42px;
  height: 42px;
  border: 1px solid color-mix(in srgb, var(--feature-tone) 25%, transparent);
  border-radius: 50%;
}
.feature-visual svg { width: 34px; height: 34px; stroke-width: 1.55; }
.feature-slide-copy { display: grid; align-content: start; gap: 7px; }
.feature-slide-copy small {
  color: color-mix(in srgb, var(--feature-tone) 72%, var(--text) 28%);
  font-size: 8.8px;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.feature-slide-copy strong {
  color: var(--text);
  font-size: 15px;
  line-height: 1.28;
  letter-spacing: -.015em;
}
.feature-slide-copy p {
  margin: 0;
  color: var(--text-2);
  font-size: 10.2px;
  line-height: 1.65;
}
.feature-showcase-footer {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1px 7px;
  align-items: center;
  padding: 10px 5px 1px;
}
.feature-showcase-footer strong { color: var(--text-2); font-size: 8.8px; font-weight: 780; }
.feature-showcase-footer small { grid-column: 2; color: var(--muted); font-size: 8px; }
.feature-live-dot {
  grid-row: 1 / 3;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--success);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--success) 12%, transparent), 0 0 13px color-mix(in srgb, var(--success) 62%, transparent);
  animation: feature-live-pulse 1.8s ease-in-out infinite;
}
.welcome-feature-showcase:hover .feature-slide,
.welcome-feature-showcase:hover .feature-live-dot { animation-play-state: paused; }

@keyframes welcome-feature-cycle {
  0% { opacity: 0; transform: translateY(8px) scale(.985); filter: blur(3px); }
  .30% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
  4.25% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
  4.34% { opacity: 0; transform: translateY(-5px) scale(.99); filter: blur(2px); }
  100% { opacity: 0; transform: translateY(-5px) scale(.99); filter: blur(2px); }
}
@keyframes feature-live-pulse {
  0%, 100% { opacity: .65; transform: scale(.92); }
  50% { opacity: 1; transform: scale(1.12); }
}

@media (max-width: 1180px) {
  .auth-welcome-shell .welcome-hero { grid-template-columns: 1fr; gap: 26px; }
  .auth-welcome-shell .welcome-hero-copy { max-width: 760px; }
  .welcome-feature-showcase { width: min(560px, 100%); max-width: none; justify-self: start; }
  .feature-showcase-stage { min-height: 250px; }
  .feature-slide { grid-template-columns: auto 1fr; grid-template-rows: 1fr; align-items: center; }
  .feature-slide-copy strong { font-size: 16px; }
  .auth-welcome-shell .welcome-brand-visual { min-height: 420px; }
}
@media (max-width: 620px) {
  .auth-welcome-shell .welcome-hero h1 { font-size: clamp(38px, 11vw, 54px); }
  .welcome-feature-showcase { padding: 8px; border-radius: 18px; }
  .feature-showcase-stage { min-height: 292px; }
  .feature-slide { grid-template-columns: 1fr; grid-template-rows: auto 1fr; align-items: start; padding: 16px; }
  .feature-visual { width: 60px; height: 60px; border-radius: 18px; }
  .feature-visual svg { width: 29px; height: 29px; }
  .feature-slide-copy strong { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .feature-slide { animation: none !important; opacity: 0; transform: none; filter: none; }
  .feature-slide:first-child { opacity: 1; }
  .feature-live-dot { animation: none !important; }
}

/* Vlastní zobrazovací prvky na Přehledu */
.dashboard-custom-section {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: color-mix(in srgb, var(--panel-solid) 92%, transparent);
  box-shadow: 0 14px 34px rgba(0,0,0,.12);
}
.dashboard-custom-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 12px;
}
.dashboard-custom-head h3 { margin: 2px 0 4px; font-size: 14px; }
.dashboard-custom-head p:last-child { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.dashboard-add-widget-top svg { width: 14px; height: 14px; }
.dashboard-custom-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.dashboard-user-widget,
.dashboard-add-widget-tile {
  min-height: 168px;
  border-radius: 16px;
}
.dashboard-user-widget {
  position: relative;
  overflow: hidden;
  padding: 14px;
  border: 1px solid color-mix(in srgb, var(--accent) 18%, var(--border));
  background:
    radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--accent) 13%, transparent), transparent 42%),
    color-mix(in srgb, var(--panel-solid) 96%, transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 10px 26px rgba(0,0,0,.11);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.dashboard-user-widget:hover {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--accent) 40%, var(--border));
  box-shadow: 0 15px 34px color-mix(in srgb, var(--accent) 10%, rgba(0,0,0,.18));
}
.dashboard-user-widget-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}
.dashboard-user-widget-head h4 { margin: 2px 0 0; font-size: 12px; }
.dashboard-widget-controls { display: flex; gap: 5px; }
.dashboard-widget-controls button {
  display: grid;
  place-items: center;
  width: 27px;
  height: 27px;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 9px;
  background: color-mix(in srgb, var(--panel-alt) 88%, transparent);
  color: var(--muted);
  font-size: 13px;
  cursor: pointer;
  transition: .18s ease;
}
.dashboard-widget-controls button:hover {
  border-color: color-mix(in srgb, var(--accent) 45%, var(--border));
  color: var(--text);
  background: var(--accent-soft);
}
.dashboard-widget-controls button:last-child:hover {
  border-color: color-mix(in srgb, var(--danger) 45%, var(--border));
  color: var(--danger);
  background: color-mix(in srgb, var(--danger) 9%, var(--panel-alt));
}
.dashboard-user-widget-body { display: grid; gap: 10px; min-width: 0; }
.dashboard-add-widget-tile {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 7px;
  padding: 18px;
  border: 1px dashed color-mix(in srgb, var(--accent) 44%, var(--border));
  background: color-mix(in srgb, var(--accent) 4%, var(--panel-solid));
  color: var(--text);
  text-align: center;
  cursor: pointer;
  transition: .2s ease;
}
.dashboard-add-widget-tile:hover {
  transform: translateY(-2px);
  border-style: solid;
  background: color-mix(in srgb, var(--accent) 9%, var(--panel-solid));
  box-shadow: 0 12px 28px color-mix(in srgb, var(--accent) 11%, transparent);
}
.dashboard-add-widget-tile > span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: var(--accent-soft);
  color: var(--accent-2);
  font-size: 27px;
  font-weight: 500;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 24%, transparent);
}
.dashboard-add-widget-tile strong { font-size: 11px; }
.dashboard-add-widget-tile small { max-width: 210px; color: var(--muted); font-size: 9px; line-height: 1.45; }
.dashboard-widget-editor { display: grid; gap: 12px; }
.dashboard-widget-editor > label,
.dashboard-widget-editor [data-dashboard-widget-config-area] > label,
.dashboard-widget-editor [data-dashboard-widget-config-area] .form-grid label {
  display: grid;
  gap: 6px;
  color: var(--text-2);
  font-size: 9px;
  font-weight: 700;
}
.dashboard-widget-editor select,
.dashboard-widget-editor input {
  width: 100%;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--panel-alt);
  color: var(--text);
}
.dashboard-widget-choice-copy {
  margin-top: -4px;
  padding: 9px 11px;
  border-left: 3px solid var(--accent);
  border-radius: 8px;
  background: var(--accent-soft);
  color: var(--text-2);
  font-size: 9px;
  line-height: 1.5;
}
.dashboard-profile-widget {
  display: flex;
  align-items: center;
  gap: 11px;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}
.dashboard-profile-widget .profile-image { flex: 0 0 auto; width: 48px; height: 48px; border-radius: 14px; }
.dashboard-profile-widget > span { display: grid; gap: 4px; min-width: 0; }
.dashboard-profile-widget strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-profile-widget small { display: flex; align-items: center; gap: 5px; color: var(--muted); font-size: 9px; }
.dashboard-profile-widget small .country-flag { width: 18px; height: 13px; }
.dashboard-profile-widget em { color: var(--accent-2); font-size: 9px; font-style: normal; font-weight: 800; }
.dashboard-vehicle-widget,
.dashboard-weather-main,
.dashboard-custom-fx {
  display: flex;
  align-items: center;
  gap: 11px;
}
.dashboard-widget-icon {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 43px;
  height: 43px;
  border-radius: 13px;
  background: var(--accent-soft);
  color: var(--accent-2);
  font-size: 20px;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent);
}
.dashboard-widget-icon.weather { font-size: 22px; }
.dashboard-vehicle-widget > div:last-child,
.dashboard-weather-main > div:last-child { display: grid; gap: 3px; min-width: 0; }
.dashboard-vehicle-widget strong,
.dashboard-weather-main strong { font-size: 14px; }
.dashboard-vehicle-widget small,
.dashboard-weather-main small,
.dashboard-vehicle-widget span { color: var(--muted); font-size: 9px; }
.dashboard-transport-widget { display: grid; gap: 10px; }
.dashboard-transport-route { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.dashboard-transport-route strong { display: flex; align-items: center; gap: 5px; min-width: 0; font-size: 10px; }
.dashboard-transport-route .country-flag { width: 18px; height: 13px; }
.dashboard-transport-route > span { color: var(--accent-2); font-size: 16px; font-weight: 900; }
.dashboard-widget-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.dashboard-widget-stats.compact { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dashboard-widget-stats > span {
  display: grid;
  gap: 3px;
  padding: 8px;
  border: 1px solid color-mix(in srgb, var(--border) 86%, transparent);
  border-radius: 10px;
  background: color-mix(in srgb, var(--panel-alt) 78%, transparent);
}
.dashboard-widget-stats small { color: var(--muted); font-size: 8px; }
.dashboard-widget-stats strong { overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-widget-warning {
  padding: 7px 9px;
  border: 1px solid color-mix(in srgb, var(--danger) 30%, transparent);
  border-radius: 9px;
  background: color-mix(in srgb, var(--danger) 8%, transparent);
  color: color-mix(in srgb, var(--danger) 75%, var(--text));
  font-size: 8px;
  line-height: 1.45;
}
.dashboard-number-widget { display: flex; align-items: baseline; gap: 9px; padding: 6px 0; }
.dashboard-number-widget strong { color: var(--accent-2); font-size: 31px; line-height: 1; }
.dashboard-number-widget span { color: var(--muted); font-size: 9px; }
.dashboard-number-widget.danger strong { color: var(--danger); }
.dashboard-rating-widget { display: flex; align-items: baseline; gap: 10px; padding: 8px 0; }
.dashboard-rating-widget strong { color: var(--warning); font-size: 24px; }
.dashboard-rating-widget span { color: var(--muted); font-size: 9px; }
.dashboard-custom-fx .fx-currency-token { flex: 0 0 auto; }
.dashboard-custom-fx > div { display: grid; gap: 2px; min-width: 0; }
.dashboard-custom-fx > div small { color: var(--muted); font-size: 8px; }
.dashboard-custom-fx > div strong { font-size: 16px; }
.dashboard-custom-fx .fx-change { margin-left: auto; }
.dashboard-weather-widget { display: grid; gap: 10px; width: 100%; padding: 0; border: 0; outline: 0; background: transparent; color: inherit; text-align: left; cursor: pointer; }
.dashboard-weather-widget:focus-visible { border-radius: 11px; box-shadow: 0 0 0 2px color-mix(in srgb,var(--accent) 45%,transparent); }
.dashboard-weather-place { color: var(--muted); font-size: 8px; }
.widget-weather .dashboard-user-widget-body { position: relative; }
.widget-weather .dashboard-user-widget-body::after { content: var(--i18n-detail, "detail"); position: absolute; right: 0; bottom: -2px; color: color-mix(in srgb,var(--accent-2) 70%,var(--muted)); font-size: 7px; font-weight: 800; letter-spacing: .06em; opacity: 0; transform: translateY(3px); transition: opacity 180ms ease, transform 180ms ease; pointer-events: none; }
.widget-weather:hover .dashboard-user-widget-body::after { opacity: .72; transform: none; }

.dashboard-weather-preview-layer { position: fixed; z-index: 890; inset: 0; display: grid; place-items: start center; padding: clamp(92px,12vh,150px) 18px 30px; opacity: 0; pointer-events: none; transition: opacity 420ms ease; }
.dashboard-weather-preview-layer::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 50% 28%, rgba(5,18,39,.2), transparent 42%); opacity: 0; transition: opacity 420ms ease; pointer-events: none; }
.dashboard-weather-preview-layer.visible { opacity: 1; }
.dashboard-weather-preview-layer.visible::before { opacity: 1; }
.dashboard-weather-preview-layer.closing { opacity: 0; }
.dashboard-weather-preview { --weather-tone:#65bfff; --weather-tone-soft:rgba(101,191,255,.2); position: relative; width: min(850px,calc(100vw - 36px)); overflow: hidden; padding: 23px 24px 18px; border: 1px solid color-mix(in srgb,var(--weather-tone) 42%,rgba(255,255,255,.18)); border-radius: 25px; background: linear-gradient(145deg,rgba(10,26,48,.79),rgba(5,13,27,.68)); color: #f4f9ff; box-shadow: 0 40px 112px rgba(0,0,0,.56), 0 14px 36px rgba(0,0,0,.2), 0 0 56px color-mix(in srgb,var(--weather-tone) 20%,transparent), inset 0 1px 0 rgba(255,255,255,.13), inset 0 -1px 0 rgba(0,0,0,.34); backdrop-filter: blur(24px) saturate(1.16); pointer-events: auto; transform: translateY(24px) scale(.965) rotateX(2deg); transform-origin: 50% 0; transition: transform 560ms cubic-bezier(.2,.82,.2,1), opacity 430ms ease, box-shadow 560ms ease; opacity: 0; }
.dashboard-weather-preview-layer.visible .dashboard-weather-preview { opacity: 1; transform: translateY(0) scale(1) rotateX(0); box-shadow: 0 46px 122px rgba(0,0,0,.6), 0 16px 38px rgba(0,0,0,.22), 0 0 70px color-mix(in srgb,var(--weather-tone) 28%,transparent), inset 0 1px 0 rgba(255,255,255,.14), inset 0 -1px 0 rgba(0,0,0,.34); }
.dashboard-weather-preview-layer.closing .dashboard-weather-preview { opacity: 0; transform: translateY(14px) scale(.98); }
.dashboard-weather-preview::before { content: ""; position: absolute; inset: 1px; border-radius: 24px; background: linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,0) 24%); pointer-events: none; }
.dashboard-weather-preview::after { content: ""; position: absolute; left: 8%; right: 8%; bottom: -24px; height: 36px; border-radius: 50%; background: color-mix(in srgb,var(--weather-tone) 18%,transparent); filter: blur(20px); pointer-events: none; }
.dashboard-weather-preview.weather-sunny { --weather-tone:#ffd25d; --weather-tone-soft:rgba(255,210,93,.22); background: linear-gradient(145deg,rgba(45,34,13,.76),rgba(8,17,29,.72)); }
.dashboard-weather-preview.weather-partly { --weather-tone:#76c8ff; --weather-tone-soft:rgba(118,200,255,.22); }
.dashboard-weather-preview.weather-cloudy { --weather-tone:#aebdd0; --weather-tone-soft:rgba(174,189,208,.2); background: linear-gradient(145deg,rgba(22,32,46,.8),rgba(7,14,25,.72)); }
.dashboard-weather-preview.weather-rain { --weather-tone:#65a8ff; --weather-tone-soft:rgba(101,168,255,.22); background: linear-gradient(145deg,rgba(13,31,57,.82),rgba(6,16,31,.74)); }
.dashboard-weather-preview.weather-snow { --weather-tone:#d4efff; --weather-tone-soft:rgba(212,239,255,.22); background: linear-gradient(145deg,rgba(27,48,65,.78),rgba(8,19,31,.72)); }
.dashboard-weather-preview.weather-storm { --weather-tone:#b38cff; --weather-tone-soft:rgba(179,140,255,.24); background: linear-gradient(145deg,rgba(34,20,58,.82),rgba(8,13,28,.76)); }
.dashboard-weather-preview-ambient { position: absolute; z-index: 0; top: -110px; right: -90px; width: 330px; height: 330px; border-radius: 50%; background: radial-gradient(circle,color-mix(in srgb,var(--weather-tone) 30%,transparent),transparent 68%); filter: blur(10px); opacity: .65; pointer-events: none; animation: weather-preview-ambient 5.4s ease-in-out infinite; }
.dashboard-weather-preview-close { position: absolute; z-index: 5; top: 14px; right: 14px; display: grid; place-items: center; width: 31px; height: 31px; padding: 0; border: 1px solid rgba(255,255,255,.14); border-radius: 10px; background: rgba(4,12,24,.4); color: rgba(255,255,255,.76); font-size: 19px; cursor: pointer; box-shadow: inset 0 1px 0 rgba(255,255,255,.06); transition: transform 160ms ease, background 160ms ease, color 160ms ease; }
.dashboard-weather-preview-close:hover { transform: translateY(-1px); background: rgba(255,255,255,.1); color: #fff; }
.dashboard-weather-preview-head { position: relative; z-index: 1; display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding-right: 42px; }
.dashboard-weather-preview-head > div { display: grid; gap: 3px; min-width: 0; }
.dashboard-weather-preview-head small { color: color-mix(in srgb,var(--weather-tone) 78%,#fff); font-size: 8px; font-weight: 900; letter-spacing: .13em; }
.dashboard-weather-preview-head h3 { margin: 0; overflow: hidden; color: #fff; font-size: clamp(19px,2.4vw,27px); text-overflow: ellipsis; white-space: nowrap; text-shadow: 0 7px 24px rgba(0,0,0,.36); }
.dashboard-weather-preview-head p { margin: 0; color: #b9c9dc; font-size: 10px; text-transform: capitalize; }
.dashboard-weather-preview-live { flex: 0 0 auto; margin-top: 3px; padding: 6px 9px; border: 1px solid color-mix(in srgb,var(--weather-tone) 34%,rgba(255,255,255,.13)); border-radius: 99px; background: color-mix(in srgb,var(--weather-tone-soft) 52%,rgba(5,14,27,.42)); color: #e9f6ff; font-size: 8px; font-weight: 800; box-shadow: 0 0 18px color-mix(in srgb,var(--weather-tone) 10%,transparent); }
.dashboard-weather-preview-hero { position: relative; z-index: 1; display: grid; grid-template-columns: 132px minmax(140px,.8fr) minmax(220px,1fr); gap: 18px; align-items: center; margin-top: 18px; padding: 15px 16px; border: 1px solid rgba(255,255,255,.09); border-radius: 19px; background: linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025)); box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 14px 32px rgba(0,0,0,.14); }
.dashboard-weather-preview-illustration { position: relative; display: grid; place-items: center; width: 112px; height: 92px; margin: auto; border: 1px solid color-mix(in srgb,var(--weather-tone) 28%,rgba(255,255,255,.1)); border-radius: 28px; background: radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--weather-tone) 19%,transparent),rgba(255,255,255,.025) 68%); box-shadow: 0 16px 32px rgba(0,0,0,.2), 0 0 26px color-mix(in srgb,var(--weather-tone) 17%,transparent), inset 0 1px 0 rgba(255,255,255,.1); }
.dashboard-weather-preview-illustration span { position: relative; z-index: 2; font-size: 55px; line-height: 1; filter: drop-shadow(0 10px 12px rgba(0,0,0,.28)); animation: weather-preview-icon 3.5s ease-in-out infinite; }
.dashboard-weather-preview-illustration i { position: absolute; inset: 16px; border-radius: 50%; background: radial-gradient(circle,color-mix(in srgb,var(--weather-tone) 30%,transparent),transparent 70%); filter: blur(7px); }
.dashboard-weather-preview-temperature { display: grid; align-content: center; gap: 2px; min-width: 0; }
.dashboard-weather-preview-temperature strong { font-size: clamp(39px,5vw,58px); line-height: 1; letter-spacing: -.045em; text-shadow: 0 12px 30px rgba(0,0,0,.34),0 0 24px color-mix(in srgb,var(--weather-tone) 16%,transparent); }
.dashboard-weather-preview-temperature span { color: color-mix(in srgb,var(--weather-tone) 75%,#fff); font-size: 9px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.dashboard-weather-preview-temperature p { margin: 4px 0 0; color: #b8c8dc; font-size: 9px; }
.dashboard-weather-preview-range { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; padding-left: 17px; border-left: 1px solid rgba(255,255,255,.1); }
.dashboard-weather-preview-range > span { display: grid; gap: 2px; padding: 9px 10px; border: 1px solid rgba(255,255,255,.08); border-radius: 12px; background: rgba(255,255,255,.035); }
.dashboard-weather-preview-range small { color: #9eb1c8; font-size: 8px; }
.dashboard-weather-preview-range strong { color: #fff; font-size: 17px; }
.dashboard-weather-preview-range p { grid-column: 1 / -1; margin: 2px 0 0; color: #9eb1c8; font-size: 8.5px; }
.dashboard-weather-preview-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 10px; }
.dashboard-weather-preview-grid > span { display: grid; gap: 3px; min-width: 0; padding: 10px 11px; border: 1px solid rgba(255,255,255,.08); border-radius: 13px; background: linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025)); box-shadow: inset 0 1px 0 rgba(255,255,255,.045); }
.dashboard-weather-preview-grid small { color: #91a8c0; font-size: 7.8px; }
.dashboard-weather-preview-grid strong { color: #f5f9ff; font-size: 13px; }
.dashboard-weather-preview-grid em { overflow: hidden; color: color-mix(in srgb,var(--weather-tone) 64%,#b9c9dc); font-size: 7.5px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-weather-preview footer { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 11px; padding: 0 3px; color: #7890aa; font-size: 7.5px; }
.dashboard-weather-preview footer b { color: color-mix(in srgb,var(--weather-tone) 58%,#a9bbce); font-weight: 750; }
@keyframes weather-preview-icon { 0%,100% { transform: translateY(0) scale(1); } 50% { transform: translateY(-4px) scale(1.025); } }
@keyframes weather-preview-ambient { 0%,100% { transform: scale(.92); opacity:.48; } 50% { transform: scale(1.08); opacity:.74; } }
.world-clock-preview { --weather-tone:#70c9ff; --weather-tone-soft:rgba(112,201,255,.2); width:min(820px,calc(100vw - 36px)); background:linear-gradient(145deg,rgba(8,27,52,.82),rgba(6,14,28,.72)); }
.world-clock-preview-head h3 { letter-spacing:.01em; }
.world-clock-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:18px; }
.world-clock-grid article { position:relative; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; min-width:0; padding:13px 12px; overflow:hidden; border:1px solid rgba(255,255,255,.095); border-radius:16px; background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025)); box-shadow:0 13px 28px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.07); }
.world-clock-grid article::after { content:""; position:absolute; inset:auto 8% -18px; height:26px; border-radius:50%; background:rgba(95,188,255,.16); filter:blur(14px); pointer-events:none; }
.world-clock-flag { position:relative; z-index:1; display:grid; place-items:center; width:42px; height:42px; border:1px solid rgba(255,255,255,.12); border-radius:13px; background:rgba(255,255,255,.045); font-size:24px; box-shadow:0 8px 18px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.08); }
.world-clock-grid article > div { position:relative; z-index:1; display:grid; min-width:0; gap:1px; }
.world-clock-grid article > div > small:first-child { color:#8eb9dc; font-size:7.6px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.world-clock-grid h4 { margin:0; overflow:hidden; color:#fff; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.world-clock-grid strong { margin-top:3px; color:#f5fbff; font-size:20px; letter-spacing:.055em; text-shadow:0 0 18px rgba(92,190,255,.24); }
.world-clock-grid small[data-world-clock-date] { color:#91a8c0; font-size:7.8px; text-transform:capitalize; }
.world-clock-grid em { position:relative; z-index:1; align-self:start; padding:4px 6px; border:1px solid rgba(112,201,255,.15); border-radius:99px; background:rgba(112,201,255,.07); color:#a9d9f7; font-size:7px; font-style:normal; font-weight:800; white-space:nowrap; }
@media (max-width:720px) { .world-clock-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .world-clock-grid article { padding:11px 10px; } .world-clock-grid strong { font-size:17px; } }
@media (max-width:430px) { .world-clock-grid { grid-template-columns:1fr; } }
@media (max-width: 720px) {
  .dashboard-weather-preview-layer { padding: 76px 10px 18px; }
  .dashboard-weather-preview { width: min(100%,560px); padding: 19px 15px 15px; border-radius: 21px; }
  .dashboard-weather-preview-head { padding-right: 36px; }
  .dashboard-weather-preview-live { display: none; }
  .dashboard-weather-preview-hero { grid-template-columns: 90px 1fr; gap: 11px; padding: 12px; }
  .dashboard-weather-preview-illustration { width: 82px; height: 76px; border-radius: 22px; }
  .dashboard-weather-preview-illustration span { font-size: 43px; }
  .dashboard-weather-preview-range { grid-column: 1 / -1; padding: 10px 0 0; border-top: 1px solid rgba(255,255,255,.1); border-left: 0; }
  .dashboard-weather-preview-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .dashboard-weather-preview footer { align-items: flex-start; flex-direction: column; gap: 2px; }
}
.dashboard-widget-empty {
  display: grid;
  place-items: center;
  min-height: 74px;
  padding: 12px;
  border: 1px dashed var(--border);
  border-radius: 11px;
  color: var(--muted);
  font-size: 9px;
  text-align: center;
}
.dashboard-user-widget .text-button { width: fit-content; font-size: 9px; }

@media (max-width: 1180px) {
  .dashboard-custom-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .dashboard-custom-section { padding: 12px; }
  .dashboard-custom-head { align-items: stretch; flex-direction: column; }
  .dashboard-add-widget-top { width: 100%; justify-content: center; }
  .dashboard-custom-grid { grid-template-columns: 1fr; }
}

/* K-Line Radar — chytrá analýza nabídky přepravy pro dopravce */
.radar-button {
  position: relative;
  overflow: hidden;
  border-color: color-mix(in srgb,#2ab9ff 58%,var(--border));
  background: linear-gradient(135deg,#0d4f7f,#1268a8 55%,#0e7dbf);
  color: #fff;
  box-shadow: 0 8px 24px rgba(10,126,190,.24), inset 0 1px 0 rgba(255,255,255,.18);
}
.radar-button::after {
  content: "";
  position: absolute;
  inset: -70% auto -70% -42%;
  width: 34%;
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.26),transparent);
  transform: skewX(-18deg);
  animation: radar-button-sheen 3.8s ease-in-out infinite;
  pointer-events: none;
}
.radar-button svg { width: 13px; height: 13px; }
.radar-button:hover { transform: translateY(-1px); filter: brightness(1.08); box-shadow: 0 12px 30px rgba(10,126,190,.34),0 0 22px rgba(42,185,255,.13); }
@keyframes radar-button-sheen { 0%,62% { left:-42%; } 82%,100% { left:128%; } }

.app-dialog:has(.kline-radar) { width: min(1060px,calc(100vw - 28px)); }
.app-dialog:has(.kline-radar) .dialog-content { padding: 14px 18px 18px; }
.app-dialog:has(.kline-radar) .dialog-actions { border-top-color: color-mix(in srgb,#2ab9ff 18%,var(--border)); }
.kline-radar { display:grid; gap:14px; }
.radar-hero {
  position: relative;
  display: grid;
  grid-template-columns: 154px minmax(0,1fr) auto;
  align-items: center;
  gap: 18px;
  min-height: 180px;
  padding: 18px 20px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb,#2ab9ff 32%,var(--border));
  border-radius: 20px;
  background:
    radial-gradient(circle at 8% 50%,rgba(24,160,231,.18),transparent 31%),
    radial-gradient(circle at 86% 15%,rgba(57,108,255,.14),transparent 30%),
    linear-gradient(145deg,color-mix(in srgb,var(--panel-solid) 96%,#061729 4%),color-mix(in srgb,var(--panel-alt) 92%,#0b2743 8%));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04),0 18px 48px rgba(0,0,0,.18),0 0 35px rgba(29,153,221,.08);
}
.radar-hero::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image: linear-gradient(rgba(55,180,240,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(55,180,240,.035) 1px,transparent 1px);
  background-size: 24px 24px;
  mask-image: linear-gradient(90deg,#000,transparent 78%);
}
.radar-scanner {
  position: relative;
  display:grid;
  place-items:center;
  width:138px;
  aspect-ratio:1;
  border-radius:50%;
  background: radial-gradient(circle,rgba(10,20,34,.92) 0 28%,rgba(12,38,60,.82) 29% 44%,rgba(10,24,40,.86) 45% 100%);
  border:1px solid rgba(64,187,242,.34);
  box-shadow:0 0 0 8px rgba(38,160,219,.035),0 0 38px rgba(31,175,239,.18),inset 0 0 34px rgba(25,154,214,.13);
  overflow:hidden;
}
.radar-scanner.good { --radar-tone:#35d69b; }
.radar-scanner.medium { --radar-tone:#e0aa3e; }
.radar-scanner.risk { --radar-tone:#ec5a68; }
.radar-rings,.radar-rings::before,.radar-rings::after { position:absolute; border:1px solid color-mix(in srgb,var(--radar-tone) 32%,transparent); border-radius:50%; content:""; }
.radar-rings { inset:13%; }
.radar-rings::before { inset:18%; }
.radar-rings::after { inset:37%; }
.radar-sweep {
  position:absolute;
  width:52%;
  height:52%;
  top:50%;
  left:50%;
  transform-origin:0 0;
  background: conic-gradient(from 270deg at 0 0,color-mix(in srgb,var(--radar-tone) 34%,transparent),transparent 32deg);
  animation:radar-sweep 3.2s linear infinite;
  filter:drop-shadow(0 0 8px color-mix(in srgb,var(--radar-tone) 46%,transparent));
}
@keyframes radar-sweep { to { transform:rotate(360deg); } }
.radar-score { position:relative; z-index:2; display:flex; align-items:baseline; gap:3px; padding:8px 10px; border-radius:13px; background:rgba(4,12,22,.72); box-shadow:0 8px 22px rgba(0,0,0,.25); backdrop-filter:blur(7px); }
.radar-score strong { color:var(--radar-tone); font-size:32px; line-height:1; letter-spacing:-.05em; text-shadow:0 0 18px color-mix(in srgb,var(--radar-tone) 34%,transparent); }
.radar-score small { color:#c9d9e7; font-size:9px; font-weight:750; }
.radar-hero-copy { position:relative; z-index:1; display:grid; gap:7px; min-width:0; }
.radar-hero-copy h2 { margin:0; font-size:25px; letter-spacing:-.025em; }
.radar-hero-copy > p:not(.eyebrow) { margin:0; color:var(--text-2); font-size:10.5px; }
.radar-live-pill { display:inline-flex; align-items:center; gap:7px; width:max-content; max-width:100%; padding:6px 9px; border:1px solid rgba(40,180,236,.22); border-radius:999px; background:rgba(26,141,196,.08); color:color-mix(in srgb,#63d3ff 78%,var(--text)); font-size:8.5px; font-weight:760; }
.radar-live-pill i { width:7px; height:7px; border-radius:50%; background:#34d49a; box-shadow:0 0 0 4px rgba(52,212,154,.08),0 0 11px rgba(52,212,154,.6); animation:feature-live-pulse 1.6s ease-in-out infinite; }
.radar-price-block { position:relative; z-index:1; display:grid; justify-items:end; gap:4px; min-width:145px; padding:13px 14px; border:1px solid rgba(74,183,237,.18); border-radius:14px; background:rgba(5,17,31,.34); }
.radar-price-block small { color:var(--muted); font-size:8px; }
.radar-price-block strong { color:#58caff; font-size:22px; letter-spacing:-.03em; }
.radar-price-block span { color:var(--text-2); font-size:8.5px; }

.radar-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.radar-metrics article { display:grid; grid-template-columns:auto 1fr; gap:10px; align-items:start; min-width:0; padding:12px; border:1px solid var(--border); border-radius:14px; background:var(--panel-alt); box-shadow:inset 0 1px 0 rgba(255,255,255,.025); }
.radar-metrics article > span { display:grid; place-items:center; width:31px; height:31px; border-radius:10px; background:color-mix(in srgb,var(--radar-card-tone) 11%,var(--panel)); color:var(--radar-card-tone); }
.radar-metrics article > span svg { width:15px; height:15px; }
.radar-metrics article.good { --radar-card-tone:#38c994; border-color:color-mix(in srgb,#38c994 26%,var(--border)); }
.radar-metrics article.medium { --radar-card-tone:#d9a63f; border-color:color-mix(in srgb,#d9a63f 26%,var(--border)); }
.radar-metrics article.risk { --radar-card-tone:#e25a68; border-color:color-mix(in srgb,#e25a68 26%,var(--border)); }
.radar-metrics article > div { display:grid; min-width:0; gap:3px; }
.radar-metrics small { color:var(--muted); font-size:8px; }
.radar-metrics strong { color:var(--text); font-size:16px; }
.radar-metrics p { margin:0; overflow:hidden; color:var(--text-2); font-size:8.2px; line-height:1.45; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }

.radar-finance-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.radar-finance-grid > section { display:grid; align-content:start; gap:9px; min-width:0; padding:14px; border:1px solid var(--border); border-radius:15px; background:color-mix(in srgb,var(--panel-alt) 92%,transparent); }
.radar-finance-row { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }
.radar-finance-row > span { display:grid; align-content:start; gap:3px; min-width:0; padding:9px; border-radius:11px; background:var(--panel); }
.radar-finance-row small { color:var(--muted); font-size:7.8px; }
.radar-finance-row strong { font-size:10.5px; }
.radar-finance-row em { color:var(--muted); font-size:7.5px; font-style:normal; }
.radar-finance-row .good strong,.radar-finance-row .good em { color:#48d39f; }
.radar-finance-row .risk strong,.radar-finance-row .risk em { color:#ec6a75; }
.radar-follow-list { display:grid; gap:6px; }
.radar-follow-list article { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:8px; padding:7px 8px; border:1px solid color-mix(in srgb,var(--border) 82%,transparent); border-radius:10px; background:var(--panel); }
.radar-follow-list article > span .country-flag { width:20px; height:14px; }
.radar-follow-list article > div { display:grid; min-width:0; gap:1px; }
.radar-follow-list strong { overflow:hidden; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.radar-follow-list small { overflow:hidden; color:var(--muted); font-size:7.5px; text-overflow:ellipsis; white-space:nowrap; }
.radar-follow-list b { color:var(--accent-2); font-size:9px; white-space:nowrap; }
.radar-follow-empty { display:flex; align-items:center; gap:10px; min-height:76px; padding:10px; border:1px dashed var(--border); border-radius:11px; color:var(--text-2); }
.radar-follow-empty > span { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:var(--accent-soft); color:var(--accent-2); }
.radar-follow-empty svg { width:16px; height:16px; }
.radar-follow-empty > div { display:grid; gap:2px; }
.radar-follow-empty strong { font-size:9px; }
.radar-follow-empty small { color:var(--muted); font-size:7.8px; }

.radar-recommendation { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:12px; padding:13px 14px; border:1px solid color-mix(in srgb,var(--radar-rec-tone) 30%,var(--border)); border-radius:14px; background:linear-gradient(135deg,color-mix(in srgb,var(--radar-rec-tone) 9%,var(--panel-alt)),var(--panel-alt)); box-shadow:0 10px 28px color-mix(in srgb,var(--radar-rec-tone) 7%,transparent); }
.radar-recommendation.good { --radar-rec-tone:#35cf97; }
.radar-recommendation.medium { --radar-rec-tone:#dba944; }
.radar-recommendation.risk { --radar-rec-tone:#e35d6a; }
.radar-recommendation > span { display:grid; place-items:center; width:38px; height:38px; border-radius:12px; background:color-mix(in srgb,var(--radar-rec-tone) 12%,var(--panel)); color:var(--radar-rec-tone); }
.radar-recommendation svg { width:19px; height:19px; }
.radar-recommendation > div { display:grid; gap:3px; }
.radar-recommendation small { color:var(--radar-rec-tone); font-size:8px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.radar-recommendation strong { font-size:10.5px; line-height:1.55; }
.radar-disclaimer { display:flex; align-items:flex-start; gap:8px; padding:0 3px; color:var(--muted); }
.radar-disclaimer svg { flex:0 0 auto; width:12px; height:12px; margin-top:2px; }
.radar-disclaimer p { margin:0; font-size:7.7px; line-height:1.5; }

@media (max-width: 900px) {
  .radar-hero { grid-template-columns:120px 1fr; }
  .radar-scanner { width:112px; }
  .radar-price-block { grid-column:1 / -1; grid-template-columns:1fr auto auto; justify-items:start; align-items:center; min-width:0; }
  .radar-metrics { grid-template-columns:1fr 1fr; }
  .radar-finance-grid { grid-template-columns:1fr; }
}
@media (max-width: 620px) {
  .app-dialog:has(.kline-radar) .dialog-content { padding:10px; }
  .radar-hero { grid-template-columns:1fr; justify-items:center; text-align:center; padding:14px; }
  .radar-hero-copy { justify-items:center; }
  .radar-price-block { width:100%; grid-template-columns:1fr; justify-items:center; }
  .radar-metrics { grid-template-columns:1fr; }
  .radar-finance-row { grid-template-columns:1fr; }
}

/* K-Line — automatické hledání navazující přepravy před vykládkou. */
.offer-card.has-follow-up { border-color: color-mix(in srgb,var(--accent) 28%,var(--border)); }
.transport-follow-up {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
  padding: 10px 11px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb,var(--accent) 32%,var(--border));
  border-radius: 12px;
  background: linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%,var(--panel-alt)),color-mix(in srgb,var(--success) 4%,var(--panel-alt)));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03),0 8px 24px color-mix(in srgb,var(--accent) 7%,transparent);
}
.transport-follow-up::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 -35%;
  width: 32%;
  background: linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 16%,transparent),transparent);
  transform: skewX(-18deg);
  animation: follow-up-scan 4.4s ease-in-out infinite;
  pointer-events: none;
}
.transport-follow-up.active { border-color: color-mix(in srgb,var(--success) 46%,var(--border)); box-shadow: 0 0 22px color-mix(in srgb,var(--success) 10%,transparent), inset 0 1px 0 rgba(255,255,255,.04); }
.transport-follow-up-icon { display:grid; place-items:center; width:34px; height:34px; border:1px solid color-mix(in srgb,var(--accent) 38%,transparent); border-radius:10px; background:var(--accent-soft); color:var(--accent-2); }
.transport-follow-up.active .transport-follow-up-icon { color:color-mix(in srgb,var(--success) 72%,white 28%); border-color:color-mix(in srgb,var(--success) 42%,transparent); background:color-mix(in srgb,var(--success) 10%,var(--panel-alt)); }
.transport-follow-up-icon svg { width:17px; height:17px; }
.transport-follow-up > div { min-width:0; }
.transport-follow-up small { display:block; margin-bottom:2px; color:var(--muted); font-size:calc(8.5px * var(--micro-text-scale,1)); font-weight:780; letter-spacing:.04em; text-transform:uppercase; }
.transport-follow-up strong { display:block; overflow:hidden; color:var(--text); font-size:calc(10.5px * var(--label-text-scale,1)); text-overflow:ellipsis; white-space:nowrap; }
.transport-follow-up p { margin:3px 0 0; overflow:hidden; color:var(--text-2); font-size:calc(9px * var(--micro-text-scale,1)); text-overflow:ellipsis; white-space:nowrap; }
.transport-follow-up .mini-button { position:relative; z-index:2; }
@keyframes follow-up-scan { 0%,58% { left:-38%; opacity:0; } 66% { opacity:1; } 92% { left:112%; opacity:.55; } 100% { left:112%; opacity:0; } }

.transport-follow-up-detail {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:13px 14px;
  border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));
  border-radius:14px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 9%,var(--panel-solid)),color-mix(in srgb,var(--success) 5%,var(--panel-solid)));
  box-shadow:0 12px 30px color-mix(in srgb,var(--accent) 8%,transparent);
}
.transport-follow-up-detail.active { border-color:color-mix(in srgb,var(--success) 44%,var(--border)); }
.transport-follow-up-detail > div { display:flex; align-items:center; gap:11px; min-width:0; }
.transport-follow-up-detail > div > span { display:grid; place-items:center; flex:0 0 auto; width:40px; height:40px; border-radius:12px; background:var(--accent-soft); color:var(--accent-2); box-shadow:0 0 20px color-mix(in srgb,var(--accent) 14%,transparent); }
.transport-follow-up-detail svg { width:20px; height:20px; }
.transport-follow-up-detail small { color:var(--muted); font-size:calc(8.5px * var(--micro-text-scale,1)); font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.transport-follow-up-detail strong { display:block; margin-top:2px; color:var(--text); font-size:calc(11.5px * var(--label-text-scale,1)); }
.transport-follow-up-detail p { margin:3px 0 0; color:var(--text-2); font-size:calc(9.5px * var(--micro-text-scale,1)); }
.transport-follow-up-detail .button { flex:0 0 auto; }

.follow-up-dialog { display:grid; gap:13px; }
.follow-up-hero { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:12px; padding:14px; border:1px solid color-mix(in srgb,var(--accent) 32%,var(--border)); border-radius:15px; background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,var(--panel-alt)),var(--panel-alt)); }
.follow-up-hero > span:first-child { display:grid; place-items:center; width:48px; height:48px; border:1px solid color-mix(in srgb,var(--accent) 40%,transparent); border-radius:15px; background:var(--accent-soft); color:var(--accent-2); box-shadow:0 0 28px color-mix(in srgb,var(--accent) 18%,transparent); }
.follow-up-hero > span:first-child svg { width:24px; height:24px; }
.follow-up-hero h3 { margin:2px 0 3px; font-size:15px; }
.follow-up-hero p:not(.eyebrow) { margin:0; color:var(--text-2); font-size:9.5px; line-height:1.55; }
.follow-up-load-list { display:grid; gap:8px; max-height:min(48vh,430px); overflow:auto; padding-right:4px; }
.follow-up-load-card { display:grid; grid-template-columns:auto minmax(0,1fr) 110px auto; align-items:center; gap:11px; padding:11px; border:1px solid var(--border); border-radius:13px; background:var(--panel-alt); transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease; }
.follow-up-load-card:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--accent) 42%,var(--border)); box-shadow:0 10px 26px color-mix(in srgb,var(--accent) 8%,transparent); }
.follow-up-rank { display:grid; place-items:center; width:29px; height:29px; border-radius:9px; background:var(--accent-soft); color:var(--accent-2); font-size:10px; font-weight:900; }
.follow-up-load-main { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:10px; min-width:0; }
.follow-up-load-main small { color:var(--muted); font-size:8.5px; }
.follow-up-load-main strong { display:flex; align-items:center; gap:5px; margin-top:2px; color:var(--text); font-size:10.5px; }
.follow-up-load-main strong .country-flag { width:18px; height:13px; }
.follow-up-load-main p { margin:3px 0 0; color:var(--text-2); font-size:8.8px; }
.follow-up-load-main > b { color:var(--accent-2); font-size:12px; white-space:nowrap; }
.follow-up-score { display:grid; grid-template-columns:1fr auto; gap:3px 7px; align-items:center; }
.follow-up-score > span { position:relative; grid-column:1/-1; height:5px; overflow:hidden; border-radius:99px; background:color-mix(in srgb,var(--border) 70%,transparent); }
.follow-up-score > span i { display:block; width:var(--score); height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--accent),var(--success)); box-shadow:0 0 9px color-mix(in srgb,var(--accent) 30%,transparent); }
.follow-up-score strong { color:var(--text); font-size:9.5px; }
.follow-up-score small { color:var(--muted); font-size:7.8px; text-align:right; }
.follow-up-actions { display:flex; gap:6px; }
.follow-up-actions .button { min-height:31px; padding:6px 9px; font-size:8.8px; }
.follow-up-note { padding:9px 11px; border:1px dashed var(--border); border-radius:11px; color:var(--muted); font-size:8.5px; line-height:1.55; }

@media (max-width: 820px) {
  .transport-follow-up { grid-template-columns:auto 1fr; }
  .transport-follow-up .mini-button { grid-column:1/-1; width:100%; }
  .transport-follow-up-detail { align-items:stretch; flex-direction:column; }
  .transport-follow-up-detail .button { width:100%; }
  .follow-up-hero { grid-template-columns:auto 1fr; }
  .follow-up-hero > .status-pill { grid-column:1/-1; width:max-content; }
  .follow-up-load-card { grid-template-columns:auto 1fr; }
  .follow-up-score,.follow-up-actions { grid-column:2; }
  .follow-up-actions { flex-wrap:wrap; }
}
.follow-up-monitor-banner { display:flex; align-items:center; gap:10px; margin:0 0 11px; padding:10px 12px; border:1px solid color-mix(in srgb,var(--success) 34%,var(--border)); border-radius:13px; background:linear-gradient(90deg,color-mix(in srgb,var(--success) 7%,var(--panel-alt)),color-mix(in srgb,var(--accent) 5%,var(--panel-alt))); box-shadow:0 8px 24px color-mix(in srgb,var(--success) 6%,transparent); }
.follow-up-monitor-banner > span { display:grid; place-items:center; width:35px; height:35px; flex:0 0 auto; border-radius:10px; background:color-mix(in srgb,var(--success) 11%,var(--panel-solid)); color:color-mix(in srgb,var(--success) 70%,white 30%); }
.follow-up-monitor-banner > span svg { width:18px; height:18px; }
.follow-up-monitor-banner > div { display:grid; gap:2px; min-width:0; }
.follow-up-monitor-banner strong { color:var(--text); font-size:10.5px; }
.follow-up-monitor-banner small { color:var(--text-2); font-size:8.8px; }
.follow-up-monitor-banner > i { display:inline-flex; align-items:center; gap:5px; margin-left:auto; color:var(--success); font-size:8px; font-style:normal; font-weight:900; letter-spacing:.08em; }
.follow-up-monitor-banner > i b { width:7px; height:7px; border-radius:50%; background:var(--success); box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 12%,transparent),0 0 12px color-mix(in srgb,var(--success) 65%,transparent); animation:feature-live-pulse 1.8s ease-in-out infinite; }
@media (max-width: 650px) { .follow-up-monitor-banner { align-items:flex-start; } .follow-up-monitor-banner > i { display:none; } }

/* K-Line Záchrana přepravy */
.button-rescue,
.button-rescue-solid {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 1px solid color-mix(in srgb,#d43f5f 58%,var(--border));
  color: #ffdbe3;
  font-weight: 850;
  letter-spacing: .01em;
}
.button-rescue {
  background: linear-gradient(145deg,color-mix(in srgb,#8f1737 56%,var(--panel-alt)),color-mix(in srgb,#4e0d22 74%,var(--panel-solid)));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 8px 20px rgba(109,15,45,.18);
}
.button-rescue:hover {
  border-color: color-mix(in srgb,#ff5e7d 76%,var(--border));
  box-shadow: 0 0 0 2px rgba(207,41,83,.09), 0 10px 26px rgba(160,24,62,.27);
}
.button-rescue-solid {
  background: linear-gradient(135deg,#a41942,#73112f);
  box-shadow: 0 10px 24px rgba(132,17,50,.25), inset 0 1px 0 rgba(255,255,255,.12);
}
.button-rescue-solid:hover { filter: brightness(1.08); box-shadow: 0 13px 30px rgba(157,20,59,.32); }

.transport-rescue-callout {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 13px;
  padding: 14px 15px;
  border: 1px solid color-mix(in srgb,#d63e62 42%,var(--border));
  border-radius: 15px;
  background: radial-gradient(circle at 6% 50%,rgba(220,50,91,.16),transparent 28%), linear-gradient(145deg,color-mix(in srgb,#5a1027 18%,var(--panel-alt)),var(--panel));
  box-shadow: inset 3px 0 0 #b5244d, 0 10px 26px rgba(61,8,25,.13);
}
.transport-rescue-callout-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: rgba(189,32,73,.13);
  box-shadow: inset 0 0 0 1px rgba(255,115,147,.2), 0 0 22px rgba(196,27,72,.12);
  font-size: 25px;
}
.transport-rescue-callout > div:nth-child(2) { display: grid; gap: 3px; }
.transport-rescue-callout small { color: #e16b87; font-size: 8.8px; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.transport-rescue-callout strong { color: var(--text); font-size: 12px; }
.transport-rescue-callout p { margin: 0; color: var(--text-2); font-size: 9px; line-height: 1.55; }

.transport-rescue-dialog { display: grid; gap: 13px; }
.rescue-hero {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 15px;
  overflow: hidden;
  padding: 17px;
  border: 1px solid color-mix(in srgb,#d43c60 48%,var(--border));
  border-radius: 17px;
  background: radial-gradient(circle at 8% 50%,rgba(221,48,91,.18),transparent 30%), linear-gradient(145deg,color-mix(in srgb,#541025 24%,var(--panel-alt)),var(--panel-solid));
  box-shadow: inset 3px 0 0 #b9244d, 0 14px 38px rgba(88,10,33,.16);
}
.rescue-hero h3 { margin: 2px 0 4px; font-size: 16px; }
.rescue-hero p:not(.eyebrow) { margin: 0; color: var(--text-2); font-size: 9.4px; line-height: 1.6; }
.rescue-radar {
  position: relative;
  display: grid;
  place-items: center;
  width: 66px;
  height: 66px;
  border: 1px solid rgba(255,104,137,.26);
  border-radius: 50%;
  background: radial-gradient(circle,rgba(204,34,76,.19),rgba(80,8,27,.06) 58%,transparent 60%);
  box-shadow: 0 0 30px rgba(193,30,72,.17), inset 0 0 24px rgba(212,47,88,.12);
}
.rescue-radar span { position: relative; z-index: 2; font-size: 30px; }
.rescue-radar i {
  position: absolute;
  inset: 8px;
  border: 1px solid rgba(255,124,154,.32);
  border-radius: 50%;
  animation: rescue-ring 1.8s ease-out infinite;
}
.rescue-best-summary {
  display: grid;
  min-width: 126px;
  gap: 3px;
  padding: 11px 12px;
  border: 1px solid rgba(255,117,149,.19);
  border-radius: 12px;
  background: rgba(83,11,30,.17);
  text-align: right;
}
.rescue-best-summary small { color: var(--muted); font-size: 7.8px; }
.rescue-best-summary strong { color: #ff9ab0; font-size: 18px; }
.rescue-best-summary span { color: var(--text-2); font-size: 8px; }

.rescue-original-load {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 11px 13px;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: var(--panel-alt);
}
.rescue-original-load > span { display: grid; place-items: center; width: 34px; height: 34px; flex: 0 0 auto; border-radius: 10px; background: var(--accent-soft); color: var(--accent-2); }
.rescue-original-load svg { width: 18px; height: 18px; }
.rescue-original-load > div { display: grid; gap: 3px; min-width: 0; }
.rescue-original-load small { color: var(--muted); font-size: 8px; }
.rescue-original-load strong { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; font-size: 11px; }
.rescue-original-load p { margin: 0; color: var(--text-2); font-size: 8.8px; }

.rescue-results-head { display: flex; align-items: end; justify-content: space-between; gap: 12px; padding: 2px 2px 0; }
.rescue-results-head > div { display: grid; gap: 2px; }
.rescue-results-head strong { font-size: 11px; }
.rescue-results-head small { color: var(--muted); font-size: 8.2px; }
.rescue-results-head > span { display: inline-flex; align-items: center; gap: 6px; color: #e96684; font-size: 7.8px; font-weight: 900; letter-spacing: .08em; }
.rescue-results-head > span i { width: 7px; height: 7px; border-radius: 50%; background: #e03a60; box-shadow: 0 0 10px #d52f57; animation: rescue-live 1.25s ease-in-out infinite; }

.rescue-candidates { display: grid; gap: 9px; max-height: min(52vh,480px); overflow: auto; padding-right: 3px; }
.rescue-candidate {
  display: grid;
  grid-template-columns: 46px minmax(0,1fr);
  gap: 11px;
  padding: 11px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: color-mix(in srgb,var(--panel-alt) 94%,transparent);
  box-shadow: 0 8px 20px rgba(0,0,0,.08);
}
.rescue-candidate.best { border-color: color-mix(in srgb,#d94366 52%,var(--border)); box-shadow: inset 3px 0 0 #c52e55, 0 10px 24px rgba(116,15,44,.13); }
.rescue-candidate-rank { display: grid; place-content: center; align-self: stretch; min-height: 54px; border-radius: 11px; background: color-mix(in srgb,#a61c43 12%,var(--panel)); text-align: center; }
.rescue-candidate-rank span { color: #ef7793; font-size: 16px; font-weight: 900; }
.rescue-candidate-rank small { color: var(--muted); font-size: 7px; text-transform: uppercase; }
.rescue-candidate-main { display: grid; gap: 8px; min-width: 0; }
.rescue-candidate-title { display: flex; justify-content: space-between; gap: 10px; align-items: start; }
.rescue-candidate-title > div { display: grid; gap: 2px; min-width: 0; }
.rescue-candidate-title small { color: var(--muted); font-size: 7.8px; }
.rescue-candidate-title strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.rescue-candidate-title > b { color: #f17a96; font-size: 17px; }
.rescue-candidate-title > b small { color: var(--muted); font-size: 7px; }
.rescue-candidate-route { display: flex; align-items: center; gap: 8px; }
.rescue-candidate-route > span:last-child { display: grid; gap: 2px; }
.rescue-candidate-route strong { font-size: 9px; }
.rescue-candidate-route small { color: var(--muted); font-size: 7.7px; }
.rescue-candidate-metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; }
.rescue-candidate-metrics > span { display: grid; gap: 2px; padding: 7px 8px; border: 1px solid var(--border); border-radius: 9px; background: color-mix(in srgb,var(--panel) 72%,transparent); }
.rescue-candidate-metrics small { color: var(--muted); font-size: 7px; }
.rescue-candidate-metrics strong { overflow: hidden; font-size: 8.7px; text-overflow: ellipsis; white-space: nowrap; }
.rescue-candidate-metrics em { color: #df6783; font-size: 6.9px; font-style: normal; }
.rescue-candidate-actions { display: flex; justify-content: flex-end; gap: 7px; flex-wrap: wrap; }
.rescue-helper { font-size: 8.7px; }
.rescue-empty { display: grid; justify-items: center; gap: 6px; padding: 28px 18px; border: 1px dashed color-mix(in srgb,#c53a5d 34%,var(--border)); border-radius: 14px; background: color-mix(in srgb,#73132e 5%,var(--panel-alt)); text-align: center; }
.rescue-empty > span { font-size: 30px; }
.rescue-empty strong { font-size: 11px; }
.rescue-empty p { max-width: 540px; margin: 0; color: var(--muted); font-size: 8.8px; line-height: 1.55; }

@keyframes rescue-ring { 0% { transform: scale(.72); opacity: .85; } 100% { transform: scale(1.28); opacity: 0; } }
@keyframes rescue-live { 0%,100% { opacity: .55; transform: scale(.9); } 50% { opacity: 1; transform: scale(1.15); } }

@media (max-width: 760px) {
  .transport-rescue-callout { grid-template-columns: auto 1fr; }
  .transport-rescue-callout .button-rescue { grid-column: 1 / -1; width: 100%; }
  .rescue-hero { grid-template-columns: auto 1fr; }
  .rescue-best-summary { grid-column: 1 / -1; text-align: left; }
  .rescue-candidate-metrics { grid-template-columns: 1fr; }
}

/* K-Line Inteligence nakládek — komunitní data z dokončených přeprav. */
.loading-intel-strip {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 9px;
  align-items: center;
  margin-top: 8px;
  padding: 8px 9px;
  border: 1px solid color-mix(in srgb,var(--accent) 26%,var(--border));
  border-radius: 11px;
  background: linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%,var(--panel-alt)),color-mix(in srgb,var(--panel-solid) 94%,transparent));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}
.loading-intel-strip.good { border-color: color-mix(in srgb,var(--success) 35%,var(--border)); }
.loading-intel-strip.medium { border-color: color-mix(in srgb,var(--warning) 38%,var(--border)); }
.loading-intel-strip.risk { border-color: color-mix(in srgb,var(--danger) 42%,var(--border)); }
.loading-intel-strip-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: color-mix(in srgb,var(--accent) 12%,var(--panel-alt));
  font-size: 17px;
  box-shadow: 0 0 18px color-mix(in srgb,var(--accent) 12%,transparent);
}
.loading-intel-strip > div { display: grid; min-width: 0; grid-template-columns: auto 1fr; gap: 1px 8px; align-items: baseline; }
.loading-intel-strip small { grid-column: 1 / -1; color: var(--muted); font-size: 8.5px; font-weight: 750; }
.loading-intel-strip strong { color: var(--text); font-size: 11px; white-space: nowrap; }
.loading-intel-strip p { overflow: hidden; margin: 0; color: var(--text-2); font-size: 8.8px; text-overflow: ellipsis; white-space: nowrap; }

.loading-intel-panel {
  display: grid;
  gap: 11px;
  padding: 14px;
  border: 1px solid color-mix(in srgb,var(--accent) 35%,var(--border));
  border-radius: 15px;
  background:
    radial-gradient(circle at 4% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 34%),
    linear-gradient(145deg,color-mix(in srgb,var(--panel-alt) 96%,transparent),color-mix(in srgb,var(--panel-solid) 94%,transparent));
  box-shadow: 0 14px 34px rgba(0,0,0,.13), inset 0 1px 0 rgba(255,255,255,.045);
}
.loading-intel-panel.good { border-color: color-mix(in srgb,var(--success) 42%,var(--border)); }
.loading-intel-panel.medium { border-color: color-mix(in srgb,var(--warning) 45%,var(--border)); }
.loading-intel-panel.risk { border-color: color-mix(in srgb,var(--danger) 48%,var(--border)); }
.loading-intel-panel.empty { border-style: dashed; }
.loading-intel-head {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: 11px;
  align-items: center;
}
.loading-intel-head > span,
.loading-intel-feedback-hero > span {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border: 1px solid color-mix(in srgb,var(--accent) 35%,transparent);
  border-radius: 14px;
  background: color-mix(in srgb,var(--accent) 11%,var(--panel-alt));
  font-size: 23px;
  box-shadow: 0 0 25px color-mix(in srgb,var(--accent) 12%,transparent);
}
.loading-intel-head > div,
.loading-intel-feedback-hero > div { display: grid; min-width: 0; gap: 2px; }
.loading-intel-head small,
.loading-intel-feedback-hero small { color: var(--accent-2); font-size: 8.5px; font-weight: 800; letter-spacing: .035em; }
.loading-intel-head strong,
.loading-intel-feedback-hero strong { color: var(--text); font-size: 12px; }
.loading-intel-head p,
.loading-intel-feedback-hero p { margin: 0; color: var(--text-2); font-size: 9px; line-height: 1.5; }
.loading-intel-wait {
  display: grid;
  gap: 2px;
  min-width: 104px;
  padding: 9px 11px;
  border: 1px solid var(--border);
  border-radius: 11px;
  background: var(--panel-alt);
  color: var(--text);
  font-size: 15px;
  text-align: right;
}
.loading-intel-wait small { color: var(--muted); font-size: 7.5px; }
.loading-intel-metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; }
.loading-intel-metrics > span { display: grid; gap: 3px; min-width: 0; padding: 9px 10px; border: 1px solid var(--border); border-radius: 10px; background: color-mix(in srgb,var(--panel-alt) 90%,transparent); }
.loading-intel-metrics small { color: var(--muted); font-size: 8px; }
.loading-intel-metrics strong { overflow: hidden; color: var(--text); font-size: 9.5px; line-height: 1.35; text-overflow: ellipsis; }
.loading-intel-equipment { display: grid; gap: 6px; }
.loading-intel-equipment > small { color: var(--muted); font-size: 8px; }
.loading-intel-equipment > div { display: flex; flex-wrap: wrap; gap: 6px; }
.loading-intel-equipment span { padding: 5px 8px; border: 1px solid color-mix(in srgb,var(--success) 27%,var(--border)); border-radius: 99px; background: color-mix(in srgb,var(--success) 8%,transparent); color: var(--text-2); font-size: 8px; font-weight: 720; }
.loading-intel-note { display: grid; grid-template-columns: auto 1fr; gap: 8px; align-items: start; padding: 9px 10px; border-left: 2px solid color-mix(in srgb,var(--accent) 60%,transparent); border-radius: 0 9px 9px 0; background: color-mix(in srgb,var(--accent) 6%,transparent); }
.loading-intel-note > span { font-size: 15px; }
.loading-intel-note p { display: grid; gap: 2px; margin: 0; color: var(--text-2); font-size: 9px; line-height: 1.5; }
.loading-intel-note small { color: var(--muted); font-size: 7.8px; font-weight: 760; }
.loading-intel-footer { display: flex; gap: 10px; align-items: center; justify-content: space-between; }
.loading-intel-footer > span { max-width: 68%; color: var(--muted); font-size: 7.8px; line-height: 1.45; }
.loading-intel-feedback-button {
  border-color: color-mix(in srgb,#22b8a8 48%,var(--border)) !important;
  background: linear-gradient(135deg,color-mix(in srgb,#22b8a8 18%,var(--panel-alt)),color-mix(in srgb,#167c9e 10%,var(--panel-alt))) !important;
  color: color-mix(in srgb,#62e6d7 75%,var(--text)) !important;
  box-shadow: 0 8px 20px rgba(16,145,154,.12);
}
.loading-intel-feedback-button:hover { box-shadow: 0 10px 26px rgba(16,145,154,.22), 0 0 0 1px color-mix(in srgb,#36d6c5 26%,transparent); }

.loading-intel-feedback { display: grid; gap: 13px; }
.loading-intel-feedback-hero { display: grid; grid-template-columns: auto 1fr; gap: 11px; align-items: center; padding: 12px; border: 1px solid color-mix(in srgb,var(--accent) 30%,var(--border)); border-radius: 13px; background: var(--panel-alt); }
.loading-intel-feedback .form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.loading-intel-checks { display: flex; flex-wrap: wrap; gap: 8px 14px; margin: 0; padding: 10px 11px 11px; border: 1px solid var(--border); border-radius: 11px; background: color-mix(in srgb,var(--panel-alt) 92%,transparent); }
.loading-intel-checks legend { padding: 0 5px; color: var(--muted); font-size: 8px; font-weight: 800; }
.loading-intel-checks label { display: flex; align-items: center; gap: 5px; color: var(--text-2); font-size: 8.5px; cursor: pointer; }
.loading-intel-checks input { accent-color: var(--accent); }
.loading-intel-feedback textarea { min-height: 92px; resize: vertical; }

.radar-loading-intel {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid color-mix(in srgb,var(--accent) 30%,var(--border));
  border-radius: 12px;
  background: color-mix(in srgb,var(--panel-alt) 88%,transparent);
}
.radar-loading-intel > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; background: color-mix(in srgb,var(--accent) 10%,var(--panel)); font-size: 19px; }
.radar-loading-intel > div { display: grid; gap: 2px; }
.radar-loading-intel small { color: var(--muted); font-size: 8px; }
.radar-loading-intel strong { color: var(--text); font-size: 10px; }
.radar-loading-intel p { margin: 0; color: var(--text-2); font-size: 8.5px; }
.radar-loading-intel.good { border-color: color-mix(in srgb,var(--success) 38%,var(--border)); }
.radar-loading-intel.medium { border-color: color-mix(in srgb,var(--warning) 42%,var(--border)); }
.radar-loading-intel.risk { border-color: color-mix(in srgb,var(--danger) 45%,var(--border)); }
.radar-loading-intel.empty { opacity: .82; border-style: dashed; }

.feature-loadingintel { --feature-tone: #19b7a5; }

@media (max-width: 760px) {
  .loading-intel-head { grid-template-columns: auto 1fr; }
  .loading-intel-wait { grid-column: 1 / -1; text-align: left; }
  .loading-intel-metrics { grid-template-columns: 1fr; }
  .loading-intel-footer { align-items: stretch; flex-direction: column; }
  .loading-intel-footer > span { max-width: none; }
  .loading-intel-feedback .form-grid { grid-template-columns: 1fr; }
}
.loading-intel-history { border-top: 1px solid var(--border); padding-top: 8px; }
.loading-intel-history summary { width: fit-content; color: var(--accent-2); font-size: 8.3px; font-weight: 780; cursor: pointer; user-select: none; }
.loading-intel-history > div { display: grid; gap: 6px; margin-top: 8px; }
.loading-intel-history article { display: grid; grid-template-columns: 78px 1fr; gap: 8px; align-items: start; padding: 7px 8px; border: 1px solid var(--border); border-radius: 9px; background: color-mix(in srgb,var(--panel-alt) 88%,transparent); }
.loading-intel-history article > span { display: grid; gap: 1px; }
.loading-intel-history article strong { color: var(--text); font-size: 9px; }
.loading-intel-history article small { color: var(--muted); font-size: 7.3px; }
.loading-intel-history article p { margin: 0; color: var(--text-2); font-size: 8.4px; line-height: 1.45; }

/* K-Line — automatický důkazní balíček přepravy */
.evidence-timeline-panel {
  display: grid;
  gap: 12px;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid color-mix(in srgb,#7c4dff 34%,var(--border));
  border-radius: 16px;
  background: linear-gradient(145deg,color-mix(in srgb,#6c4df6 7%,var(--panel-alt)),color-mix(in srgb,var(--panel-solid) 95%,transparent));
  box-shadow: 0 16px 36px rgba(29,35,66,.12), inset 0 1px 0 rgba(255,255,255,.04);
}
.evidence-timeline-head { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 12px; align-items: center; }
.evidence-shield,.evidence-package-orb { position: relative; display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid color-mix(in srgb,#7967ff 46%,transparent); border-radius: 15px; background: radial-gradient(circle at 35% 25%,rgba(255,255,255,.16),transparent 30%),linear-gradient(145deg,#39255f,#172a58); box-shadow: 0 0 28px rgba(94,76,255,.24); font-size: 23px; overflow: hidden; }
.evidence-shield i,.evidence-package-orb i { position: absolute; inset: -70%; border: 1px solid rgba(122,103,255,.22); border-radius: 50%; animation: evidenceScan 3.4s linear infinite; }
@keyframes evidenceScan { to { transform: rotate(360deg); } }
.evidence-timeline-head > div:nth-child(2) { display: grid; gap: 2px; }
.evidence-timeline-head small { color: var(--muted); font-size: 8px; }
.evidence-timeline-head strong { color: var(--text); font-size: 12px; }
.evidence-timeline-head p { margin: 0; color: var(--text-2); font-size: 8.7px; }
.evidence-head-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.evidence-package-button { border-color: rgba(121,103,255,.5) !important; background: linear-gradient(135deg,#3d2a73,#234f93) !important; color: #f4f1ff !important; box-shadow: 0 9px 24px rgba(65,62,184,.25); }
.evidence-package-button:hover { transform: translateY(-1px); box-shadow: 0 12px 30px rgba(65,62,184,.34),0 0 0 1px rgba(144,132,255,.3); }
.evidence-integrity-note { display: grid; grid-template-columns: auto 1fr; gap: 8px; align-items: start; padding: 9px 10px; border: 1px solid color-mix(in srgb,#6c88b8 22%,var(--border)); border-radius: 11px; background: color-mix(in srgb,#5376a8 6%,var(--panel-alt)); }
.evidence-integrity-note > span { font-size: 15px; }
.evidence-integrity-note p { margin: 0; color: var(--text-2); font-size: 8px; line-height: 1.5; }
.evidence-integrity-note strong { color: var(--text); }
.evidence-timeline { display: grid; }
.evidence-stage { display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 8px; min-width: 0; }
.evidence-stage-rail { display: grid; grid-template-rows: 30px 1fr; justify-items: center; min-height: 58px; }
.evidence-stage-rail > span { display: grid; place-items: center; width: 30px; height: 30px; border: 1px solid var(--border); border-radius: 50%; background: var(--panel-solid); filter: grayscale(.35); font-size: 14px; z-index: 1; }
.evidence-stage.complete .evidence-stage-rail > span { border-color: color-mix(in srgb,var(--success) 46%,var(--border)); background: color-mix(in srgb,var(--success) 13%,var(--panel-solid)); filter: none; box-shadow: 0 0 16px color-mix(in srgb,var(--success) 16%,transparent); }
.evidence-stage-rail > i { width: 2px; min-height: 28px; background: linear-gradient(var(--border-strong),var(--border)); }
.evidence-stage.complete .evidence-stage-rail > i { background: linear-gradient(color-mix(in srgb,var(--success) 46%,transparent),var(--border)); }
.evidence-stage-body { min-width: 0; padding: 3px 0 12px; }
.evidence-stage-body > header { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.evidence-stage-body > header strong { color: var(--text); font-size: 10px; }
.evidence-stage-body > header small { color: var(--muted); font-size: 7.7px; text-align: right; }
.evidence-stage.complete .evidence-stage-body > header small { color: color-mix(in srgb,var(--success) 70%,var(--text-2)); }
.evidence-derived-copy { margin: 4px 0 0; color: var(--muted); font-size: 7.8px; line-height: 1.45; }
.evidence-record-list { display: grid; gap: 7px; margin-top: 7px; }
.evidence-record { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 9px; align-items: start; padding: 9px; border: 1px solid var(--border); border-radius: 10px; background: color-mix(in srgb,var(--panel-alt) 92%,transparent); }
.evidence-record > div:first-child { display: grid; gap: 2px; }
.evidence-record time { color: var(--accent-2); font-size: 7.4px; font-weight: 780; }
.evidence-record strong { color: var(--text); font-size: 9px; }
.evidence-record small { color: var(--muted); font-size: 7.3px; }
.evidence-record p { margin: 4px 0 0; color: var(--text-2); font-size: 8.2px; line-height: 1.45; }
.evidence-attachment { display: flex; align-items: center; gap: 7px; max-width: 220px; min-width: 120px; padding: 6px; border: 1px solid var(--border); border-radius: 9px; background: var(--panel-solid); color: var(--text); text-decoration: none; }
.evidence-attachment.image { display: grid; grid-template-columns: 54px minmax(0,1fr); }
.evidence-attachment.image img { width: 54px; height: 42px; border-radius: 7px; object-fit: cover; cursor: zoom-in; }
.evidence-attachment.image span { overflow: hidden; font-size: 7.6px; text-overflow: ellipsis; white-space: nowrap; }
.evidence-attachment.document svg { width: 18px; height: 18px; color: var(--accent-2); }
.evidence-attachment.document > span { display: grid; min-width: 0; gap: 1px; }
.evidence-attachment.document strong { overflow: hidden; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.evidence-attachment.document small { font-size: 7px; }

.evidence-add-dialog { display: grid; gap: 12px; }
.evidence-add-hero { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: center; padding: 12px; border: 1px solid color-mix(in srgb,#7867ff 32%,var(--border)); border-radius: 13px; background: color-mix(in srgb,#6a58da 6%,var(--panel-alt)); }
.evidence-add-hero > span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: linear-gradient(145deg,#34205c,#1e457a); font-size: 20px; box-shadow: 0 8px 20px rgba(61,51,145,.22); }
.evidence-add-hero > div { display: grid; gap: 2px; }
.evidence-add-hero small { color: var(--muted); font-size: 8px; }
.evidence-add-hero strong { color: var(--text); font-size: 11px; }
.evidence-add-hero p { margin: 0; color: var(--text-2); font-size: 8.3px; line-height: 1.45; }
.evidence-add-dialog .form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.evidence-add-dialog textarea { min-height: 90px; resize: vertical; }
.evidence-upload-card { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 9px 12px; align-items: center; padding: 11px; border: 1px dashed color-mix(in srgb,#7d6dff 38%,var(--border)); border-radius: 12px; background: color-mix(in srgb,#6455d6 5%,var(--panel-alt)); }
.evidence-upload-card > div { display: grid; gap: 2px; }
.evidence-upload-card strong { color: var(--text); font-size: 9px; }
.evidence-upload-card small,.evidence-upload-card > span { color: var(--muted); font-size: 7.6px; }
.evidence-upload-card > span { grid-column: 1 / -1; }

.evidence-package-preview { display: grid; gap: 13px; }
.evidence-package-hero { display: grid; grid-template-columns: auto 1fr; gap: 12px; align-items: center; padding: 13px; border: 1px solid color-mix(in srgb,#7d6dff 38%,var(--border)); border-radius: 14px; background: linear-gradient(145deg,color-mix(in srgb,#6a56db 9%,var(--panel-alt)),var(--panel-alt)); }
.evidence-package-hero > div:last-child { display: grid; gap: 2px; }
.evidence-package-hero small { color: var(--muted); font-size: 8px; }
.evidence-package-hero strong { color: var(--text); font-size: 11px; }
.evidence-package-hero p { margin: 0; color: var(--text-2); font-size: 8.4px; line-height: 1.45; }
.evidence-package-stats { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
.evidence-package-stats span { display: grid; gap: 3px; padding: 10px; border: 1px solid var(--border); border-radius: 11px; background: var(--panel-alt); }
.evidence-package-stats small { color: var(--muted); font-size: 7.6px; }
.evidence-package-stats strong { color: var(--text); font-size: 15px; }
.evidence-package-contents { padding: 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); }
.evidence-package-contents > strong { color: var(--text); font-size: 9px; }
.evidence-package-contents ul { display: grid; gap: 6px; margin: 8px 0 0; padding-left: 18px; color: var(--text-2); font-size: 8.2px; line-height: 1.45; }
.evidence-package-contents b { color: var(--accent-2); }
.feature-evidence { --feature-tone: #7967ff; }

@media (max-width: 820px) {
  .evidence-timeline-head { grid-template-columns: auto 1fr; }
  .evidence-head-actions { grid-column: 1 / -1; justify-content: stretch; }
  .evidence-head-actions .button { flex: 1; }
  .evidence-record { grid-template-columns: 1fr; }
  .evidence-attachment { max-width: none; }
  .evidence-package-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .evidence-add-dialog .form-grid { grid-template-columns: 1fr; }
  .evidence-upload-card { grid-template-columns: 1fr; }
  .evidence-stage-body > header { align-items: flex-start; flex-direction: column; gap: 2px; }
  .evidence-stage-body > header small { text-align: left; }
}

/* K-Line — podezřelé nabídky s povinným ručním schválením administrátora. */
.risk-review-nav-item.has-pending-risk { position: relative; border-color: color-mix(in srgb,#c64255 35%,var(--border)); background: color-mix(in srgb,#8e2437 12%,transparent); }
.risk-review-nav-item.has-pending-risk::after { content: ""; position: absolute; right: 10px; top: 9px; width: 7px; height: 7px; border-radius: 50%; background: #e64b5f; box-shadow: 0 0 0 0 rgba(230,75,95,.55); animation: riskNavPulse 1.7s ease-out infinite; }
.risk-review-nav-item.has-pending-risk .nav-count { margin-right: 11px; }
@keyframes riskNavPulse { 0% { box-shadow: 0 0 0 0 rgba(230,75,95,.5); } 70% { box-shadow: 0 0 0 7px rgba(230,75,95,0); } 100% { box-shadow: 0 0 0 0 rgba(230,75,95,0); } }

.offer-risk-mini { display: inline-flex; align-items: center; margin-left: 7px; padding: 2px 6px; border: 1px solid rgba(197,60,82,.42); border-radius: 999px; background: rgba(115,27,44,.16); color: #ef7a8b; font-size: 7.5px; font-weight: 900; line-height: 1.2; vertical-align: middle; white-space: nowrap; }
.offer-risk-approved { display: grid; grid-template-columns: 32px 1fr; align-items: center; gap: 10px; margin: 10px 0 2px; padding: 10px 12px; border: 1px solid color-mix(in srgb,#c94158 48%,var(--border)); border-radius: 12px; background: linear-gradient(135deg,color-mix(in srgb,#6f1728 18%,var(--panel-alt)),color-mix(in srgb,#3c111c 8%,var(--panel))); box-shadow: 0 9px 24px rgba(97,22,38,.12), inset 0 1px 0 rgba(255,255,255,.04); }
.offer-risk-icon { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 10px; background: linear-gradient(145deg,#8e2237,#c94359); color: #fff; font-size: 17px; font-weight: 950; box-shadow: 0 7px 16px rgba(117,24,42,.32); }
.offer-risk-approved > div { display: grid; gap: 2px; min-width: 0; }
.offer-risk-approved strong { color: color-mix(in srgb,#ff8d9c 74%,var(--text)); font-size: calc(10px * var(--label-text-scale,1)); letter-spacing: .01em; }
.offer-risk-approved small { color: color-mix(in srgb,var(--muted) 88%,#fff 12%); font-size: calc(8px * var(--micro-text-scale,1)); line-height: 1.5; }

.risk-admin-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 12px 0; }
.risk-admin-summary > span { display: grid; gap: 4px; padding: 13px 14px; border: 1px solid var(--border); border-radius: 13px; background: var(--panel-alt); box-shadow: 0 10px 26px rgba(0,0,0,.08); }
.risk-admin-summary small { color: var(--muted); font-size: calc(8px * var(--micro-text-scale,1)); }
.risk-admin-summary strong { font-size: calc(23px * var(--main-text-scale,1)); line-height: 1; }
.risk-admin-summary .pending { border-color: color-mix(in srgb,#d05265 35%,var(--border)); background: linear-gradient(145deg,color-mix(in srgb,#75182b 12%,var(--panel-alt)),var(--panel-alt)); }
.risk-admin-summary .pending strong { color: #ef7184; }
.risk-admin-summary .approved strong { color: var(--success); }
.risk-admin-policy { display: grid; grid-template-columns: 40px 1fr; align-items: center; gap: 12px; margin-bottom: 13px; padding: 12px 14px; border: 1px solid color-mix(in srgb,var(--accent) 30%,var(--border)); border-radius: 14px; background: color-mix(in srgb,var(--accent) 6%,var(--panel-alt)); }
.risk-admin-policy > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: var(--accent-soft); color: var(--accent-2); }
.risk-admin-policy svg { width: 18px; height: 18px; }
.risk-admin-policy strong { display: block; margin-bottom: 2px; font-size: calc(10px * var(--label-text-scale,1)); }
.risk-admin-policy p { margin: 0; color: var(--muted); font-size: calc(8.5px * var(--micro-text-scale,1)); line-height: 1.5; }

.risk-review-list { display: grid; gap: 12px; }
.risk-review-card { overflow: hidden; padding: 14px; border: 1px solid var(--border); border-radius: 15px; background: var(--panel); box-shadow: 0 12px 30px rgba(0,0,0,.1); }
.risk-review-card.status-pending { border-color: color-mix(in srgb,#c8465a 38%,var(--border)); box-shadow: 0 12px 32px rgba(110,25,42,.11); }
.risk-review-card.status-approved { border-color: color-mix(in srgb,var(--success) 34%,var(--border)); }
.risk-review-card.status-rejected { opacity: .78; }
.risk-review-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.risk-review-card-head h3 { margin: 3px 0 2px; font-size: calc(15px * var(--main-text-scale,1)); }
.risk-review-card-head small { color: var(--muted); font-size: calc(8.5px * var(--micro-text-scale,1)); }
.risk-review-status { display: inline-flex; align-items: center; width: fit-content; padding: 4px 7px; border-radius: 999px; background: color-mix(in srgb,#9c2d41 14%,var(--panel-alt)); color: #ef7184; font-size: calc(7.5px * var(--micro-text-scale,1)); font-weight: 900; }
.status-approved .risk-review-status { background: color-mix(in srgb,var(--success) 13%,var(--panel-alt)); color: var(--success); }
.status-rejected .risk-review-status { background: color-mix(in srgb,var(--muted) 12%,var(--panel-alt)); color: var(--muted); }
.risk-score-orb { display: grid; place-items: center; align-content: center; flex: 0 0 auto; width: 62px; height: 62px; border: 1px solid rgba(218,73,94,.38); border-radius: 50%; background: radial-gradient(circle at 34% 28%,rgba(239,101,122,.24),transparent 42%),linear-gradient(145deg,rgba(115,24,42,.16),rgba(55,11,20,.05)); box-shadow: inset 0 0 0 5px color-mix(in srgb,#8e2237 8%,transparent),0 8px 24px rgba(105,21,37,.14); }
.risk-score-orb strong { color: #ed6d81; font-size: 20px; line-height: 1; }
.risk-score-orb small { margin-top: 1px; color: var(--muted); font-size: 7px; }
.risk-review-facts { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; margin: 12px 0; }
.risk-review-facts span { display: grid; gap: 3px; padding: 8px 9px; border-radius: 10px; background: var(--panel-alt); }
.risk-review-facts small { color: var(--muted); font-size: calc(7.5px * var(--micro-text-scale,1)); }
.risk-review-facts strong { overflow: hidden; font-size: calc(9px * var(--label-text-scale,1)); text-overflow: ellipsis; white-space: nowrap; }
.risk-signal-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
.risk-signal-list article { display: grid; grid-template-columns: 38px 1fr; gap: 9px; align-items: start; padding: 9px; border: 1px solid color-mix(in srgb,#c44458 18%,var(--border)); border-radius: 11px; background: color-mix(in srgb,#7a1d2e 5%,var(--panel-alt)); }
.risk-signal-list article > span { display: grid; place-items: center; min-height: 30px; border-radius: 8px; background: rgba(151,36,55,.14); color: #e66b7d; font-size: 9px; font-weight: 950; }
.risk-signal-list article div { display: grid; gap: 2px; }
.risk-signal-list strong { font-size: calc(9px * var(--label-text-scale,1)); }
.risk-signal-list small { color: var(--muted); font-size: calc(7.8px * var(--micro-text-scale,1)); line-height: 1.45; }
.risk-review-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; margin-top: 12px; padding-top: 11px; border-top: 1px solid var(--border); }
.risk-approve-button { border-color: color-mix(in srgb,var(--success) 45%,transparent); background: linear-gradient(145deg,color-mix(in srgb,var(--success) 76%,#062d22),color-mix(in srgb,var(--success) 58%,#051d17)); color: #fff; box-shadow: 0 8px 20px color-mix(in srgb,var(--success) 18%,transparent); }
.risk-reject-button { border-color: color-mix(in srgb,#b83950 48%,transparent); background: linear-gradient(145deg,#7b1e31,#a52e44); color: #fff; }
.risk-reviewed-meta { margin-top: 8px; color: var(--muted); font-size: calc(7.5px * var(--micro-text-scale,1)); text-align: right; }

@media (max-width: 860px) {
  .risk-admin-summary { grid-template-columns: 1fr; }
  .risk-review-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .risk-signal-list { grid-template-columns: 1fr; }
}

/* K-Line Autopilot — dopravce: automatické skládání řetězců přeprav. */
.autopilot-nav-item { position: relative; }
.autopilot-nav-live { margin-left: auto; padding: 2px 5px; border: 1px solid color-mix(in srgb,var(--success) 42%,transparent); border-radius: 999px; background: color-mix(in srgb,var(--success) 10%,transparent); color: color-mix(in srgb,var(--success) 78%,white 22%); font-size: 6.8px; font-weight: 900; letter-spacing: .08em; box-shadow: 0 0 12px color-mix(in srgb,var(--success) 18%,transparent); }
.autopilot-hero { position: relative; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 18px; overflow: hidden; margin-bottom: 14px; padding: 20px; border: 1px solid color-mix(in srgb,var(--accent) 42%,var(--border)); border-radius: 18px; background: radial-gradient(circle at 12% 20%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 38%),linear-gradient(145deg,color-mix(in srgb,var(--panel-solid) 96%,transparent),color-mix(in srgb,var(--panel-alt) 94%,transparent)); box-shadow: 0 18px 42px rgba(0,0,0,.17),0 0 28px color-mix(in srgb,var(--accent) 9%,transparent); }
.autopilot-hero::after { content:""; position:absolute; inset:auto -80px -110px auto; width:260px; height:260px; border:1px solid color-mix(in srgb,var(--accent) 18%,transparent); border-radius:50%; box-shadow:0 0 80px color-mix(in srgb,var(--accent) 10%,transparent); }
.autopilot-orbit { position:relative; display:grid; place-items:center; width:82px; height:82px; border-radius:50%; background:color-mix(in srgb,var(--accent) 10%,var(--panel-alt)); color:var(--accent-2); box-shadow:inset 0 0 24px color-mix(in srgb,var(--accent) 12%,transparent),0 0 30px color-mix(in srgb,var(--accent) 15%,transparent); }
.autopilot-orbit > span { display:grid; place-items:center; width:48px; height:48px; border:1px solid color-mix(in srgb,var(--accent) 38%,transparent); border-radius:16px; background:var(--panel-solid); z-index:2; }
.autopilot-orbit svg { width:25px; height:25px; }
.autopilot-orbit i,.autopilot-orbit b { position:absolute; inset:5px; border:1px dashed color-mix(in srgb,var(--accent) 48%,transparent); border-radius:50%; animation:autopilot-spin 9s linear infinite; }
.autopilot-orbit b { inset:14px; border-style:solid; border-color:transparent color-mix(in srgb,var(--success) 52%,transparent) transparent transparent; animation-duration:4.2s; animation-direction:reverse; }
@keyframes autopilot-spin { to { transform:rotate(360deg); } }
.autopilot-live { display:inline-flex; align-items:center; gap:7px; margin-bottom:6px; color:var(--accent-2); font-size:8px; font-weight:900; letter-spacing:.1em; }
.autopilot-live i,.autopilot-live-dot { width:7px; height:7px; border-radius:50%; background:var(--success); box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 10%,transparent),0 0 12px color-mix(in srgb,var(--success) 55%,transparent); animation:feature-live-pulse 1.7s ease-in-out infinite; }
.autopilot-hero h3 { margin:0 0 6px; font-size:17px; }
.autopilot-hero p { max-width:760px; margin:0; color:var(--text-2); font-size:10px; line-height:1.6; }
.autopilot-hero-example { position:relative; z-index:2; display:grid; gap:4px; min-width:190px; padding:12px 14px; border:1px solid var(--border); border-radius:13px; background:color-mix(in srgb,var(--panel-solid) 88%,transparent); box-shadow:inset 0 1px 0 rgba(255,255,255,.05); }
.autopilot-hero-example small { color:var(--muted); font-size:8px; text-transform:uppercase; letter-spacing:.06em; }
.autopilot-hero-example strong { font-size:12px; }
.autopilot-hero-example span { color:var(--accent-2); font-size:8.5px; font-weight:750; }
.autopilot-active-strip { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:14px; padding:13px 15px; border:1px solid color-mix(in srgb,var(--success) 36%,var(--border)); border-radius:14px; background:linear-gradient(135deg,color-mix(in srgb,var(--success) 9%,var(--panel-alt)),var(--panel-solid)); box-shadow:0 10px 25px color-mix(in srgb,var(--success) 7%,transparent); }
.autopilot-active-strip > div { display:grid; grid-template-columns:auto auto; align-items:center; column-gap:8px; row-gap:3px; }
.autopilot-active-strip .autopilot-live-dot { grid-row:1 / span 3; }
.autopilot-active-strip small { color:var(--success); font-size:7.5px; font-weight:900; letter-spacing:.08em; }
.autopilot-active-strip strong { grid-column:2; font-size:11px; }
.autopilot-active-strip p { grid-column:2; margin:0; color:var(--muted); font-size:8px; }
.autopilot-form { margin-bottom:14px; padding:16px; border:1px solid var(--border); border-radius:17px; background:var(--panel); box-shadow:0 14px 32px rgba(0,0,0,.1); }
.autopilot-form-head,.autopilot-results-head { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-bottom:13px; }
.autopilot-form-head > div,.autopilot-results-head > div { display:grid; gap:3px; }
.autopilot-form-head small,.autopilot-results-head small { color:var(--accent-2); font-size:7.5px; font-weight:900; letter-spacing:.08em; }
.autopilot-form-head strong,.autopilot-results-head strong { font-size:12px; }
.autopilot-form-head > span,.autopilot-results-head > span { color:var(--muted); font-size:8px; }
.autopilot-fields { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.autopilot-fields label { display:grid; gap:5px; min-width:0; color:var(--text-2); font-size:8px; font-weight:700; }
.autopilot-fields label > span { min-height:14px; }
.autopilot-fields label > span small { color:var(--muted); font-size:7px; font-weight:600; }
.autopilot-fields input,.autopilot-fields select { width:100%; min-width:0; height:38px; padding:0 10px; border:1px solid var(--border); border-radius:10px; background:var(--input-bg,var(--panel-alt)); color:var(--text); font:inherit; font-size:9px; outline:none; }
.autopilot-fields input:focus,.autopilot-fields select:focus { border-color:color-mix(in srgb,var(--accent) 70%,var(--border)); box-shadow:0 0 0 3px var(--accent-soft); }
.autopilot-input-unit { position:relative; }
.autopilot-input-unit input { padding-right:50px; }
.autopilot-input-unit b { position:absolute; top:50%; right:9px; transform:translateY(-50%); color:var(--accent-2); font-size:8px; pointer-events:none; }
.autopilot-form-footer { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:13px; padding-top:12px; border-top:1px solid var(--border); }
.autopilot-form-footer p { margin:0; color:var(--muted); font-size:8px; line-height:1.5; }
.autopilot-form-footer p strong { color:var(--text-2); }
.autopilot-generate-button { border-color:color-mix(in srgb,var(--accent) 68%,transparent); background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 88%,#0b5ca8),var(--accent)); color:#fff; box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 22%,transparent),inset 0 1px 0 rgba(255,255,255,.18); }
.autopilot-generate-button svg { width:13px; height:13px; }
.autopilot-results-section { padding:16px; border:1px solid var(--border); border-radius:17px; background:color-mix(in srgb,var(--panel) 96%,transparent); }
.autopilot-results { display:grid; gap:12px; }
.autopilot-plan-card { position:relative; overflow:hidden; padding:15px; border:1px solid var(--border); border-radius:15px; background:linear-gradient(145deg,var(--panel-solid),var(--panel-alt)); box-shadow:0 10px 25px rgba(0,0,0,.11); }
.autopilot-plan-card.recommended { border-color:color-mix(in srgb,var(--accent) 55%,var(--border)); box-shadow:0 15px 34px color-mix(in srgb,var(--accent) 11%,transparent),0 0 0 1px color-mix(in srgb,var(--accent) 9%,transparent); }
.autopilot-plan-card.recommended::before { content:""; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg,transparent,var(--accent),var(--success),transparent); }
.autopilot-plan-card.active-plan { box-shadow:0 0 0 2px color-mix(in srgb,var(--success) 35%,transparent),0 16px 35px rgba(0,0,0,.14); }
.autopilot-plan-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.autopilot-plan-head > div:first-child { display:grid; gap:3px; }
.autopilot-plan-rank { width:fit-content; padding:3px 6px; border-radius:999px; background:var(--accent-soft); color:var(--accent-2); font-size:6.8px; font-weight:900; letter-spacing:.07em; }
.autopilot-plan-head h3 { margin:0; font-size:12px; }
.autopilot-plan-head small { color:var(--muted); font-size:8px; }
.autopilot-score { display:grid; place-items:center; align-content:center; width:58px; height:58px; border-radius:50%; background:radial-gradient(circle,var(--panel-solid) 54%,transparent 56%),conic-gradient(var(--accent) var(--score),color-mix(in srgb,var(--border) 70%,transparent) 0); box-shadow:0 0 24px color-mix(in srgb,var(--accent) 12%,transparent); }
.autopilot-score strong { font-size:14px; line-height:1; }
.autopilot-score small { color:var(--muted); font-size:6.5px; }
.autopilot-route { display:flex; align-items:center; gap:7px; overflow-x:auto; margin:13px 0; padding:11px 12px; border:1px solid var(--border); border-radius:12px; background:color-mix(in srgb,var(--panel-alt) 82%,transparent); scrollbar-width:thin; }
.autopilot-route-stop { display:inline-flex; align-items:center; gap:5px; flex:0 0 auto; padding:5px 8px; border:1px solid var(--border); border-radius:9px; background:var(--panel-solid); font-size:8px; }
.autopilot-route-stop.destination { border-color:color-mix(in srgb,var(--success) 45%,var(--border)); color:color-mix(in srgb,var(--success) 75%,var(--text) 25%); }
.autopilot-route-stop .country-flag { width:17px; height:12px; }
.autopilot-route-stop i { color:var(--accent); font-size:8px; font-style:normal; }
.autopilot-route > em { display:grid; place-items:center; color:var(--muted); }
.autopilot-route > em svg { width:12px; height:12px; }
.autopilot-plan-stats { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:7px; margin-bottom:11px; }
.autopilot-plan-stats span { display:grid; gap:3px; padding:9px; border:1px solid var(--border); border-radius:10px; background:var(--panel-alt); }
.autopilot-plan-stats small { color:var(--muted); font-size:7px; }
.autopilot-plan-stats strong { font-size:10px; }
.autopilot-plan-stats .positive strong { color:var(--success); }
.autopilot-plan-stats .negative strong { color:var(--danger); }
.autopilot-leg-list { display:grid; gap:6px; }
.autopilot-leg { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; gap:9px; padding:9px; border:1px solid var(--border); border-radius:11px; background:color-mix(in srgb,var(--panel-alt) 78%,transparent); }
.autopilot-leg-number { display:grid; place-items:center; width:25px; height:25px; border-radius:8px; background:var(--accent-soft); color:var(--accent-2); font-size:8px; font-weight:900; }
.autopilot-leg > div:nth-child(2) { min-width:0; display:grid; gap:3px; }
.autopilot-leg small { color:var(--muted); font-size:7px; }
.autopilot-leg strong { display:flex; align-items:center; flex-wrap:wrap; gap:4px; font-size:9px; }
.autopilot-leg strong .country-flag { width:16px; height:11px; }
.autopilot-leg p { overflow:hidden; margin:0; color:var(--text-2); font-size:7.5px; text-overflow:ellipsis; white-space:nowrap; }
.autopilot-leg > b { color:var(--accent-2); font-size:9px; white-space:nowrap; }
.autopilot-leg-actions { display:flex; gap:5px; }
.autopilot-recommendation { display:flex; gap:9px; align-items:flex-start; margin-top:10px; padding:10px 11px; border:1px solid color-mix(in srgb,var(--accent) 26%,var(--border)); border-radius:11px; background:color-mix(in srgb,var(--accent) 6%,var(--panel-alt)); }
.autopilot-recommendation > span { display:grid; place-items:center; flex:0 0 auto; width:25px; height:25px; border-radius:8px; background:var(--accent-soft); color:var(--accent-2); }
.autopilot-recommendation svg { width:13px; height:13px; }
.autopilot-recommendation p { margin:0; color:var(--text-2); font-size:8px; line-height:1.55; }
.autopilot-plan-actions { display:flex; justify-content:flex-end; margin-top:10px; }
.autopilot-no-result { display:flex; align-items:center; justify-content:center; gap:12px; min-height:150px; padding:24px; border:1px dashed var(--border-strong); border-radius:14px; background:var(--panel-alt); }
.autopilot-no-result > svg { width:34px; height:34px; color:var(--muted); }
.autopilot-no-result strong { display:block; margin-bottom:4px; }
.autopilot-no-result p { margin:0; color:var(--muted); font-size:8.5px; }
.autopilot-disclaimer { display:flex; align-items:flex-start; gap:10px; margin-top:12px; padding:11px 13px; border:1px solid var(--border); border-radius:12px; background:var(--panel-alt); color:var(--muted); }
.autopilot-disclaimer > span { color:var(--accent-2); }
.autopilot-disclaimer svg { width:15px; height:15px; }
.autopilot-disclaimer p { margin:0; font-size:8px; line-height:1.55; }
.autopilot-disclaimer strong { color:var(--text-2); }
.feature-autopilot { --feature-tone:#27b6ff; }

@media (max-width:1100px) {
  .autopilot-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .autopilot-plan-stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .autopilot-hero { grid-template-columns:auto minmax(0,1fr); }
  .autopilot-hero-example { grid-column:1 / -1; }
}
@media (max-width:720px) {
  .autopilot-hero { grid-template-columns:1fr; }
  .autopilot-orbit { width:64px; height:64px; }
  .autopilot-fields { grid-template-columns:1fr; }
  .autopilot-form-footer,.autopilot-form-head,.autopilot-results-head,.autopilot-active-strip { align-items:stretch; flex-direction:column; }
  .autopilot-plan-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .autopilot-leg { grid-template-columns:auto minmax(0,1fr); }
  .autopilot-leg > b,.autopilot-leg-actions { grid-column:2; justify-self:start; }
}

/* K-Line — administrátorské Statistiky účtů */
.account-stat-hero { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(320px,.75fr); gap: 16px; align-items: center; margin-bottom: 14px; padding: 20px; border: 1px solid color-mix(in srgb,var(--accent) 25%,var(--border)); border-radius: 18px; background: radial-gradient(circle at 10% 10%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 34%), linear-gradient(145deg,var(--panel-solid),var(--panel-alt)); box-shadow: 0 18px 42px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.035); }
.account-stat-hero h3 { margin: 3px 0 7px; font-size: clamp(20px,2vw,28px); letter-spacing: -.025em; }
.account-stat-hero p { margin: 0; color: var(--muted); line-height: 1.55; }
.account-stat-hero p strong { color: var(--text); }
.account-stat-hero-numbers { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.account-stat-hero-numbers span { display: grid; gap: 5px; padding: 14px 10px; border: 1px solid var(--border); border-radius: 13px; background: color-mix(in srgb,var(--panel-alt) 91%,transparent); text-align: center; }
.account-stat-hero-numbers small { color: var(--muted); font-size: 8.5px; font-weight: 750; }
.account-stat-hero-numbers strong { font-size: 22px; line-height: 1; }
.account-stat-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.account-stat-card { position: relative; overflow: hidden; padding: 16px; border: 1px solid var(--border); border-radius: 17px; background: linear-gradient(155deg,color-mix(in srgb,var(--panel-solid) 97%,transparent),color-mix(in srgb,var(--panel-alt) 93%,transparent)); box-shadow: 0 15px 36px rgba(0,0,0,.13); }
.account-stat-card::before { content: ""; position: absolute; inset: 0 auto auto 0; width: 100%; height: 2px; background: linear-gradient(90deg,transparent,var(--accent),transparent); opacity: .65; }
.account-stat-card.tone-cyan::before { filter: hue-rotate(22deg); }
.account-stat-card.tone-violet::before { filter: hue-rotate(95deg); }
.account-stat-card-head { display: grid; grid-template-columns: 36px minmax(0,1fr) auto; gap: 9px; align-items: center; }
.account-stat-card-head > div { min-width: 0; }
.account-stat-card-head small { display: block; color: var(--muted); font-size: 7.5px; font-weight: 850; letter-spacing: .08em; }
.account-stat-card-head h3 { margin: 2px 0 0; font-size: 14px; }
.account-stat-card-icon { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid color-mix(in srgb,var(--accent) 35%,var(--border)); border-radius: 11px; background: var(--accent-soft); color: var(--accent-2); }
.account-stat-card-icon svg { width: 17px; height: 17px; }
.account-active-rate { padding: 5px 7px; border: 1px solid color-mix(in srgb,var(--success) 30%,var(--border)); border-radius: 999px; background: color-mix(in srgb,var(--success) 10%,transparent); color: var(--success); font-size: 8px; font-weight: 850; white-space: nowrap; }
.account-stat-main { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; margin: 14px 0; }
.account-stat-main span { display: grid; gap: 4px; min-width: 0; padding: 10px 8px; border: 1px solid var(--border); border-radius: 11px; background: color-mix(in srgb,var(--panel-alt) 88%,transparent); }
.account-stat-main small { color: var(--muted); font-size: 7.5px; line-height: 1.25; }
.account-stat-main strong { font-size: 18px; line-height: 1; }
.account-plan-breakdown { display: grid; gap: 9px; }
.account-plan-row { display: grid; gap: 5px; }
.account-plan-row > div:first-child { display: grid; grid-template-columns: 8px minmax(0,1fr) auto; gap: 7px; align-items: center; }
.account-plan-row strong { font-size: 8.5px; }
.account-plan-row b { font-size: 10px; }
.account-plan-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--muted); box-shadow: 0 0 8px currentColor; }
.account-plan-dot.lite { background: color-mix(in srgb,var(--accent) 65%,white); }
.account-plan-dot.standard { background: var(--accent); }
.account-plan-dot.gold { background: var(--warning); }
.account-plan-track, .account-subscription-track { overflow: hidden; height: 5px; border-radius: 999px; background: color-mix(in srgb,var(--muted) 14%,transparent); }
.account-plan-track i, .account-subscription-track i { display: block; width: 0; height: 100%; border-radius: inherit; background: var(--accent); box-shadow: 0 0 12px color-mix(in srgb,var(--accent) 40%,transparent); transition: width 350ms ease; }
.account-plan-track i.lite { opacity: .62; }
.account-plan-track i.gold { background: var(--warning); }
.account-subscription-summary { margin-top: 12px; padding: 16px; border: 1px solid var(--border); border-radius: 17px; background: var(--panel); box-shadow: 0 14px 34px rgba(0,0,0,.11); }
.account-subscription-summary .panel-head > span { color: var(--muted); font-size: 9px; font-weight: 750; }
.account-subscription-bars { display: grid; gap: 11px; margin-top: 13px; }
.account-subscription-bar { display: grid; gap: 6px; }
.account-subscription-bar > div:first-child { display: grid; grid-template-columns: 110px minmax(0,1fr) auto; gap: 10px; align-items: center; }
.account-subscription-bar strong { font-size: 9.5px; }
.account-subscription-bar span { color: var(--muted); font-size: 8.5px; }
.account-subscription-bar b { font-size: 9px; }
.account-subscription-bar.gold .account-subscription-track i { background: var(--warning); }
.account-subscription-bar.lite .account-subscription-track i { opacity: .65; }
.account-stat-note { display: flex; align-items: flex-start; gap: 9px; margin-top: 12px; padding: 11px 13px; border: 1px solid color-mix(in srgb,var(--accent) 18%,var(--border)); border-radius: 12px; background: color-mix(in srgb,var(--accent) 5%,var(--panel-alt)); color: var(--muted); }
.account-stat-note > span { display: grid; place-items: center; flex: 0 0 auto; width: 24px; height: 24px; border-radius: 8px; background: var(--accent-soft); color: var(--accent-2); }
.account-stat-note svg { width: 12px; height: 12px; }
.account-stat-note p { margin: 1px 0 0; font-size: 8.5px; line-height: 1.55; }
.account-stat-note strong { color: var(--text); }
@media (max-width: 1050px) { .account-stat-grid { grid-template-columns: 1fr; } .account-stat-hero { grid-template-columns: 1fr; } }
@media (max-width: 680px) { .account-stat-hero-numbers, .account-stat-main { grid-template-columns: 1fr 1fr; } .account-stat-hero-numbers span:last-child, .account-stat-main span:last-child { grid-column: 1 / -1; } .account-subscription-bar > div:first-child { grid-template-columns: 85px minmax(0,1fr) auto; } }

/* K-Line Autopilot — komunikace plánu a potvrzování jednotlivých přeprav. */
.autopilot-active-actions { position: relative; z-index: 2; display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.autopilot-active-actions .button { min-height: 35px; }
.autopilot-active-actions svg { width: 13px; height: 13px; }
.autopilot-confirm-status { display: inline-flex; align-items: center; gap: 6px; width: fit-content; padding: 5px 8px; border: 1px solid var(--border); border-radius: 999px; background: var(--panel-alt); color: var(--muted); font-size: 7.6px; font-weight: 900; white-space: nowrap; }
.autopilot-confirm-status i { width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 9px currentColor; }
.autopilot-confirm-status.status-accepted { border-color: color-mix(in srgb,var(--success) 45%,var(--border)); background: color-mix(in srgb,var(--success) 10%,var(--panel-alt)); color: color-mix(in srgb,var(--success) 78%,white 22%); }
.autopilot-confirm-status.status-pending { border-color: color-mix(in srgb,var(--warning) 42%,var(--border)); background: color-mix(in srgb,var(--warning) 9%,var(--panel-alt)); color: color-mix(in srgb,var(--warning) 76%,white 24%); }
.autopilot-confirm-status.status-rejected { border-color: color-mix(in srgb,var(--danger) 45%,var(--border)); background: color-mix(in srgb,var(--danger) 9%,var(--panel-alt)); color: color-mix(in srgb,var(--danger) 75%,white 25%); }
.autopilot-confirm-status.status-unsent { color: var(--muted); }

.autopilot-communication { display: grid; gap: 13px; min-width: 0; }
.autopilot-communication-summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px; border: 1px solid color-mix(in srgb,var(--accent) 28%,var(--border)); border-radius: 14px; background: radial-gradient(circle at 8% 20%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 36%),var(--panel-alt); }
.autopilot-communication-summary > div { display: grid; gap: 3px; }
.autopilot-communication-summary small { color: var(--accent-2); font-size: 7.5px; font-weight: 900; letter-spacing: .09em; }
.autopilot-communication-summary strong { font-size: 13px; }
.autopilot-communication-summary p { margin: 0; color: var(--muted); font-size: 8.5px; line-height: 1.5; }
.autopilot-communication-summary > span { padding: 7px 9px; border: 1px solid color-mix(in srgb,var(--warning) 36%,var(--border)); border-radius: 999px; color: var(--warning); background: color-mix(in srgb,var(--warning) 8%,transparent); font-size: 7.5px; font-weight: 900; white-space: nowrap; }
.autopilot-communication-summary > span.all-confirmed { border-color: color-mix(in srgb,var(--success) 45%,var(--border)); color: var(--success); background: color-mix(in srgb,var(--success) 9%,transparent); box-shadow: 0 0 20px color-mix(in srgb,var(--success) 10%,transparent); }
.autopilot-communication-list { display: grid; gap: 9px; }
.autopilot-communication-leg { display: grid; grid-template-columns: 28px minmax(0,1fr) auto minmax(210px,auto); align-items: center; gap: 10px; padding: 11px; border: 1px solid var(--border); border-radius: 13px; background: var(--panel); transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease; }
.autopilot-communication-leg:hover { transform: translateY(-1px); border-color: color-mix(in srgb,var(--accent) 32%,var(--border)); box-shadow: 0 12px 26px color-mix(in srgb,var(--accent) 7%,transparent); }
.autopilot-communication-leg.status-accepted { border-color: color-mix(in srgb,var(--success) 30%,var(--border)); }
.autopilot-communication-leg.status-rejected { border-color: color-mix(in srgb,var(--danger) 35%,var(--border)); }
.autopilot-communication-main { min-width: 0; }
.autopilot-communication-main small { display: block; margin-bottom: 3px; color: var(--muted); font-size: 7.7px; }
.autopilot-communication-main strong { display: flex; align-items: center; gap: 5px; min-width: 0; font-size: 10px; }
.autopilot-communication-main strong .country-flag { width: 18px; height: 13px; }
.autopilot-communication-main p { margin: 4px 0 0; color: var(--text-2); font-size: 8px; }
.autopilot-communication-actions { display: flex; justify-content: flex-end; align-items: center; gap: 6px; flex-wrap: wrap; }
.autopilot-communication-actions .button { min-height: 31px; padding: 6px 10px; font-size: 8px; }
.autopilot-communication-actions .button:disabled,.autopilot-communication-actions .mini-button:disabled { opacity: .48; cursor: not-allowed; }

.autopilot-transport-plan { margin-bottom: 14px; overflow: hidden; border: 1px solid color-mix(in srgb,var(--accent) 35%,var(--border)); border-radius: 17px; background: radial-gradient(circle at 8% 5%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 32%),linear-gradient(145deg,var(--panel),var(--panel-alt)); box-shadow: 0 14px 34px rgba(0,0,0,.11),0 0 24px color-mix(in srgb,var(--accent) 7%,transparent); }
.autopilot-transport-plan.all-confirmed { border-color: color-mix(in srgb,var(--success) 42%,var(--border)); box-shadow: 0 14px 34px rgba(0,0,0,.11),0 0 30px color-mix(in srgb,var(--success) 9%,transparent); }
.autopilot-transport-plan-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 15px; border-bottom: 1px solid var(--border); }
.autopilot-transport-plan-head > div:first-child { display: grid; gap: 4px; }
.autopilot-transport-plan-head h3 { margin: 0; font-size: 13px; }
.autopilot-transport-plan-head p { margin: 0; color: var(--muted); font-size: 8.5px; }
.autopilot-transport-plan-head-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.autopilot-plan-overall { display: inline-flex; align-items: center; min-height: 30px; padding: 0 9px; border: 1px solid var(--border); border-radius: 999px; font-size: 7.5px; font-weight: 950; letter-spacing: .04em; }
.autopilot-plan-overall.pending { color: var(--warning); border-color: color-mix(in srgb,var(--warning) 38%,var(--border)); background: color-mix(in srgb,var(--warning) 8%,transparent); }
.autopilot-plan-overall.confirmed { color: var(--success); border-color: color-mix(in srgb,var(--success) 42%,var(--border)); background: color-mix(in srgb,var(--success) 9%,transparent); }
.autopilot-plan-overall.rejected { color: var(--danger); border-color: color-mix(in srgb,var(--danger) 40%,var(--border)); background: color-mix(in srgb,var(--danger) 8%,transparent); }
.autopilot-transport-steps { display: grid; }
.autopilot-transport-steps > article { display: grid; grid-template-columns: 28px minmax(0,1fr) auto auto; align-items: center; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--border); }
.autopilot-transport-steps > article:last-child { border-bottom: 0; }
.autopilot-transport-steps > article > div:nth-child(2) { min-width: 0; }
.autopilot-transport-steps small { display: block; margin-bottom: 2px; color: var(--muted); font-size: 7.5px; }
.autopilot-transport-steps strong { display: flex; align-items: center; gap: 5px; font-size: 9.5px; }
.autopilot-transport-steps strong .country-flag { width: 17px; height: 12px; }
.autopilot-transport-steps p { margin: 3px 0 0; color: var(--text-2); font-size: 7.8px; }
.autopilot-step-actions { display: flex; align-items: center; justify-content: flex-end; gap: 6px; }

.autopilot-chat-request { width: min(440px,72vw); padding: 12px; border: 1px solid color-mix(in srgb,var(--accent) 38%,var(--border)); border-radius: 14px; background: linear-gradient(145deg,color-mix(in srgb,var(--accent) 9%,var(--panel-alt)),var(--panel-solid)); box-shadow: 0 12px 28px rgba(0,0,0,.17),0 0 20px color-mix(in srgb,var(--accent) 7%,transparent); }
.autopilot-chat-request.status-accepted { border-color: color-mix(in srgb,var(--success) 45%,var(--border)); }
.autopilot-chat-request.status-rejected { border-color: color-mix(in srgb,var(--danger) 45%,var(--border)); }
.autopilot-chat-request-head { display: flex; align-items: center; gap: 9px; }
.autopilot-chat-request-head > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: var(--accent-soft); color: var(--accent-2); }
.autopilot-chat-request-head svg { width: 16px; height: 16px; }
.autopilot-chat-request-head > div { display: grid; gap: 1px; }
.autopilot-chat-request-head small { color: var(--accent-2); font-size: 7px; font-weight: 950; letter-spacing: .08em; }
.autopilot-chat-request-head strong { font-size: 10px; }
.autopilot-chat-route { display: flex; align-items: center; gap: 7px; margin: 10px 0 7px; padding: 8px 9px; border: 1px solid var(--border); border-radius: 10px; background: color-mix(in srgb,var(--panel-solid) 76%,transparent); font-size: 9px; }
.autopilot-chat-route span { color: var(--accent-2); }
.autopilot-chat-request > p { margin: 0; color: var(--text-2); font-size: 8.5px; line-height: 1.55; }
.autopilot-chat-request-meta { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin-top: 8px; }
.autopilot-chat-request-meta span,.autopilot-chat-request-meta strong { padding: 4px 6px; border-radius: 7px; background: var(--panel-alt); color: var(--muted); font-size: 7.4px; }
.autopilot-chat-request-meta strong { color: var(--text); }
.autopilot-chat-request .offer-actions { margin-top: 10px; }
.autopilot-chat-decision { margin-top: 9px; padding: 7px 9px; border-radius: 9px; background: var(--panel-alt); color: var(--warning); font-size: 8px; font-weight: 850; }
.autopilot-chat-decision.status-accepted { color: var(--success); background: color-mix(in srgb,var(--success) 8%,var(--panel-alt)); }
.autopilot-chat-decision.status-rejected { color: var(--danger); background: color-mix(in srgb,var(--danger) 8%,var(--panel-alt)); }

@media (max-width: 900px) {
  .autopilot-communication-leg { grid-template-columns: 28px minmax(0,1fr) auto; }
  .autopilot-communication-actions { grid-column: 2 / -1; justify-content: flex-start; }
  .autopilot-transport-plan-head { align-items: flex-start; flex-direction: column; }
  .autopilot-transport-plan-head-actions { justify-content: flex-start; }
  .autopilot-transport-steps > article { grid-template-columns: 28px minmax(0,1fr) auto; }
  .autopilot-step-actions { grid-column: 2 / -1; justify-content: flex-start; }
}

@media (max-width: 620px) {
  .autopilot-communication-summary { align-items: flex-start; flex-direction: column; }
  .autopilot-communication-leg { grid-template-columns: 26px minmax(0,1fr); }
  .autopilot-communication-leg > .autopilot-confirm-status { grid-column: 2; }
  .autopilot-communication-actions { grid-column: 2; }
  .autopilot-active-actions { justify-content: flex-start; }
  .autopilot-transport-steps > article { grid-template-columns: 26px minmax(0,1fr); }
  .autopilot-transport-steps > article > .autopilot-confirm-status,.autopilot-step-actions { grid-column: 2; }
  .autopilot-chat-request { width: min(100%,82vw); }
}

/* K-Line — administrátor / Statistiky účtů: provoz platformy */
.platform-operation-section { margin-top: 14px; padding: 17px; border: 1px solid var(--border); border-radius: 18px; background: linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel-alt) 92%,transparent)); box-shadow: 0 16px 38px rgba(0,0,0,.12); }
.platform-operation-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.platform-operation-head h3 { margin: 3px 0 5px; font-size: 15px; }
.platform-operation-head p { margin: 0; color: var(--muted); font-size: 9.5px; line-height: 1.5; }
.platform-operation-completion { display: grid; min-width: 180px; gap: 3px; padding: 12px 14px; border: 1px solid color-mix(in srgb,var(--success) 28%,var(--border)); border-radius: 14px; background: color-mix(in srgb,var(--success) 8%,var(--panel-alt)); text-align: right; }
.platform-operation-completion small { color: var(--muted); font-size: 8.5px; font-weight: 750; }
.platform-operation-completion strong { color: var(--success); font-size: 24px; line-height: 1; }
.platform-operation-completion span { color: var(--text-2); font-size: 8.5px; }
.platform-operation-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; }
.platform-operation-card { display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 10px; align-items: start; min-width: 0; padding: 12px; border: 1px solid var(--border); border-radius: 14px; background: color-mix(in srgb,var(--panel-alt) 94%,transparent); box-shadow: inset 0 1px 0 rgba(255,255,255,.025); transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease; }
.platform-operation-card:hover { transform: translateY(-2px); border-color: color-mix(in srgb,var(--accent) 36%,var(--border)); box-shadow: 0 10px 24px color-mix(in srgb,var(--accent) 9%,transparent); }
.platform-operation-icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: var(--accent-soft); color: var(--accent-2); font-size: 15px; font-weight: 900; }
.platform-operation-card > div { min-width: 0; }
.platform-operation-card small { display: block; margin-bottom: 3px; color: var(--muted); font-size: 8.5px; font-weight: 800; letter-spacing: .035em; text-transform: uppercase; }
.platform-operation-card strong { display: block; margin-bottom: 4px; color: var(--text); font-size: 22px; line-height: 1; }
.platform-operation-card p { margin: 0; color: var(--text-2); font-size: 8.5px; line-height: 1.45; }
.platform-operation-card.tone-green .platform-operation-icon { background: color-mix(in srgb,var(--success) 13%,transparent); color: var(--success); }
.platform-operation-card.tone-cyan .platform-operation-icon { background: color-mix(in srgb,#34d8ea 13%,transparent); color: #65e7f3; }
.platform-operation-card.tone-orange .platform-operation-icon { background: color-mix(in srgb,var(--warning) 14%,transparent); color: var(--warning); }
.platform-operation-card.tone-red .platform-operation-icon { background: color-mix(in srgb,var(--danger) 14%,transparent); color: #ff8d97; }
.platform-operation-card.tone-violet .platform-operation-icon { background: color-mix(in srgb,#9b7cff 15%,transparent); color: #b9a7ff; }
@media (max-width: 1050px) { .platform-operation-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 680px) { .platform-operation-head { align-items: stretch; flex-direction: column; } .platform-operation-completion { min-width: 0; text-align: left; } .platform-operation-grid { grid-template-columns: 1fr; } }

/* K-Line Finance — administrátorský finanční přehled */
.finance-nav-item svg { color: var(--success); }
.finance-hero { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(220px,.55fr); gap: 16px; align-items: center; margin-bottom: 14px; padding: 20px; border: 1px solid color-mix(in srgb,var(--success) 28%,var(--border)); border-radius: 18px; background: radial-gradient(circle at 82% 18%,color-mix(in srgb,var(--success) 12%,transparent),transparent 34%), linear-gradient(145deg,color-mix(in srgb,var(--panel) 96%,#06261c 4%),var(--panel-alt)); box-shadow: 0 18px 44px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.04); }
.finance-hero h3 { margin: 5px 0 7px; font-size: 18px; }
.finance-hero p { margin: 0; color: var(--text-2); font-size: 10px; line-height: 1.6; }
.finance-period-control { display: grid; gap: 8px; padding: 13px; border: 1px solid var(--border); border-radius: 13px; background: color-mix(in srgb,var(--panel-solid) 78%,transparent); }
.finance-period-control label { display: grid; gap: 6px; color: var(--muted); font-size: 8.5px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.finance-period-control select { width: 100%; min-height: 36px; padding: 0 10px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); color: var(--text); font: inherit; font-size: 9.5px; text-transform: none; letter-spacing: 0; }
.finance-period-control > span { color: var(--muted); font-size: 8.5px; }
.finance-plan-section, .finance-panel { margin-bottom: 14px; padding: 15px; border: 1px solid var(--border); border-radius: 16px; background: var(--panel); box-shadow: 0 13px 32px rgba(0,0,0,.09); }
.finance-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.finance-section-head h3 { margin: 3px 0 0; font-size: 13px; }
.finance-section-head > span { color: var(--muted); font-size: 8.5px; }
.finance-plan-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.finance-plan-card { position: relative; overflow: hidden; min-width: 0; padding: 14px; border: 1px solid var(--border); border-radius: 14px; background: var(--panel-alt); }
.finance-plan-card::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: var(--accent); }
.finance-plan-card.lite::before { background: #77a7dc; }
.finance-plan-card.standard::before { background: #38a6e9; }
.finance-plan-card.gold::before { background: #d4ad55; }
.finance-plan-card-head { display: flex; justify-content: space-between; gap: 8px; align-items: center; }
.finance-plan-card-head span { font-size: 10px; font-weight: 900; }
.finance-plan-card-head b { color: var(--muted); font-size: 8px; }
.finance-plan-card > strong { display: block; margin-top: 10px; font-size: 17px; letter-spacing: -.02em; }
.finance-plan-card > strong small { color: var(--muted); font-size: 8px; font-weight: 700; }
.finance-plan-card p { margin: 5px 0 10px; color: var(--text-2); font-size: 8.5px; line-height: 1.45; }
.finance-plan-meter { height: 3px; overflow: hidden; border-radius: 99px; background: var(--border); }
.finance-plan-meter i { display: block; height: 100%; border-radius: inherit; background: var(--accent); opacity: .75; }
.finance-summary-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px; margin-bottom: 14px; }
.finance-summary-card { min-width: 0; min-height: 112px; padding: 13px; border: 1px solid var(--border); border-radius: 14px; background: var(--panel); box-shadow: 0 10px 26px rgba(0,0,0,.08); }
.finance-summary-card > small { display: block; color: var(--muted); font-size: 8px; font-weight: 850; text-transform: uppercase; letter-spacing: .04em; }
.finance-summary-card > strong { display: block; margin: 7px 0 5px; font-size: 15px; line-height: 1.15; overflow-wrap: anywhere; }
.finance-summary-card p { margin: 0; color: var(--text-2); font-size: 8.2px; line-height: 1.5; }
.finance-summary-card.tone-green { border-color: color-mix(in srgb,var(--success) 30%,var(--border)); background: color-mix(in srgb,var(--success) 5%,var(--panel)); }
.finance-summary-card.tone-red { border-color: color-mix(in srgb,var(--danger) 28%,var(--border)); background: color-mix(in srgb,var(--danger) 5%,var(--panel)); }
.finance-summary-card.tone-orange { border-color: color-mix(in srgb,var(--warning) 30%,var(--border)); background: color-mix(in srgb,var(--warning) 5%,var(--panel)); }
.finance-summary-card.tone-cyan { border-color: color-mix(in srgb,#35bfe7 28%,var(--border)); }
.finance-summary-card.tone-violet { border-color: color-mix(in srgb,#9575de 28%,var(--border)); }
.finance-two-column { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(270px,.75fr); gap: 12px; align-items: start; }
.finance-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.finance-form-grid label:not(.finance-check) { display: grid; gap: 5px; min-width: 0; }
.finance-form-grid label > span, .finance-price-list label > span { color: var(--muted); font-size: 8.5px; font-weight: 800; }
.finance-form-grid input, .finance-form-grid select, .finance-form-grid textarea, .finance-price-list input { width: 100%; min-width: 0; min-height: 36px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); color: var(--text); font: inherit; font-size: 9.5px; outline: none; }
.finance-form-grid textarea { min-height: 82px; resize: vertical; }
.finance-form-grid input:focus, .finance-form-grid select:focus, .finance-form-grid textarea:focus, .finance-price-list input:focus { border-color: color-mix(in srgb,var(--accent) 55%,var(--border)); box-shadow: 0 0 0 3px var(--accent-soft); }
.finance-span-2 { grid-column: 1 / -1; }
.finance-money-input, .finance-price-list label > div { display: grid; grid-template-columns: 1fr auto; align-items: center; overflow: hidden; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); }
.finance-money-input input, .finance-price-list label > div input { border: 0; border-radius: 0; background: transparent; box-shadow: none !important; }
.finance-money-input b, .finance-price-list label > div b { padding: 0 10px; color: var(--muted); font-size: 8.5px; }
.finance-check { display: flex; align-items: center; gap: 9px; min-height: 42px; padding: 8px 10px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); }
.finance-check input { width: 16px; height: 16px; accent-color: var(--accent); }
.finance-check span { display: grid; gap: 1px; }
.finance-check strong { font-size: 8.8px; }
.finance-check small { color: var(--muted); font-size: 7.5px; line-height: 1.4; }
.finance-upload { padding: 10px; border: 1px dashed color-mix(in srgb,var(--accent) 38%,var(--border)); border-radius: 11px; background: var(--accent-soft); }
.finance-upload input { padding: 6px; background: transparent; }
.finance-upload small { color: var(--muted); font-size: 7.5px; }
.finance-form-actions { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 12px; padding-top: 11px; border-top: 1px solid var(--border); }
.finance-form-actions > span { color: var(--muted); font-size: 7.8px; line-height: 1.4; }
.finance-price-list { display: grid; gap: 9px; }
.finance-price-list label { display: grid; gap: 5px; }
.finance-price-list label.lite > div { border-color: color-mix(in srgb,#77a7dc 35%,var(--border)); }
.finance-price-list label.standard > div { border-color: color-mix(in srgb,#38a6e9 35%,var(--border)); }
.finance-price-list label.gold > div { border-color: color-mix(in srgb,#d4ad55 35%,var(--border)); }
.finance-settings-check { margin-top: 11px; }
.finance-ledger-panel { margin-top: 2px; }
.finance-ledger { display: grid; gap: 7px; }
.finance-ledger-row { display: grid; grid-template-columns: 115px minmax(0,1fr) 135px auto; gap: 12px; align-items: center; padding: 11px; border: 1px solid var(--border); border-radius: 12px; background: var(--panel-alt); }
.finance-ledger-row.expense { border-left: 3px solid var(--danger); }
.finance-ledger-row.development { border-left: 3px solid #8a6ddd; }
.finance-ledger-row.income { border-left: 3px solid var(--success); }
.finance-ledger-row.document { border-left: 3px solid var(--accent); }
.finance-ledger-type { display: grid; gap: 3px; }
.finance-ledger-type span { font-size: 8.5px; font-weight: 900; }
.finance-ledger-type small { color: var(--muted); font-size: 7.5px; }
.finance-ledger-main { min-width: 0; }
.finance-ledger-main > strong { display: block; overflow: hidden; font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
.finance-ledger-main > small { color: var(--muted); font-size: 7.8px; }
.finance-ledger-main p { margin: 4px 0 0; color: var(--text-2); font-size: 8px; line-height: 1.4; }
.finance-ledger-money { display: grid; justify-items: end; gap: 2px; text-align: right; }
.finance-ledger-money strong { font-size: 10px; }
.finance-ledger-money small { color: var(--muted); font-size: 7.5px; }
.finance-ledger-money span { color: var(--success); font-size: 7px; font-weight: 900; text-transform: uppercase; }
.finance-file-list { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 6px; }
.finance-file-chip { display: inline-flex; align-items: center; gap: 4px; max-width: 190px; padding: 5px 7px; border: 1px solid var(--border); border-radius: 8px; background: var(--panel); color: var(--accent-2); font-size: 7.5px; font-weight: 800; text-decoration: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.finance-file-chip svg { flex: 0 0 auto; width: 10px; height: 10px; }
.finance-empty { display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 120px; padding: 20px; border: 1px dashed var(--border); border-radius: 13px; color: var(--muted); text-align: left; }
.finance-empty > svg { width: 28px; height: 28px; }
.finance-empty strong { display: block; color: var(--text); font-size: 10px; }
.finance-empty p { margin: 3px 0 0; font-size: 8px; }
.finance-disclaimer { display: flex; align-items: flex-start; gap: 9px; padding: 11px 13px; border: 1px solid color-mix(in srgb,var(--warning) 24%,var(--border)); border-radius: 12px; background: color-mix(in srgb,var(--warning) 5%,var(--panel)); }
.finance-disclaimer svg { flex: 0 0 auto; width: 15px; height: 15px; color: var(--warning); }
.finance-disclaimer p { margin: 0; color: var(--text-2); font-size: 8px; line-height: 1.5; }

@media (max-width: 1100px) {
  .finance-summary-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .finance-two-column { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .finance-hero, .finance-plan-grid { grid-template-columns: 1fr; }
  .finance-form-grid { grid-template-columns: 1fr; }
  .finance-span-2 { grid-column: auto; }
  .finance-ledger-row { grid-template-columns: 1fr auto; }
  .finance-ledger-main { grid-column: 1 / -1; grid-row: 2; }
  .finance-ledger-money { grid-column: 2; grid-row: 1; }
  .finance-ledger-row > .mini-button { grid-column: 2; grid-row: 2; justify-self: end; }
}
@media (max-width: 520px) {
  .finance-summary-grid { grid-template-columns: 1fr; }
  .finance-form-actions, .finance-section-head { align-items: stretch; flex-direction: column; }
}


/* K-Line Ultra jednoduchý režim — zachovává grafiku, ale omezuje rozhraní na základní pracovní kroky. */
.ultra-mode-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 146px; height: 38px; padding: 0 14px; border: 1px solid color-mix(in srgb,var(--accent) 38%,var(--border)); border-radius: 11px; background: color-mix(in srgb,var(--accent) 10%,var(--panel-solid)); color: var(--accent-2); box-shadow: inset 0 1px 0 rgba(255,255,255,.07),0 7px 20px color-mix(in srgb,var(--accent) 9%,transparent); cursor: pointer; font-size: 10px; font-weight: 900; letter-spacing: .01em; white-space: nowrap; transition: transform 160ms ease,border-color 160ms ease,box-shadow 160ms ease,background 160ms ease; }
.ultra-mode-toggle svg { width: 15px; height: 15px; flex: 0 0 auto; }
.ultra-mode-copy { display: flex; flex-direction: column; align-items: flex-start; gap: 1px; line-height: 1.05; }
.ultra-mode-copy small { font-size: 8px; font-weight: 700; opacity: .72; letter-spacing: .04em; text-transform: uppercase; }
.ultra-mode-copy strong { font-size: 10px; font-weight: 900; white-space: nowrap; }
.ultra-mode-toggle:hover { transform: translateY(-1px); border-color: color-mix(in srgb,var(--accent) 62%,var(--border)); box-shadow: 0 10px 28px color-mix(in srgb,var(--accent) 17%,transparent); }
.ultra-mode-toggle.active { border-color: color-mix(in srgb,var(--success) 55%,var(--border)); background: color-mix(in srgb,var(--success) 12%,var(--panel-solid)); color: color-mix(in srgb,var(--success) 84%,white 16%); }
.ultra-simple-home { display: none; }
.ultra-simple-admin-home { display: none; }
[data-ultra-hidden="true"] { display: none !important; }

html[data-ultra-simple="on"] .ultra-mode-toggle { min-width: 156px; height: 42px; font-size: 11px; }
html[data-ultra-simple="on"] .brand-radio,
html[data-ultra-simple="on"] .live-clock,
html[data-ultra-simple="on"] .offline-note,
html[data-ultra-simple="on"] .nav-label,
html[data-ultra-simple="on"] .nav-count,
html[data-ultra-simple="on"] .topbar .language-switch,
html[data-ultra-simple="on"] .topbar .sync-chip,
html[data-ultra-simple="on"] .topbar .plan-chip { display: none !important; }
html[data-ultra-simple="on"] .sidebar { padding-top: 15px; }
html[data-ultra-simple="on"] .brand { grid-template-columns: 44px minmax(0,1fr) auto; padding-bottom: 15px; }
html[data-ultra-simple="on"] .brand-mark { width: 44px; height: 44px; border-radius: 14px; font-size: 22px; }
html[data-ultra-simple="on"] .brand-copy strong { font-size: 17px; }
html[data-ultra-simple="on"] .brand-copy span { font-size: 9px; }
html[data-ultra-simple="on"] .nav-list { gap: 7px; }
html[data-ultra-simple="on"] .nav-item { min-height: 52px; padding: 10px 12px; border-radius: 12px; font-size: 12px; font-weight: 850; }
html[data-ultra-simple="on"] .nav-item svg { width: 19px; height: 19px; }
html[data-ultra-simple="on"] .nav-item.active { box-shadow: inset 3px 0 0 var(--accent),0 8px 20px color-mix(in srgb,var(--accent) 10%,transparent); }
html[data-ultra-simple="on"] .sidebar-foot { padding-top: 15px; }
html[data-ultra-simple="on"] .verification-card { padding: 11px; }
html[data-ultra-simple="on"] .topbar { min-height: 70px; }
html[data-ultra-simple="on"] .topbar-left { gap: 13px; }
html[data-ultra-simple="on"] .topbar-left .eyebrow { display: none; }
html[data-ultra-simple="on"] #page-title { font-size: 19px; }
html[data-ultra-simple="on"] .topbar-center { max-width: 560px; }
html[data-ultra-simple="on"] .global-search { min-height: 43px; }
html[data-ultra-simple="on"] .global-search input { font-size: 11px; }
html[data-ultra-simple="on"] .profile-copy small { display: none; }
html[data-ultra-simple="on"] .profile-button { min-height: 44px; }

html[data-ultra-simple="on"] .welcome-row { align-items: center; margin-bottom: 14px; }
html[data-ultra-simple="on"] .welcome-row .welcome-actions { display: none; }
html[data-ultra-simple="on"] .welcome-row h2 { font-size: clamp(20px,2.3vw,28px); }
html[data-ultra-simple="on"] .welcome-copy { font-size: 11px; line-height: 1.6; }
html[data-ultra-simple="on"] #dashboard-view > .metrics-grid,
html[data-ultra-simple="on"] #dashboard-view > .dashboard-grid,
html[data-ultra-simple="on"] #dashboard-view > .dashboard-custom-section,
html[data-ultra-simple="on"] #dashboard-view > .advanced-dashboard { display: none !important; }
html[data-ultra-simple="on"] .ultra-simple-home { display: grid; gap: 14px; max-width: 1080px; margin: 0 auto; }
html[data-ultra-simple="on"] .ultra-simple-intro { display: flex; align-items: center; gap: 12px; padding: 15px 17px; border: 1px solid color-mix(in srgb,var(--accent) 30%,var(--border)); border-radius: 15px; background: color-mix(in srgb,var(--panel) 94%,var(--accent) 6%); box-shadow: 0 15px 38px rgba(0,0,0,.12); }
html[data-ultra-simple="on"] .ultra-simple-intro > span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 13px; background: var(--accent-soft); color: var(--accent-2); }
html[data-ultra-simple="on"] .ultra-simple-intro svg { width: 20px; height: 20px; }
html[data-ultra-simple="on"] .ultra-simple-intro div { display: grid; gap: 3px; }
html[data-ultra-simple="on"] .ultra-simple-intro strong { font-size: 17px; }
html[data-ultra-simple="on"] .ultra-simple-intro small { color: var(--text-2); font-size: 11px; }
html[data-ultra-simple="on"] .ultra-simple-actions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
html[data-ultra-simple="on"] .ultra-action-card { position: relative; display: grid; grid-template-columns: 42px minmax(0,1fr); grid-template-rows: auto auto; align-items: center; column-gap: 12px; row-gap: 3px; min-height: 112px; padding: 16px; border: 1px solid var(--border-strong); border-radius: 16px; background: color-mix(in srgb,var(--panel-solid) 94%,var(--accent) 6%); color: var(--text); text-align: left; cursor: pointer; box-shadow: 0 12px 30px rgba(0,0,0,.12); transition: transform 160ms ease,border-color 160ms ease,box-shadow 160ms ease; }
html[data-ultra-simple="on"] .ultra-action-card:hover { transform: translateY(-2px); border-color: color-mix(in srgb,var(--accent) 50%,var(--border)); box-shadow: 0 16px 34px color-mix(in srgb,var(--accent) 13%,rgba(0,0,0,.12)); }
html[data-ultra-simple="on"] .ultra-action-card > svg { grid-row: 1 / 3; display: block; width: 27px; height: 27px; padding: 7px; box-sizing: content-box; border-radius: 13px; background: var(--accent-soft); color: var(--accent-2); }
html[data-ultra-simple="on"] .ultra-action-card strong { align-self: end; font-size: 14px; }
html[data-ultra-simple="on"] .ultra-action-card small { align-self: start; color: var(--text-2); font-size: 10px; line-height: 1.45; }
html[data-ultra-simple="on"] .ultra-step { position: absolute; top: 8px; right: 9px; display: grid; place-items: center; min-width: 24px; height: 24px; padding: 0 5px; border-radius: 99px; background: var(--panel-alt); color: var(--muted); font-size: 9px; font-weight: 900; }
html[data-role="founder"][data-ultra-simple="on"] .ultra-simple-user-home { display: none !important; }
html[data-role="founder"][data-ultra-simple="on"] .ultra-simple-admin-home { display: grid; }
html:not([data-role="founder"])[data-ultra-simple="on"] .ultra-simple-admin-home { display: none; }

/* Na pracovních seznamech schová Ultra režim nastavovací a analytické vrstvy, základní karty a důležité bezpečnostní výstrahy zůstávají. */
html[data-ultra-simple="on"] .filter-set-head,
html[data-ultra-simple="on"] .section-filters.configurable-filters,
html[data-ultra-simple="on"] .result-stat-strip,
html[data-ultra-simple="on"] .section-toolbar [data-action^="choose-"],
html[data-ultra-simple="on"] [data-action="kline-radar"],
html[data-ultra-simple="on"] [data-action="follow-up-loads"],
html[data-ultra-simple="on"] [data-action="transport-evidence-package"],
html[data-ultra-simple="on"] [data-action="loading-intel-feedback"] { display: none !important; }
html[data-ultra-simple="on"] .section-heading h2,
html[data-ultra-simple="on"] .section-heading h1 { font-size: clamp(20px,2.2vw,26px); }
html[data-ultra-simple="on"] .content-grid,
html[data-ultra-simple="on"] .profile-grid { gap: 13px; }
html[data-ultra-simple="on"] .button { min-height: 40px; font-size: 10.5px; font-weight: 850; }
html[data-ultra-simple="on"] .mini-button { min-height: 34px; font-size: 10px; }
html[data-ultra-simple="on"] .card-actions { gap: 8px; }

@media (max-width: 1120px) {
  html[data-ultra-simple="on"] .ultra-simple-actions { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 920px) {
  .ultra-mode-toggle { min-width: 132px; padding: 0 10px; }
  .sidebar-restore { display: grid; }
  .sidebar.open ~ .sidebar-overlay + .sidebar-restore { display: none; }
  html[data-ultra-simple="on"] .topbar-center { display: none; }
  html[data-ultra-simple="on"] .topbar-actions > :not(#notifications-button):not(#profile-button) { display: none !important; }
}
@media (max-width: 650px) {
  .ultra-mode-toggle { min-width: 0; width: 46px; padding: 0; }
  .ultra-mode-toggle .ultra-mode-copy { display: none; }
  html[data-ultra-simple="on"] .ultra-simple-actions { grid-template-columns: 1fr; }
  html[data-ultra-simple="on"] .ultra-action-card { min-height: 96px; }
}

/* v0.7.1 — tarify, 48h zkušební režim a schvalování změn předplatného */
.plan-trial-wrap { position: relative; display: inline-flex; align-items: center; }
.trial-countdown { position: absolute; z-index: 75; top: calc(100% + 5px); left: 50%; display: grid; min-width: 132px; padding: 7px 11px 8px; border: 1px solid color-mix(in srgb,var(--accent) 48%,var(--border)); border-radius: 11px; background: color-mix(in srgb,var(--panel-solid) 94%,transparent); box-shadow: 0 13px 34px rgba(0,0,0,.32),0 0 22px var(--accent-glow); text-align: center; transform: translateX(-50%); backdrop-filter: blur(16px); }
.trial-countdown[hidden] { display: none !important; }
.trial-countdown::before { content: ""; position: absolute; top: -5px; left: 50%; width: 9px; height: 9px; border-top: 1px solid color-mix(in srgb,var(--accent) 48%,var(--border)); border-left: 1px solid color-mix(in srgb,var(--accent) 48%,var(--border)); background: color-mix(in srgb,var(--panel-solid) 96%,transparent); transform: translateX(-50%) rotate(45deg); }
.trial-countdown span { color: var(--accent-2); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.trial-countdown strong { margin-top: 2px; color: var(--text); font-variant-numeric: tabular-nums; font-size: 14px; line-height: 1; letter-spacing: .04em; text-shadow: 0 0 16px var(--accent-glow); }
.trial-countdown strong small { color: var(--muted); font-size: 7px; font-weight: 800; letter-spacing: 0; }
.trial-countdown .trial-verifying { padding: 3px 0 1px; color: var(--muted); font-size: 9px; letter-spacing: 0; text-shadow: none; }
html[data-trial="active"] .plan-chip { border-color: color-mix(in srgb,var(--accent) 46%,var(--border)); box-shadow: 0 0 0 2px color-mix(in srgb,var(--accent) 9%,transparent); }

.registration-primary-actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }
.plan-compare-button { border-color: color-mix(in srgb,var(--accent) 30%,var(--border)); }

.plan-comparison-shell { min-height: 100vh; overflow-y: auto; background: radial-gradient(circle at 50% -15%,var(--accent-soft),transparent 40%),var(--bg); }
.plan-comparison-page { width: min(1540px,calc(100% - 34px)); margin: 0 auto; padding: 28px 0 44px; }
.plan-comparison-top { position: sticky; z-index: 10; top: 0; display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: -28px 0 20px; padding: 23px 2px 16px; border-bottom: 1px solid var(--border); background: color-mix(in srgb,var(--bg) 90%,transparent); backdrop-filter: blur(18px); }
.plan-comparison-top > div { max-width: 820px; }
.plan-comparison-top h1 { margin: 4px 0 6px; font-size: clamp(25px,3vw,38px); }
.plan-comparison-top p:not(.eyebrow) { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.65; }
.plan-comparison-top .button svg { transform: rotate(180deg); }
.plan-comparison-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; align-items: stretch; }
.plan-comparison-card { overflow: hidden; border: 1px solid var(--border); border-radius: 20px; background: color-mix(in srgb,var(--panel) 94%,transparent); box-shadow: 0 20px 55px rgba(0,0,0,.18); }
.plan-comparison-card.selected { border-color: var(--accent); box-shadow: 0 22px 58px var(--accent-glow),inset 0 0 0 1px var(--accent); }
.plan-comparison-card.gold-plan { background: linear-gradient(180deg,color-mix(in srgb,#d7a84d 8%,var(--panel)),var(--panel)); }
.plan-comparison-image { position: relative; overflow: hidden; border-bottom: 1px solid var(--border); background: var(--panel-alt); }
.plan-comparison-image img { display: block; width: 100%; height: 190px; object-fit: cover; }
.plan-comparison-image > span { position: absolute; right: 12px; bottom: 12px; display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; border-radius: 999px; background: rgba(5,13,25,.86); color: #fff; font-size: 8px; font-weight: 900; backdrop-filter: blur(10px); }
.plan-comparison-image > span svg { width: 11px; height: 11px; color: #64e7aa; }
.plan-comparison-card-head { padding: 17px 18px 13px; border-bottom: 1px solid var(--border); }
.plan-comparison-card-head h2 { margin: 3px 0 5px; font-size: 25px; }
.plan-comparison-card-head > strong { color: var(--accent-2); font-size: 13px; }
.plan-comparison-card-head > p:last-child { min-height: 45px; margin: 8px 0 0; color: var(--muted); font-size: 9px; line-height: 1.55; }
.plan-comparison-card section { padding: 15px 18px 17px; }
.plan-comparison-card section + section { border-top: 1px solid var(--border); }
.plan-comparison-card section h3 { display: flex; align-items: center; gap: 7px; margin: 0 0 11px; font-size: 10px; }
.plan-comparison-card section h3 svg { width: 12px; height: 12px; color: var(--success); }
.plan-comparison-card .plan-excluded-section h3 svg { color: var(--danger); }
.plan-included,.plan-excluded { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.plan-included li,.plan-excluded li { display: grid; grid-template-columns: 15px 1fr; align-items: start; gap: 7px; color: var(--text-2); font-size: 9px; line-height: 1.45; }
.plan-included li svg,.plan-excluded li svg { width: 12px; height: 12px; margin-top: 1px; }
.plan-included li svg { color: var(--success); }
.plan-excluded li { color: var(--muted); }
.plan-excluded li svg { color: color-mix(in srgb,var(--danger) 76%,var(--muted)); }
.plan-complete-badge { display: flex; align-items: center; gap: 8px; padding: 12px; border: 1px solid color-mix(in srgb,var(--success) 30%,var(--border)); border-radius: 11px; background: color-mix(in srgb,var(--success) 8%,var(--panel-alt)); color: var(--text-2); font-size: 9px; font-weight: 800; }
.plan-complete-badge svg { width: 13px; height: 13px; color: var(--success); }
.plan-comparison-trial { display: flex; align-items: center; gap: 13px; margin-top: 16px; padding: 15px 17px; border: 1px solid color-mix(in srgb,var(--accent) 30%,var(--border)); border-radius: 15px; background: var(--panel); box-shadow: var(--shadow); }
.plan-comparison-trial > svg { flex: 0 0 auto; width: 24px; height: 24px; color: var(--accent-2); }
.plan-comparison-trial > div { display: grid; gap: 3px; }
.plan-comparison-trial strong { font-size: 11px; }
.plan-comparison-trial span { color: var(--muted); font-size: 9px; line-height: 1.55; }

.plan-change-inline { display: inline-flex; margin-left: 8px; padding: 3px 6px; border-radius: 7px; background: var(--accent-soft); color: var(--accent-2); font-size: 7.5px; }
.plan-change-review { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 12px 0; padding: 14px; border: 1px solid color-mix(in srgb,var(--accent) 34%,var(--border)); border-radius: 12px; background: color-mix(in srgb,var(--accent) 7%,var(--panel-alt)); }
.plan-change-review h3 { margin: 3px 0 4px; font-size: 15px; }
.plan-change-review small { color: var(--muted); font-size: 8px; }
.plan-change-review > div:last-child { display: flex; gap: 8px; }
.free-operation-admin { border-color: color-mix(in srgb,#18a96b 40%,var(--border)); background: linear-gradient(135deg,color-mix(in srgb,#18a96b 9%,var(--panel-alt)),var(--panel-alt)); }
.free-operation-admin.active { box-shadow: inset 0 0 0 1px color-mix(in srgb,#18a96b 18%,transparent),0 10px 28px rgba(13,118,76,.08); }

.subscription-card em { display: inline-flex; align-items: center; justify-content: center; min-height: 28px; padding: 6px 8px; border-radius: 8px; background: var(--accent-soft); color: var(--accent-2); font-size: 8px; font-style: normal; font-weight: 850; text-align: center; }
.subscription-card.pending,.plan-dialog-card.pending { border-color: color-mix(in srgb,var(--warning) 55%,var(--border)); box-shadow: 0 0 0 3px color-mix(in srgb,var(--warning) 10%,transparent); }
.subscription-card:disabled { cursor: default; opacity: .82; }
.plan-dialog-card button:disabled { cursor: default; opacity: .7; }

@media (max-width: 1120px) {
  .plan-comparison-grid { grid-template-columns: 1fr; }
  .plan-comparison-image img { height: 220px; }
  .plan-comparison-card-head > p:last-child { min-height: 0; }
}
@media (max-width: 920px) {
  .plan-trial-wrap { display: none; }
  .plan-comparison-page { width: min(100% - 20px,760px); padding-top: 20px; }
  .plan-comparison-top { margin-top: -20px; padding-top: 15px; }
}
@media (max-width: 650px) {
  .registration-actions { align-items: stretch; }
  .registration-primary-actions { flex: 1; flex-direction: column-reverse; align-items: stretch; }
  .registration-primary-actions .button { width: 100%; justify-content: center; }
  .plan-comparison-top { align-items: flex-start; }
  .plan-comparison-top .button { flex: 0 0 auto; }
  .plan-comparison-image img { height: 150px; }
  .plan-change-review { align-items: stretch; flex-direction: column; }
  .plan-change-review > div:last-child { flex-direction: column; }
}

/* K-Line v0.7.3 · finální ostrý test: dokumenty, stavy zpráv a ukončené účty */
.approval-document-mini-list,
.admin-document-list { display: grid; gap: 7px; margin-top: 8px; }
.admin-document-row { display: grid !important; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 9px 10px !important; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); }
.admin-document-row > div:first-child { min-width: 0; display: grid; gap: 2px; }
.admin-document-row strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--text); font-size: 10px; }
.admin-document-row small { color: var(--muted); font-size: 9px; }
.admin-document-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.admin-document-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 30px; padding: 0 10px; border: 1px solid var(--border); border-radius: 8px; background: var(--panel); color: var(--text); font-size: 9px; font-weight: 750; text-decoration: none; }
.admin-document-actions a:hover { border-color: var(--accent); color: var(--accent-2); }
.admin-document-missing { color: var(--muted); font-size: 9px; }

.message-receipt { display: inline-flex; align-items: center; justify-content: flex-end; gap: 4px; margin-top: 5px; color: var(--muted); font-size: 8px; line-height: 1; white-space: nowrap; }
.message-receipt b { letter-spacing: -2px; font-size: 11px; font-weight: 900; }
.message-receipt em { font-style: normal; font-weight: 700; }
.message-receipt.delivered { color: color-mix(in srgb, var(--text-2) 82%, transparent); }
.message-receipt.read { color: #2f9cff; }
.message-receipt.compact { margin-top: 2px; margin-left: auto; }
.message-receipt.compact b { font-size: 10px; }
.offer-message .message-receipt,
.autopilot-chat-request .message-receipt { width: 100%; }
.offer-message.offer-status-withdrawn,
.offer-message.offer-status-deleted { opacity: .78; }
.offer-withdrawn-copy { display: block; padding: 8px 10px; border: 1px dashed var(--border); border-radius: 9px; color: var(--muted); font-size: 9px; }
.chat-system-note { align-self:center; width:fit-content; max-width:82%; margin:4px auto; padding:6px 10px; border:1px solid color-mix(in srgb,var(--border) 72%,transparent); border-radius:999px; background:color-mix(in srgb,var(--panel-alt) 76%,transparent); color:var(--muted); box-shadow:0 7px 18px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.035); font-size:8.5px; text-align:center; }
.dock-system-note { align-self:center; max-width:90%; margin:3px auto; padding:5px 8px; border:1px solid color-mix(in srgb,var(--border) 72%,transparent); border-radius:999px; background:color-mix(in srgb,var(--panel-alt) 78%,transparent); color:var(--muted); box-shadow:0 6px 14px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.03); font-size:8.2px; line-height:1.4; text-align:center; }

.account-danger-panel { border-color: color-mix(in srgb, var(--danger) 52%, var(--border)) !important; background: color-mix(in srgb, var(--danger) 6%, var(--panel)) !important; }
.account-danger-actions { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-top: 10px; }
.account-danger-actions > span { display: grid; gap: 4px; color: var(--text-2); }
.account-danger-actions small { color: var(--muted); }
.admin-account-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin-top: 12px; }
.account-admin-state { display: grid; gap: 3px; margin-top: 12px; padding: 11px 12px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-alt); }
.account-admin-state.terminated { border-color: color-mix(in srgb, var(--danger) 45%, var(--border)); }
.account-admin-state.subscription-ended { border-color: color-mix(in srgb, var(--warning) 45%, var(--border)); }
.account-admin-state span { color: var(--muted); font-size: 9px; }
.terminated-account-list { display: grid; gap: 9px; }
.terminated-account-card { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 18px; padding: 14px; border: 1px solid var(--border); border-radius: 14px; background: var(--panel); box-shadow: var(--shadow); }
.terminated-account-card > div { display: grid; gap: 5px; }
.terminated-account-card > div:last-child { justify-items: end; text-align: right; }
.terminated-account-card h3 { margin: 0; font-size: 13px; }
.terminated-account-card p { margin: 0; color: var(--text-2); font-size: 10px; }
.terminated-account-card small,
.terminated-account-card span { color: var(--muted); font-size: 9px; }

.notification-item .notification-message-count { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: var(--accent-soft); color: var(--accent-2); font-weight: 850; }

@media (max-width: 760px) {
  .admin-document-row,
  .terminated-account-card { grid-template-columns: 1fr; }
  .admin-document-actions { justify-content: flex-start; }
  .terminated-account-card > div:last-child { justify-items: start; text-align: left; }
  .account-danger-actions { align-items: stretch; flex-direction: column; }
  .account-danger-actions .button { width: 100%; justify-content: center; }
}

/* K-Line v0.7.3 – ruční datum/čas, cenové režimy a živý stav chatu. */
.date-time-field { display: grid; gap: 6px; }
.date-time-field > span { color: var(--muted); font-size: 9px; font-weight: 750; }
.date-time-field > small { color: var(--muted); font-size: 8px; line-height: 1.35; }
.date-time-pair { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(100px,.75fr); gap: 7px; }
.date-time-pair input { width: 100%; min-width: 0; }
.route-calculation-status { border-color: color-mix(in srgb,var(--accent) 28%,var(--border)); background: color-mix(in srgb,var(--accent-soft) 65%,var(--panel-alt)); }
.chat-pane-head small.partner-online { color: var(--success); }
.chat-pane-head small.partner-offline { color: var(--muted); }
.chat-pane-tools > .mini-button { white-space: nowrap; }
@media (max-width: 620px) {
  .date-time-pair { grid-template-columns: 1fr; }
  .chat-pane-tools > .mini-button { padding-inline: 7px; }
}

/* v0.7.3 r2 – živý stav účtu na hlavním a vysouvacím avataru */
.avatar.online::after {
  content: "";
  position: absolute;
  right: -2px;
  bottom: -2px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: 2px solid var(--panel-solid);
  background: var(--success);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--success) 18%, transparent);
}


/* K-Line final UX: personalizace Přehledu */
.dashboard-personal-layout { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.dashboard-personal-layout[hidden] { display:none !important; }
.dashboard-layout-slot:nth-child(n+5) { min-height:170px; }
.dashboard-layout-slot:nth-child(5) { grid-column:span 2; }
.dashboard-adaptive-tile { height:100%; min-height:112px; padding:14px; border:1px solid var(--border); border-radius:16px; background:var(--panel); box-shadow:var(--shadow); color:var(--text); cursor:pointer; }
.dashboard-adaptive-tile:hover { border-color:color-mix(in srgb,var(--accent) 45%,var(--border)); transform:translateY(-2px); }
.dashboard-adaptive-tile header { display:flex; align-items:center; gap:10px; }
.dashboard-adaptive-tile header > span { display:grid; place-items:center; width:36px; height:36px; border-radius:11px; background:var(--accent-soft); color:var(--accent-2); }
.dashboard-adaptive-tile header svg { width:17px; height:17px; }
.dashboard-adaptive-tile header div { display:grid; gap:2px; min-width:0; }
.dashboard-adaptive-tile header small,.dashboard-adaptive-tile p { color:var(--muted); font-size:9px; }
.dashboard-adaptive-tile header strong { font-size:15px; }
.dashboard-adaptive-tile p { margin:12px 0 0; }
.adaptive-big-value { margin:18px 0 12px; color:var(--accent-2); font-size:24px; font-weight:900; }
.adaptive-list { display:grid; gap:6px; margin-top:10px; }
.adaptive-list button { display:grid; gap:2px; padding:8px; border:0; border-radius:9px; background:var(--panel-alt); color:var(--text); text-align:left; cursor:pointer; }
.adaptive-list small { color:var(--muted); font-size:8.5px; }
.adaptive-actions { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin-top:12px; }
.adaptive-actions button { padding:9px; border:1px solid var(--border); border-radius:9px; background:var(--panel-alt); color:var(--text); cursor:pointer; }
.dashboard-layout-editor { display:grid; gap:10px; }
.dashboard-layout-editor > p { margin:0 0 4px; color:var(--muted); }
.dashboard-layout-editor label { display:grid; grid-template-columns:130px 1fr; align-items:center; gap:10px; }
.dashboard-layout-editor label span { font-weight:800; }
.dashboard-layout-editor select { width:100%; height:40px; padding:0 10px; border:1px solid var(--border); border-radius:9px; background:var(--input); color:var(--text); }
@media (max-width:1000px){.dashboard-personal-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-layout-slot:nth-child(5){grid-column:span 2}}
@media (max-width:650px){.dashboard-personal-layout{grid-template-columns:1fr}.dashboard-layout-slot:nth-child(5){grid-column:auto}}

/* Dokumenty */
.document-row-live { grid-template-columns:minmax(0,1fr) auto auto; }
.document-main-link { display:flex; align-items:center; gap:11px; min-width:0; color:var(--text); text-decoration:none; cursor:pointer; }
.document-main-link > div:last-child { display:grid; gap:3px; min-width:0; }
.document-main-link small { color:var(--muted); }
.document-main-link.disabled { cursor:default; opacity:.7; }
.document-change-admin-list { display:grid; gap:12px; }
.document-change-admin-card { padding:16px; border:1px solid var(--border); border-radius:16px; background:var(--panel); box-shadow:var(--shadow); }
.document-change-admin-card header { display:flex; justify-content:space-between; gap:12px; margin-bottom:12px; }
.document-change-admin-card header > div { display:grid; gap:2px; }
.document-change-admin-card header small,.document-change-admin-card header span,.document-change-compare small { color:var(--muted); }
.document-change-compare { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:12px; }
.document-change-compare section { display:grid; gap:8px; padding:12px; border-radius:12px; background:var(--panel-alt); }
.document-change-arrow { color:var(--accent-2); font-size:22px; font-weight:900; }
.document-change-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:12px; }

/* Další tapety chatu */
.wallpaper-road-truck { background:linear-gradient(165deg,#09131f 0 46%,#2c3540 47% 53%,#0b1119 54%),repeating-linear-gradient(90deg,transparent 0 19px,rgba(255,210,72,.8) 20px 23px,transparent 24px 42px); }
.wallpaper-sweet-day { background:radial-gradient(circle at 22% 25%,#fff8b7,transparent 30%),linear-gradient(145deg,#ffd4df,#f8b9d0 45%,#a8d9f7); }
.wallpaper-chill-day { background:radial-gradient(circle at 70% 25%,rgba(255,255,255,.45),transparent 25%),linear-gradient(145deg,#7ad5d3,#5ca8c9 52%,#385e85); }
.wallpaper-space { background:radial-gradient(circle at 18% 22%,#fff 0 1px,transparent 2px),radial-gradient(circle at 78% 35%,#fff 0 1px,transparent 2px),radial-gradient(circle at 62% 76%,#b9d8ff 0 1px,transparent 2px),radial-gradient(circle at 40% 40%,rgba(89,57,180,.45),transparent 32%),linear-gradient(145deg,#02030a,#091229 55%,#160b27); }
.chat-pane[data-chat-wallpaper="road-truck"],.chat-pane[data-chat-wallpaper="road-truck"] .chat-stream,.dock-chat[data-chat-wallpaper="road-truck"],.dock-chat[data-chat-wallpaper="road-truck"] .dock-messages { background:linear-gradient(165deg,rgba(8,18,31,.95) 0 45%,rgba(44,53,64,.96) 46% 54%,rgba(6,10,16,.98) 55%),repeating-linear-gradient(90deg,transparent 0 34px,rgba(255,205,65,.8) 35px 39px,transparent 40px 72px); }
.chat-pane[data-chat-wallpaper="sweet-day"],.chat-pane[data-chat-wallpaper="sweet-day"] .chat-stream,.dock-chat[data-chat-wallpaper="sweet-day"],.dock-chat[data-chat-wallpaper="sweet-day"] .dock-messages { background:radial-gradient(circle at 20% 20%,rgba(255,250,181,.9),transparent 30%),linear-gradient(145deg,#f8cbd8,#efb2ca 48%,#9ed4f2); }
.chat-pane[data-chat-wallpaper="chill-day"],.chat-pane[data-chat-wallpaper="chill-day"] .chat-stream,.dock-chat[data-chat-wallpaper="chill-day"],.dock-chat[data-chat-wallpaper="chill-day"] .dock-messages { background:radial-gradient(circle at 70% 18%,rgba(255,255,255,.26),transparent 26%),linear-gradient(145deg,#3f9f9d,#397fa1 55%,#263e62); }
.chat-pane[data-chat-wallpaper="space"],.chat-pane[data-chat-wallpaper="space"] .chat-stream,.dock-chat[data-chat-wallpaper="space"],.dock-chat[data-chat-wallpaper="space"] .dock-messages { background:radial-gradient(circle at 12% 17%,#fff 0 1px,transparent 2px),radial-gradient(circle at 80% 29%,#fff 0 1px,transparent 2px),radial-gradient(circle at 63% 72%,#b6d9ff 0 1px,transparent 2px),radial-gradient(circle at 42% 42%,rgba(113,71,210,.35),transparent 31%),linear-gradient(145deg,#010208,#071027 55%,#140923); background-size:130px 130px,170px 170px,210px 210px,cover,cover; }

/* Postup odznaků v pravém panelu */
.drawer-badge-progress { margin:12px 0 2px; padding:12px; border:1px solid var(--border); border-radius:14px; background:var(--panel-alt); }
.drawer-badge-title { display:grid; gap:2px; margin-bottom:10px; }
.drawer-badge-title small,.drawer-badge-pair small,.drawer-badge-countdown small,.drawer-badge-admin small { color:var(--muted); font-size:8.5px; line-height:1.4; }
.drawer-badge-pair { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:8px; }
.drawer-badge-pair > div { display:grid; justify-items:center; gap:5px; min-width:0; text-align:center; }
.drawer-badge-pair .loyalty-badge.icon-only { width:96px; height:96px; }
.drawer-badge-pair .loyalty-badge.icon-only > b > img { height:92px; max-width:96px; }
.drawer-badge-pair > div > strong { font-size:9px; }
.drawer-badge-arrow { color:var(--accent-2); font-size:22px; }
.drawer-badge-countdown { display:grid; justify-items:center; gap:2px; margin-top:10px; padding-top:9px; border-top:1px solid var(--border); text-align:center; }
.drawer-badge-countdown > strong { color:var(--accent-2); font-size:19px; }
.drawer-badge-admin { display:grid; gap:4px; }

.dashboard-customize-left { margin-top:10px; }


/* K-Line chat personalization + final topbar cleanup */
#notifications-button { width:46px; min-width:46px; }
.profile-button { min-width:210px; padding-right:11px; }
.profile-copy { min-width:122px; }
.profile-copy strong,.profile-copy small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.compact-theme-grid { gap:6px; }
.compact-theme-grid .theme-card { padding:6px; gap:3px; border-radius:10px; }
.compact-theme-grid .theme-preview { height:31px; border-radius:6px; }
.compact-theme-grid .theme-preview i { top:5px; height:4px; }
.compact-theme-grid .theme-preview b,.compact-theme-grid .theme-preview em { top:14px; height:11px; }
.compact-theme-grid .theme-card strong { font-size:9px; }
.compact-theme-grid .theme-card small { font-size:7.5px; }
.drawer-interface-controls { display:grid; gap:8px; margin-top:10px; }
.drawer-ultra-mode { width:100%; justify-content:flex-start; min-height:48px; }
.drawer-interface-mode { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:9px 10px; border:1px solid var(--border); border-radius:11px; background:var(--panel-alt); }
.drawer-interface-mode > div:first-child { display:grid; gap:2px; }
.drawer-interface-mode strong { font-size:10px; }
.drawer-interface-mode small { color:var(--muted); font-size:8px; }
.drawer-mode-buttons { display:flex; gap:5px; }
.drawer-mode-buttons .mini-button.selected { border-color:var(--accent); background:var(--accent-soft); color:var(--accent-2); }
.auth-language-switch { top:76px; right:20px; }

.conversation-actions .conversation-mute.active { border-color:#d4a900; background:rgba(255,206,47,.15); color:#ffd84f; box-shadow:0 0 0 1px rgba(255,216,79,.12) inset; }
.chat-color-picker { margin:0 12px 10px; padding:12px; border:1px solid var(--border); border-radius:14px; background:color-mix(in srgb,var(--panel-solid) 96%,transparent); box-shadow:0 24px 56px rgba(0,0,0,.32), 0 8px 22px rgba(0,0,0,.12), 0 0 24px color-mix(in srgb,var(--accent-glow) 10%,transparent), inset 0 1px 0 rgba(255,255,255,.035); }
.chat-color-default-reset { position:relative; overflow:hidden; display:grid; grid-template-columns:auto 1fr; align-items:center; gap:10px; width:100%; min-height:48px; margin-top:10px; padding:8px 10px; border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border)); border-radius:12px; background:linear-gradient(180deg,color-mix(in srgb,var(--panel-alt) 94%,white 4%),color-mix(in srgb,var(--panel-alt) 96%,black 4%)); color:var(--text); text-align:left; cursor:pointer; box-shadow:0 9px 22px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.055); transition:transform 160ms ease,border-color 160ms ease,box-shadow 170ms ease,background 170ms ease; }
.chat-color-default-reset::before { content:""; position:absolute; inset:1px 1px auto; height:48%; border-radius:11px; background:linear-gradient(180deg,rgba(255,255,255,.075),transparent); pointer-events:none; }
.chat-color-default-reset:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--accent) 52%,var(--border-strong)); box-shadow:0 13px 28px rgba(0,0,0,.16),0 0 20px color-mix(in srgb,var(--accent-glow) 12%,transparent),inset 0 1px 0 rgba(255,255,255,.07); }
.chat-color-default-reset.selected { border-color:var(--accent); background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 58%,var(--panel-alt)),color-mix(in srgb,var(--accent-soft) 32%,var(--panel-alt))); box-shadow:0 12px 28px rgba(0,0,0,.15),0 0 22px color-mix(in srgb,var(--accent-glow) 18%,transparent),inset 0 1px 0 rgba(255,255,255,.07); }
.chat-color-default-icon { position:relative; z-index:1; display:grid; place-items:center; width:32px; height:32px; border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border)); border-radius:10px; background:color-mix(in srgb,var(--accent-soft) 62%,var(--panel-solid)); color:var(--accent-2); font-size:18px; font-weight:900; box-shadow:0 7px 16px rgba(0,0,0,.13),inset 0 1px 0 rgba(255,255,255,.07); }
.chat-color-default-reset > span:last-child { position:relative; z-index:1; display:grid; gap:2px; }
.chat-color-default-reset strong { font-size:9.5px; }
.chat-color-default-reset small { color:var(--muted); font-size:7.8px; }
.chat-color-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin-top:10px; }
.chat-color-choice { display:grid; grid-template-columns:58px 1fr; align-items:center; gap:9px; min-height:52px; padding:7px; border:1px solid var(--border); border-radius:10px; background:var(--panel-alt); color:var(--text); text-align:left; cursor:pointer; }
.chat-color-choice.selected { border-color:var(--accent); box-shadow:0 0 0 2px var(--accent-soft); }
.chat-color-choice strong,.chat-color-choice small { display:block; }
.chat-color-choice strong { font-size:9px; }
.chat-color-choice small { margin-top:2px; color:var(--muted); font-size:7.5px; }
.chat-color-pair { display:grid; grid-template-columns:1fr 1fr; gap:3px; height:34px; }
.chat-color-pair i { display:block; border-radius:7px; border:1px solid rgba(255,255,255,.16); }
.chat-text-color-row { display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin-top:10px; padding-top:9px; border-top:1px solid var(--border); }
.chat-text-color-row > strong { margin-right:auto; font-size:9px; }
.chat-text-color-row .mini-button.selected { border-color:var(--accent); background:var(--accent-soft); color:var(--accent-2); }
.wallpaper-upload { display:grid!important; place-items:center; background:linear-gradient(135deg,var(--accent-soft),var(--panel-alt)); color:var(--accent-2); font-size:25px; font-weight:300; }
.chat-pane[data-chat-wallpaper="custom"],.chat-pane[data-chat-wallpaper="custom"] .chat-stream,.dock-chat[data-chat-wallpaper="custom"],.dock-chat[data-chat-wallpaper="custom"] .dock-messages { background-image:linear-gradient(rgba(5,9,16,.17),rgba(5,9,16,.17)),var(--chat-custom-wallpaper); background-position:center; background-repeat:no-repeat; background-size:cover; }
.chat-pane[data-chat-wallpaper],
.dock-chat[data-chat-wallpaper] { background-position:center; background-repeat:no-repeat; background-size:cover; }
.dock-chat[data-chat-wallpaper] .dock-messages { background: transparent !important; background-image: none !important; }

/* Barvy bublin se aplikují přímo na viditelnou bublinu zprávy, ne na její obal s časem/stavem. */
.chat-pane[data-chat-bubbles="blue-slate"] .chat-message.user .chat-bubble > p,.chat-pane[data-chat-bubbles="blue-slate"] .chat-message.user .chat-image-bubble,.chat-pane[data-chat-bubbles="blue-slate"] .chat-message.user .offer-message,.dock-chat[data-chat-bubbles="blue-slate"] .dock-message.mine { background:#1677ff; color:#fff; }
.chat-pane[data-chat-bubbles="blue-slate"] .chat-message.assistant .chat-bubble > p,.chat-pane[data-chat-bubbles="blue-slate"] .chat-message.assistant .chat-image-bubble,.chat-pane[data-chat-bubbles="blue-slate"] .chat-message.assistant .offer-message,.dock-chat[data-chat-bubbles="blue-slate"] .dock-message:not(.mine) { background:#e7edf5; color:#17202d; }
.chat-pane[data-chat-bubbles="green-cream"] .chat-message.user .chat-bubble > p,.chat-pane[data-chat-bubbles="green-cream"] .chat-message.user .chat-image-bubble,.chat-pane[data-chat-bubbles="green-cream"] .chat-message.user .offer-message,.dock-chat[data-chat-bubbles="green-cream"] .dock-message.mine { background:#168b62; color:#fff; }
.chat-pane[data-chat-bubbles="green-cream"] .chat-message.assistant .chat-bubble > p,.chat-pane[data-chat-bubbles="green-cream"] .chat-message.assistant .chat-image-bubble,.chat-pane[data-chat-bubbles="green-cream"] .chat-message.assistant .offer-message,.dock-chat[data-chat-bubbles="green-cream"] .dock-message:not(.mine) { background:#fff2d9; color:#2b2418; }
.chat-pane[data-chat-bubbles="purple-slate"] .chat-message.user .chat-bubble > p,.chat-pane[data-chat-bubbles="purple-slate"] .chat-message.user .chat-image-bubble,.chat-pane[data-chat-bubbles="purple-slate"] .chat-message.user .offer-message,.dock-chat[data-chat-bubbles="purple-slate"] .dock-message.mine { background:#7357d8; color:#fff; }
.chat-pane[data-chat-bubbles="purple-slate"] .chat-message.assistant .chat-bubble > p,.chat-pane[data-chat-bubbles="purple-slate"] .chat-message.assistant .chat-image-bubble,.chat-pane[data-chat-bubbles="purple-slate"] .chat-message.assistant .offer-message,.dock-chat[data-chat-bubbles="purple-slate"] .dock-message:not(.mine) { background:#e9e7ef; color:#282335; }
.chat-pane[data-chat-bubbles="orange-graphite"] .chat-message.user .chat-bubble > p,.chat-pane[data-chat-bubbles="orange-graphite"] .chat-message.user .chat-image-bubble,.chat-pane[data-chat-bubbles="orange-graphite"] .chat-message.user .offer-message,.dock-chat[data-chat-bubbles="orange-graphite"] .dock-message.mine { background:#dc6a22; color:#fff; }
.chat-pane[data-chat-bubbles="orange-graphite"] .chat-message.assistant .chat-bubble > p,.chat-pane[data-chat-bubbles="orange-graphite"] .chat-message.assistant .chat-image-bubble,.chat-pane[data-chat-bubbles="orange-graphite"] .chat-message.assistant .offer-message,.dock-chat[data-chat-bubbles="orange-graphite"] .dock-message:not(.mine) { background:#343b47; color:#fff; }
.chat-pane[data-chat-bubbles="red-ice"] .chat-message.user .chat-bubble > p,.chat-pane[data-chat-bubbles="red-ice"] .chat-message.user .chat-image-bubble,.chat-pane[data-chat-bubbles="red-ice"] .chat-message.user .offer-message,.dock-chat[data-chat-bubbles="red-ice"] .dock-message.mine { background:#c83b50; color:#fff; }
.chat-pane[data-chat-bubbles="red-ice"] .chat-message.assistant .chat-bubble > p,.chat-pane[data-chat-bubbles="red-ice"] .chat-message.assistant .chat-image-bubble,.chat-pane[data-chat-bubbles="red-ice"] .chat-message.assistant .offer-message,.dock-chat[data-chat-bubbles="red-ice"] .dock-message:not(.mine) { background:#dff1f7; color:#1f3038; }
.chat-pane[data-chat-bubbles="ocean"] .chat-message.user .chat-bubble > p,.chat-pane[data-chat-bubbles="ocean"] .chat-message.user .chat-image-bubble,.chat-pane[data-chat-bubbles="ocean"] .chat-message.user .offer-message,.dock-chat[data-chat-bubbles="ocean"] .dock-message.mine { background:linear-gradient(135deg,#0077ff,#00c2d8); color:#fff; }
.chat-pane[data-chat-bubbles="ocean"] .chat-message.assistant .chat-bubble > p,.chat-pane[data-chat-bubbles="ocean"] .chat-message.assistant .chat-image-bubble,.chat-pane[data-chat-bubbles="ocean"] .chat-message.assistant .offer-message,.dock-chat[data-chat-bubbles="ocean"] .dock-message:not(.mine) { background:linear-gradient(135deg,#dceeff,#e8fbff); color:#142739; }
.chat-pane[data-chat-bubbles="sunset"] .chat-message.user .chat-bubble > p,.chat-pane[data-chat-bubbles="sunset"] .chat-message.user .chat-image-bubble,.chat-pane[data-chat-bubbles="sunset"] .chat-message.user .offer-message,.dock-chat[data-chat-bubbles="sunset"] .dock-message.mine { background:linear-gradient(135deg,#ff6a3d,#d8459b); color:#fff; }
.chat-pane[data-chat-bubbles="sunset"] .chat-message.assistant .chat-bubble > p,.chat-pane[data-chat-bubbles="sunset"] .chat-message.assistant .chat-image-bubble,.chat-pane[data-chat-bubbles="sunset"] .chat-message.assistant .offer-message,.dock-chat[data-chat-bubbles="sunset"] .dock-message:not(.mine) { background:linear-gradient(135deg,#ffe8d8,#f7d7e9); color:#38212b; }
.chat-pane[data-chat-bubbles="aurora"] .chat-message.user .chat-bubble > p,.chat-pane[data-chat-bubbles="aurora"] .chat-message.user .chat-image-bubble,.chat-pane[data-chat-bubbles="aurora"] .chat-message.user .offer-message,.dock-chat[data-chat-bubbles="aurora"] .dock-message.mine { background:linear-gradient(135deg,#087f75,#3aa76d,#4488dd); color:#fff; }
.chat-pane[data-chat-bubbles="aurora"] .chat-message.assistant .chat-bubble > p,.chat-pane[data-chat-bubbles="aurora"] .chat-message.assistant .chat-image-bubble,.chat-pane[data-chat-bubbles="aurora"] .chat-message.assistant .offer-message,.dock-chat[data-chat-bubbles="aurora"] .dock-message:not(.mine) { background:linear-gradient(135deg,#d9f6ef,#e5eefc); color:#18302c; }
.chat-pane[data-chat-bubbles="night"] .chat-message.user .chat-bubble > p,.chat-pane[data-chat-bubbles="night"] .chat-message.user .chat-image-bubble,.chat-pane[data-chat-bubbles="night"] .chat-message.user .offer-message,.dock-chat[data-chat-bubbles="night"] .dock-message.mine { background:linear-gradient(135deg,#253f78,#5c3f99); color:#fff; }
.chat-pane[data-chat-bubbles="night"] .chat-message.assistant .chat-bubble > p,.chat-pane[data-chat-bubbles="night"] .chat-message.assistant .chat-image-bubble,.chat-pane[data-chat-bubbles="night"] .chat-message.assistant .offer-message,.dock-chat[data-chat-bubbles="night"] .dock-message:not(.mine) { background:linear-gradient(135deg,#28303f,#3b465a); color:#fff; }
.chat-pane[data-chat-bubbles="gold"] .chat-message.user .chat-bubble > p,.chat-pane[data-chat-bubbles="gold"] .chat-message.user .chat-image-bubble,.chat-pane[data-chat-bubbles="gold"] .chat-message.user .offer-message,.dock-chat[data-chat-bubbles="gold"] .dock-message.mine { background:linear-gradient(135deg,#a86a00,#e8b33b); color:#fff; }
.chat-pane[data-chat-bubbles="gold"] .chat-message.assistant .chat-bubble > p,.chat-pane[data-chat-bubbles="gold"] .chat-message.assistant .chat-image-bubble,.chat-pane[data-chat-bubbles="gold"] .chat-message.assistant .offer-message,.dock-chat[data-chat-bubbles="gold"] .dock-message:not(.mine) { background:linear-gradient(135deg,#fff2bd,#ead8a1); color:#302711; }
.chat-pane[data-chat-text="black"] .chat-bubble > p,.chat-pane[data-chat-text="black"] .chat-image-bubble,.chat-pane[data-chat-text="black"] .offer-message,.dock-chat[data-chat-text="black"] .dock-message { color:#090b0f!important; }
.chat-pane[data-chat-text="white"] .chat-bubble > p,.chat-pane[data-chat-text="white"] .chat-image-bubble,.chat-pane[data-chat-text="white"] .offer-message,.dock-chat[data-chat-text="white"] .dock-message { color:#fff!important; }

@media (max-width:1050px){.topbar{grid-template-columns:minmax(135px,.5fr) minmax(220px,1fr) minmax(330px,1fr);gap:12px;padding-inline:16px}.profile-button{min-width:180px}.language-switch select{width:70px}}

/* K-Line FIX – panel Barvy musí být plovoucí nad chatem, ne součást gridu. */
.chat-pane { position: relative; }
.chat-pane-head { position: relative; z-index: 92; background: color-mix(in srgb,var(--panel-solid) 96%,transparent); }
.chat-color-picker {
  position: absolute;
  z-index: 96;
  top: 62px;
  right: 14px;
  width: min(560px, calc(100% - 28px));
  max-height: calc(100% - 82px);
  margin: 0;
  overflow-y: auto;
  pointer-events: auto;
  isolation: isolate;
  background: color-mix(in srgb,var(--panel-solid) 99%,#06101d 1%);
  box-shadow: 0 26px 70px rgba(0,0,0,.52), 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent);
  backdrop-filter: blur(22px);
}
.chat-color-picker button { pointer-events: auto; }
.chat-stream { position: relative; z-index: 1; }
.chat-compose { position: relative; z-index: 2; background: color-mix(in srgb,var(--panel-solid) 96%,transparent); }
@media (max-width: 760px) {
  .chat-color-picker { top: 66px; right: 8px; width: calc(100% - 16px); max-height: calc(100% - 84px); }
  .chat-color-grid { grid-template-columns: 1fr; }
}

/* K-Line: výběr vítěze aukce/tendru + pracovní stav přepravy */
.auction-bid-decision { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-top:8px; }
.auction-bid-decision .button { min-height:29px; padding:5px 9px; box-shadow:0 7px 18px color-mix(in srgb,var(--accent-glow) 24%,transparent); }
.transport-lifecycle-actions { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:13px 14px; border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border)); border-radius:13px; background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,var(--panel-alt)),color-mix(in srgb,var(--panel-solid) 94%,transparent)); box-shadow:0 12px 28px rgba(0,0,0,.12),0 0 20px color-mix(in srgb,var(--accent-glow) 18%,transparent),inset 0 1px 0 rgba(255,255,255,.045); }
.transport-lifecycle-actions > div { display:grid; gap:3px; min-width:0; }
.transport-lifecycle-actions small { color:var(--muted); font-size:8px; font-weight:780; letter-spacing:.04em; text-transform:uppercase; }
.transport-lifecycle-actions strong { color:var(--text); font-size:10px; }
.transport-lifecycle-actions .button { flex:0 0 auto; box-shadow:0 8px 22px color-mix(in srgb,var(--accent-glow) 30%,transparent); }
.transport-lifecycle-actions.completed { border-color:color-mix(in srgb,var(--success) 38%,var(--border)); background:linear-gradient(135deg,color-mix(in srgb,var(--success) 10%,var(--panel-alt)),var(--panel-solid)); box-shadow:0 12px 28px rgba(0,0,0,.1),0 0 18px color-mix(in srgb,var(--success) 13%,transparent),inset 0 1px 0 rgba(255,255,255,.04); }
.transport-lifecycle-actions.completed strong { color:color-mix(in srgb,var(--success) 82%,var(--text)); }
@media (max-width:620px) { .transport-lifecycle-actions { align-items:stretch; flex-direction:column; } .transport-lifecycle-actions .button { width:100%; } }

/* Stav cenové nabídky má přednost před barevným tématem chatových bublin. */
.chat-pane .chat-message .offer-message.offer-status-accepted { background:linear-gradient(180deg,color-mix(in srgb,var(--success) 27%,var(--panel-alt)),color-mix(in srgb,var(--success) 17%,var(--panel))) !important; color:var(--text) !important; }
.chat-pane .chat-message .offer-message.offer-status-rejected { background:color-mix(in srgb,var(--danger) 12%,var(--panel-alt)) !important; }

/* K-Line serverové předplatné / fakturace */
.subscription-loading,.subscription-error,.subscription-empty{border:1px solid var(--border);border-radius:16px;background:var(--panel);padding:18px;color:var(--muted)}
.subscription-loading{display:flex;align-items:center;gap:12px;min-height:86px}.subscription-loading span{width:22px;height:22px;border:3px solid color-mix(in srgb,var(--accent) 18%,transparent);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.subscription-loading strong{color:var(--text)}
.subscription-error strong{display:block;color:var(--text);font-size:15px}.subscription-error p{margin:7px 0 14px}
.subscription-account-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.45fr);gap:16px;align-items:stretch;margin-bottom:16px;padding:18px;border:1px solid var(--border);border-radius:19px;background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--accent) 5%,var(--panel-alt)));box-shadow:0 16px 38px rgba(0,0,0,.1)}
.subscription-account-hero h3{margin:4px 0 7px;font-size:20px}.subscription-account-hero p{margin:0;color:var(--muted);font-size:10px}.subscription-code-card{display:grid;align-content:center;gap:4px;padding:15px 17px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:15px;background:color-mix(in srgb,var(--accent) 5%,var(--panel));text-align:right}.subscription-code-card span,.subscription-code-card small{color:var(--muted);font-size:9px}.subscription-code-card strong{font-size:23px;letter-spacing:.08em}
.subscription-user-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.65fr);gap:16px;align-items:start}.subscription-payment-card,.subscription-panel{border:1px solid var(--border);border-radius:18px;background:var(--panel);box-shadow:0 14px 34px rgba(0,0,0,.09)}.subscription-payment-card{padding:17px;position:sticky;top:18px}.subscription-payment-card h3{margin:4px 0 13px}.subscription-payment-total{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin:12px 0;padding:13px 14px;border-radius:13px;background:color-mix(in srgb,var(--accent) 8%,var(--panel-alt))}.subscription-payment-total span{font-size:9px;color:var(--muted)}.subscription-payment-total strong{font-size:20px}.subscription-wallet-prepared{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.subscription-wallet-prepared small{grid-column:1/-1;color:var(--muted);line-height:1.45;font-size:8.5px}.subscription-wallet-prepared .wallet-button:disabled{opacity:.62;cursor:not-allowed}
.subscription-panel{margin-top:16px;padding:16px}.subscription-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:13px}.subscription-panel-head h3{margin:3px 0 0}.subscription-panel-head>span{font-size:9px;color:var(--muted);white-space:nowrap}
.subscription-invoice-list{display:grid;gap:9px}.subscription-invoice-row{display:grid;grid-template-columns:minmax(190px,1.2fr) minmax(125px,.55fr) minmax(145px,.55fr) auto minmax(190px,.8fr);gap:12px;align-items:center;padding:12px 13px;border:1px solid var(--border);border-radius:14px;background:var(--panel-alt);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.subscription-invoice-row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 25%,var(--border));box-shadow:0 10px 24px rgba(0,0,0,.08)}.subscription-invoice-row.overdue{border-color:color-mix(in srgb,var(--danger) 42%,var(--border))}.subscription-invoice-row.paid{border-color:color-mix(in srgb,var(--success) 35%,var(--border))}.subscription-invoice-main,.subscription-invoice-money,.subscription-invoice-dates{display:grid;gap:3px}.subscription-invoice-main strong{font-size:11px}.subscription-invoice-main small,.subscription-invoice-money small,.subscription-invoice-dates small{font-size:8.5px;color:var(--muted)}.subscription-invoice-money strong{font-size:12px}.subscription-doc-type{display:inline-flex;width:max-content;padding:3px 6px;border-radius:6px;background:var(--accent-soft);font-size:7.5px;font-weight:900;letter-spacing:.08em}.subscription-status{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:5px 8px;border-radius:999px;border:1px solid var(--border);font-size:8px;font-weight:900;white-space:nowrap}.subscription-status.paid{background:color-mix(in srgb,var(--success) 12%,var(--panel));border-color:color-mix(in srgb,var(--success) 34%,var(--border))}.subscription-status.overdue{background:color-mix(in srgb,var(--danger) 10%,var(--panel));border-color:color-mix(in srgb,var(--danger) 36%,var(--border))}.subscription-status.partial{background:color-mix(in srgb,var(--warning) 10%,var(--panel));border-color:color-mix(in srgb,var(--warning) 34%,var(--border))}.subscription-status.cancelled,.subscription-status.credit{opacity:.8}.subscription-invoice-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.subscription-invoice-actions .mini-button{min-height:27px;padding:5px 8px;text-decoration:none}.subscription-invoice-actions .mini-button.success{border-color:color-mix(in srgb,var(--success) 42%,var(--border))}.subscription-invoice-actions .mini-button.danger{border-color:color-mix(in srgb,var(--danger) 42%,var(--border))}
.subscription-two-column{display:grid;grid-template-columns:1fr 1fr;gap:16px}.subscription-upload-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;padding:12px;border:1px dashed color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:13px;background:color-mix(in srgb,var(--accent) 3%,var(--panel-alt))}.subscription-upload-form label{display:grid;gap:5px}.subscription-upload-form label>span{font-size:8.5px;font-weight:800}.subscription-upload-form select,.subscription-upload-form input,.subscription-message-form textarea,.subscription-admin-filters input,.subscription-admin-filters select,.subscription-bank-prepared textarea{width:100%;min-height:36px;border:1px solid var(--border);border-radius:10px;background:var(--panel-alt);color:var(--text);padding:8px 10px;font:inherit}.subscription-upload-file{grid-column:1/-1}.subscription-upload-file small{font-size:8px;color:var(--muted)}.subscription-upload-form>button{grid-column:1/-1;justify-self:end}.subscription-upload-form.admin{margin-top:14px}
.subscription-document-list{display:grid;gap:7px}.subscription-document-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--border);border-radius:11px;background:var(--panel-alt)}.subscription-document-list article>span svg{width:18px;height:18px}.subscription-document-list article>div{display:grid;gap:2px;min-width:0}.subscription-document-list strong{font-size:9.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subscription-document-list small{font-size:8px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subscription-document-list a{text-decoration:none}
.subscription-message-thread{display:grid;gap:7px;max-height:360px;overflow:auto;padding:4px 2px 8px}.subscription-message{max-width:84%;padding:9px 11px;border:1px solid var(--border);border-radius:13px;background:var(--panel-alt)}.subscription-message.mine{justify-self:end;background:color-mix(in srgb,var(--accent) 9%,var(--panel-alt));border-bottom-right-radius:5px}.subscription-message.other{justify-self:start;border-bottom-left-radius:5px}.subscription-message small{display:block;margin-bottom:4px;color:var(--muted);font-size:7.8px}.subscription-message p{margin:0;white-space:pre-wrap;font-size:9.5px;line-height:1.45}.subscription-message-form{display:grid;gap:8px;margin-top:10px}.subscription-message-form textarea{min-height:76px;resize:vertical}.subscription-message-form>button,.subscription-message-form>div{justify-self:end}.subscription-message-form>div{display:flex;gap:7px}
.subscription-admin-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}.subscription-admin-metrics article{display:grid;gap:5px;padding:13px;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:0 10px 26px rgba(0,0,0,.08)}.subscription-admin-metrics span{color:var(--muted);font-size:8.5px}.subscription-admin-metrics strong{font-size:17px}.subscription-admin-metrics .danger{border-color:color-mix(in srgb,var(--danger) 34%,var(--border))}.subscription-admin-filters{display:grid;grid-template-columns:minmax(260px,1.7fr) minmax(170px,.6fr) minmax(160px,.5fr);gap:10px;margin-bottom:13px}.subscription-admin-filters label{display:grid;gap:5px}.subscription-admin-filters label>span{font-size:8.5px;font-weight:800}.subscription-admin-threads{display:grid;gap:8px}.subscription-admin-threads details{border:1px solid var(--border);border-radius:12px;background:var(--panel-alt);overflow:hidden}.subscription-admin-threads summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;padding:11px 12px}.subscription-admin-threads summary>div{display:grid;gap:2px}.subscription-admin-threads summary strong{font-size:10px}.subscription-admin-threads summary small{font-size:8px;color:var(--muted)}.subscription-admin-threads summary b{display:grid;place-items:center;min-width:23px;height:23px;border-radius:50%;background:var(--danger);color:#fff;font-size:8px}.subscription-admin-threads details>.subscription-message-thread,.subscription-admin-threads details>.subscription-message-form{margin:0 11px 11px}.subscription-export-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.subscription-export-grid a{text-decoration:none;justify-content:center}.subscription-bank-prepared{display:grid;gap:6px;margin-top:14px;padding:13px;border:1px solid var(--border);border-radius:13px;background:var(--panel-alt)}.subscription-bank-prepared>span{font-size:9px;color:var(--muted)}.subscription-bank-prepared form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.subscription-bank-prepared textarea{min-height:80px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:8.5px}.subscription-bank-prepared .button{height:max-content}.subscription-panel .finance-disclaimer{margin-top:14px}
@media(max-width:1280px){.subscription-user-layout{grid-template-columns:1fr}.subscription-payment-card{position:static}.subscription-invoice-row{grid-template-columns:minmax(190px,1fr) minmax(120px,.5fr) auto}.subscription-invoice-dates{display:none}.subscription-invoice-actions{grid-column:1/-1;justify-content:flex-start}.subscription-admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.subscription-account-hero,.subscription-two-column{grid-template-columns:1fr}.subscription-code-card{text-align:left}.subscription-admin-filters{grid-template-columns:1fr}.subscription-export-grid{grid-template-columns:1fr 1fr}.subscription-admin-metrics{grid-template-columns:1fr 1fr}.subscription-invoice-row{grid-template-columns:1fr auto}.subscription-invoice-money{justify-items:end}.subscription-invoice-dates,.subscription-invoice-row>.subscription-status{grid-column:auto}.subscription-invoice-actions{grid-column:1/-1}.subscription-wallet-prepared{grid-template-columns:1fr}.subscription-wallet-prepared small{grid-column:1}.subscription-bank-prepared form{grid-template-columns:1fr}}
@media(max-width:600px){.subscription-upload-form{grid-template-columns:1fr}.subscription-upload-file,.subscription-upload-form>button{grid-column:1}.subscription-document-list article{grid-template-columns:auto minmax(0,1fr)}.subscription-document-list article a{grid-column:auto}.subscription-admin-metrics,.subscription-export-grid{grid-template-columns:1fr}.subscription-invoice-row{grid-template-columns:1fr}.subscription-invoice-money{justify-items:start}.subscription-status{justify-self:start}}


/* K-Line: jeden partner = jeden chat, více zakázkových kontextů */
.chat-context-selector { position:relative; z-index:86; display:grid; grid-template-columns:auto minmax(0,1fr) minmax(210px,300px); align-items:center; gap:9px; min-height:44px; padding:7px 12px; border-bottom:1px solid color-mix(in srgb,var(--border) 82%,transparent); background:color-mix(in srgb,var(--panel-solid) 97%,transparent); box-shadow:0 8px 20px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.035); }
.chat-context-caption { color:var(--muted); font-size:8.5px; font-weight:800; letter-spacing:.035em; text-transform:uppercase; white-space:nowrap; }
.chat-context-route { min-width:0; display:flex; align-items:center; gap:6px; color:var(--text); }
.chat-context-route > svg { width:14px; height:14px; color:var(--accent-2); }
.chat-context-place { min-width:0; display:inline-flex; align-items:center; gap:4px; }
.chat-context-place .flag-code { flex:0 0 auto; }
.chat-context-place strong { overflow:hidden; max-width:150px; text-overflow:ellipsis; white-space:nowrap; font-size:9.5px; }
.chat-context-arrow { flex:0 0 auto; color:var(--accent-2); font-weight:900; }
.chat-context-route > small { flex:0 0 auto; color:var(--muted); font-size:8px; }
.chat-context-route > b { flex:0 0 auto; padding:3px 6px; border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border)); border-radius:7px; background:color-mix(in srgb,var(--accent-soft) 55%,transparent); color:var(--accent-2); font-size:7.8px; letter-spacing:.02em; }
.chat-context-status { flex:0 0 auto; padding:3px 6px; border-radius:999px; background:color-mix(in srgb,var(--success) 12%,transparent); color:var(--success); font-size:7.5px; font-style:normal; font-weight:800; }
.chat-context-status.closed { background:color-mix(in srgb,var(--muted) 10%,transparent); color:var(--muted); }
.chat-context-select-wrap { min-width:0; }
.chat-context-select-wrap select { width:100%; min-width:0; height:31px; padding:0 28px 0 9px; border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border)); border-radius:9px; outline:0; background:color-mix(in srgb,var(--input) 96%,transparent); color:var(--text); font-size:8.5px; font-weight:700; box-shadow:inset 0 1px 0 rgba(255,255,255,.025); cursor:pointer; }
.chat-context-select-wrap select:focus { border-color:color-mix(in srgb,var(--accent) 55%,var(--border)); box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-soft) 68%,transparent); }
.chat-compose-context { position:relative; z-index:3; display:flex; align-items:center; gap:7px; min-height:29px; padding:5px 12px; border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent); background:color-mix(in srgb,var(--panel-solid) 96%,transparent); }
.chat-compose-context > span:first-child { color:var(--muted); font-size:8px; font-weight:800; text-transform:uppercase; }
.chat-compose-context .chat-context-route { flex:0 1 auto; }
.chat-compose-context > small { margin-left:auto; color:var(--muted); font-size:7.8px; }
.chat-compose-context.view-only { background:color-mix(in srgb,var(--warning) 5%,var(--panel-solid)); }
.message-context-badge { display:block; width:100%; margin:0 0 7px; padding:5px 7px; border:1px solid color-mix(in srgb,var(--accent) 15%,var(--border)); border-radius:9px; background:color-mix(in srgb,var(--panel-solid) 72%,transparent); color:var(--text); text-align:left; }
.message-context-badge .chat-context-route { width:100%; }
.message-context-badge .chat-context-place strong { max-width:118px; font-size:8px; }
.message-context-badge .chat-context-route > b { margin-left:auto; font-size:7px; }
.message-context-badge.compact { margin-bottom:5px; padding:4px 5px; border-radius:7px; }
.message-context-badge.compact .chat-context-place strong { max-width:90px; font-size:8px; }
.message-context-badge.compact .chat-context-status { display:none; }
.conversation-context-preview { display:block; overflow:hidden; max-width:100%; color:color-mix(in srgb,var(--accent-2) 78%,var(--muted)); font-size:8px; font-style:normal; font-weight:780; text-overflow:ellipsis; white-space:nowrap; }
.chat-context-selector.compact { grid-template-columns:minmax(0,1fr); gap:4px; padding:8px 10px; }
.chat-context-selector.compact .chat-context-caption { display:none; }
.chat-context-selector.compact .chat-context-route { overflow:hidden; flex-wrap:wrap; align-items:center; gap:4px 6px; }
.chat-context-selector.compact .chat-context-place strong { max-width:110px; font-size:9.6px; font-weight:800; }
.chat-context-selector.compact .chat-context-arrow { font-size:11px; }
.chat-context-selector.compact .chat-context-route > small { flex:1 0 100%; margin-top:1px; font-size:8.8px; color:color-mix(in srgb,var(--text) 76%,var(--muted)); line-height:1.35; }
.chat-context-selector.compact .chat-context-route > b { display:none; }
.chat-context-selector.compact .chat-context-status { display:none; }
.chat-context-selector.compact .chat-context-select-wrap { display:none; }
.dock-chat-body { grid-template-rows:auto 1fr auto; }
.dock-chat.open .dock-chat-body { height:400px; }
.dock-chat .chat-context-selector { background:color-mix(in srgb,var(--panel-solid) 94%,transparent); }
.dock-chat[data-chat-wallpaper] .chat-context-selector.compact { background:transparent; backdrop-filter:none; box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--border) 66%,transparent); }
.dock-chat[data-chat-wallpaper] .chat-context-selector.compact .chat-context-route { text-shadow:0 1px 2px rgba(0,0,0,.72); }
.dock-system-note .message-context-badge { margin-bottom:4px; }
.offer-message .message-context-badge { margin:0 0 8px; }
.offer-message .message-context-badge .chat-context-route { justify-content:center; }
.chat-context-route.compact .chat-context-place strong { max-width:95px; }
@media (max-width:900px) {
  .chat-context-selector { grid-template-columns:auto minmax(0,1fr); }
  .chat-context-selector:not(.compact) .chat-context-select-wrap { grid-column:1 / -1; }
  .chat-compose-context > small { display:none; }
}
.chat-context-other-unread { position:absolute; z-index:2; top:2px; right:4px; display:grid; place-items:center; min-width:17px; height:17px; padding:0 4px; border:2px solid var(--panel-solid); border-radius:999px; background:var(--success); color:#fff; font-size:7px; font-weight:900; box-shadow:0 0 0 2px color-mix(in srgb,var(--success) 18%,transparent),0 5px 14px rgba(0,0,0,.18); pointer-events:none; }
.chat-context-selector.has-other-unread { box-shadow:0 8px 20px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.035),0 0 0 1px color-mix(in srgb,var(--success) 17%,transparent); }
.chat-context-selector.has-other-unread .chat-context-other-unread { animation:kline-context-unread-pulse 1.7s ease-in-out infinite; }
.chat-context-globe { display:inline-grid; place-items:center; width:17px; height:13px; font-size:11px; line-height:1; }
@keyframes kline-context-unread-pulse { 0%,100%{ transform:scale(1); box-shadow:0 0 0 2px color-mix(in srgb,var(--success) 18%,transparent),0 5px 14px rgba(0,0,0,.18); } 50%{ transform:scale(1.09); box-shadow:0 0 0 5px color-mix(in srgb,var(--success) 8%,transparent),0 5px 16px rgba(0,0,0,.2); } }

/* K-Line — vysvětlivky věrnostních odznaků: větší čisté ikony bez rámečku/pásku. */
#badge-information-panel .badge-legend article { grid-template-columns: 98px minmax(0,1fr); min-height: 104px; gap: 12px; }
#badge-information-panel .badge-legend .loyalty-badge.with-label {
  display: grid;
  place-items: center;
  width: 94px;
  height: 94px;
  min-height: 94px;
  padding: 0;
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
}
#badge-information-panel .badge-legend .loyalty-badge.with-label > b { width: 94px; min-width: 94px; height: 94px; }
#badge-information-panel .badge-legend .loyalty-badge.with-label > b > img { width: auto; max-width: 94px; height: 90px; object-fit: contain; }
#badge-information-panel .badge-legend .loyalty-badge.with-label > em { display: none; }
.drawer-badge-empty { display:grid; place-items:center; width:96px; height:96px; color:var(--muted); font-size:26px; font-weight:800; }
@media (max-width: 600px) {
  #badge-information-panel .badge-legend article { grid-template-columns: 82px minmax(0,1fr); }
  #badge-information-panel .badge-legend .loyalty-badge.with-label,
  #badge-information-panel .badge-legend .loyalty-badge.with-label > b { width: 78px; height: 78px; min-height: 78px; min-width: 78px; }
  #badge-information-panel .badge-legend .loyalty-badge.with-label > b > img { max-width: 78px; height: 76px; }
}


/* K-Line: bezpečnostní potvrzení zrušení účtu a předplatného */
.account-termination-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(2, 5, 10, .82);
  backdrop-filter: blur(9px) saturate(.72);
  animation: account-termination-overlay-in 180ms ease-out both;
}
.account-termination-warning {
  position: relative;
  overflow: hidden;
  width: min(680px, 100%);
  padding: 28px;
  border: 2px solid color-mix(in srgb, var(--danger) 84%, #ff5252 16%);
  border-radius: 22px;
  background:
    radial-gradient(circle at 50% -20%, rgba(255, 54, 70, .22), transparent 46%),
    linear-gradient(180deg, color-mix(in srgb, var(--panel-solid) 96%, #20050a 4%), color-mix(in srgb, var(--panel) 94%, #160408 6%));
  color: var(--text);
  text-align: center;
  box-shadow:
    0 42px 110px rgba(0, 0, 0, .72),
    0 18px 46px rgba(0, 0, 0, .48),
    0 0 44px rgba(255, 45, 64, .34),
    0 0 0 1px rgba(255, 108, 119, .22) inset,
    0 1px 0 rgba(255, 255, 255, .07) inset;
  animation: account-termination-warning-in 220ms cubic-bezier(.2,.86,.28,1.08) both, account-termination-danger-glow 1.7s ease-in-out infinite 260ms;
}
.account-termination-warning::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 0 30%, rgba(255,255,255,.055) 42%, transparent 54%);
  transform: translateX(-100%);
  animation: account-termination-sheen 3.2s ease-in-out infinite 700ms;
}
.account-termination-icon {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  margin: 0 auto 15px;
  border: 2px solid rgba(255, 112, 123, .8);
  border-radius: 50%;
  background: linear-gradient(180deg, #ff4457, #a10e20);
  color: #fff;
  font-size: 42px;
  font-weight: 950;
  line-height: 1;
  box-shadow: 0 18px 36px rgba(0,0,0,.34), 0 0 30px rgba(255,49,70,.48), inset 0 1px 0 rgba(255,255,255,.28);
  text-shadow: 0 3px 7px rgba(0,0,0,.35);
}
.account-termination-warning > .eyebrow {
  position: relative;
  z-index: 1;
  margin: 0 0 5px;
  color: #ff6776;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .18em;
}
.account-termination-warning h2 {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #fff;
  font-size: clamp(22px, 3vw, 32px);
  line-height: 1.15;
  text-shadow: 0 5px 16px rgba(0,0,0,.42);
}
.account-termination-warning > p:not(.eyebrow) {
  position: relative;
  z-index: 1;
  max-width: 570px;
  margin: 13px auto 0;
  color: color-mix(in srgb, var(--text-2) 90%, #fff 10%);
  font-size: 12px;
  line-height: 1.65;
}
.account-termination-countdown {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: center;
  gap: 2px;
  width: min(240px, 100%);
  margin: 21px auto;
  padding: 13px 16px 15px;
  border: 1px solid rgba(255, 77, 93, .45);
  border-radius: 16px;
  background: rgba(75, 5, 14, .36);
  box-shadow: inset 0 0 25px rgba(255, 39, 61, .09), 0 13px 30px rgba(0,0,0,.2);
}
.account-termination-countdown span,
.account-termination-countdown small {
  color: #f0a5ad;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .04em;
}
.account-termination-countdown strong {
  color: #ff5365;
  font-size: 42px;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  text-shadow: 0 0 20px rgba(255, 50, 71, .48), 0 5px 12px rgba(0,0,0,.35);
}
.account-termination-actions {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 11px;
}
.account-termination-actions .button {
  min-height: 51px;
  height: auto;
  padding: 11px 16px;
  justify-content: center;
  border-radius: 13px;
  white-space: normal;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.35;
  box-shadow: 0 13px 28px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.11);
}
.account-termination-confirm {
  border: 1px solid #ff5061 !important;
  background: linear-gradient(180deg, #e82f45, #a50d20) !important;
  color: #fff !important;
  box-shadow: 0 15px 34px rgba(179, 11, 32, .34), 0 0 25px rgba(255, 47, 70, .18), inset 0 1px 0 rgba(255,255,255,.2) !important;
}
.account-termination-confirm:disabled {
  border-color: rgba(255, 89, 104, .32) !important;
  background: linear-gradient(180deg, rgba(113,29,39,.72), rgba(67,12,21,.78)) !important;
  color: rgba(255,255,255,.48) !important;
  cursor: not-allowed;
  filter: saturate(.55);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
}
.account-termination-overlay.is-ready .account-termination-confirm:not(:disabled) {
  animation: account-termination-confirm-ready 1.45s ease-in-out infinite;
}
.account-termination-cancel {
  border: 1px solid color-mix(in srgb, var(--success) 72%, #8dffc7 28%) !important;
  background: linear-gradient(180deg, color-mix(in srgb, var(--success) 84%, white 16%), color-mix(in srgb, var(--success) 88%, black 12%)) !important;
  color: #fff !important;
  box-shadow: 0 15px 34px color-mix(in srgb, var(--success) 24%, transparent), inset 0 1px 0 rgba(255,255,255,.2) !important;
}
.account-termination-cancel:hover,
.account-termination-cancel:focus-visible {
  transform: translateY(-2px);
  filter: brightness(1.08);
}
@keyframes account-termination-overlay-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes account-termination-warning-in { from { opacity: 0; transform: translateY(18px) scale(.965); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes account-termination-danger-glow {
  0%,100% { box-shadow: 0 42px 110px rgba(0,0,0,.72),0 18px 46px rgba(0,0,0,.48),0 0 34px rgba(255,45,64,.24),0 0 0 1px rgba(255,108,119,.22) inset,0 1px 0 rgba(255,255,255,.07) inset; }
  50% { box-shadow: 0 42px 110px rgba(0,0,0,.72),0 18px 46px rgba(0,0,0,.48),0 0 58px rgba(255,45,64,.44),0 0 0 1px rgba(255,108,119,.34) inset,0 1px 0 rgba(255,255,255,.07) inset; }
}
@keyframes account-termination-sheen { 0%,58% { transform: translateX(-110%); } 78%,100% { transform: translateX(110%); } }
@keyframes account-termination-confirm-ready { 0%,100% { box-shadow: 0 15px 34px rgba(179,11,32,.34),0 0 18px rgba(255,47,70,.18),inset 0 1px 0 rgba(255,255,255,.2); } 50% { box-shadow: 0 15px 36px rgba(179,11,32,.42),0 0 34px rgba(255,47,70,.42),inset 0 1px 0 rgba(255,255,255,.2); } }
@media (max-width: 620px) {
  .account-termination-overlay { padding: 12px; }
  .account-termination-warning { padding: 22px 16px 18px; }
  .account-termination-actions { grid-template-columns: 1fr; }
  .account-termination-cancel { grid-row: 1; }
}

/* K-Line Gold+ — Procurement Autopilot pro firmy */
.procurement-hero { position:relative; display:grid; grid-template-columns:auto minmax(0,1fr) minmax(180px,230px); align-items:center; gap:18px; overflow:hidden; margin-bottom:14px; padding:20px; border:1px solid color-mix(in srgb,#19c78b 38%,var(--border)); border-radius:18px; background:radial-gradient(circle at 12% 20%,rgba(25,199,139,.16),transparent 38%),linear-gradient(145deg,color-mix(in srgb,var(--panel-solid) 96%,transparent),color-mix(in srgb,var(--panel-alt) 94%,transparent)); box-shadow:0 18px 42px rgba(0,0,0,.17),0 0 30px rgba(25,199,139,.08); }
.procurement-hero::after { content:""; position:absolute; width:280px; height:280px; right:-120px; bottom:-165px; border:1px solid rgba(25,199,139,.18); border-radius:50%; box-shadow:0 0 80px rgba(25,199,139,.09); pointer-events:none; }
.procurement-radar { position:relative; display:grid; place-items:center; width:72px; height:72px; border:1px solid rgba(25,199,139,.34); border-radius:50%; background:radial-gradient(circle,rgba(25,199,139,.18),rgba(25,199,139,.03) 48%,transparent 50%); box-shadow:0 0 30px rgba(25,199,139,.13),inset 0 0 20px rgba(25,199,139,.07); }
.procurement-radar > span { position:relative; z-index:2; display:grid; place-items:center; width:36px; height:36px; border-radius:12px; background:rgba(25,199,139,.13); color:#39d8a1; }
.procurement-radar svg { width:20px; height:20px; }
.procurement-radar i,.procurement-radar b { position:absolute; inset:8px; border:1px solid rgba(25,199,139,.2); border-radius:50%; }
.procurement-radar b { inset:18px; }
.procurement-radar::after { content:""; position:absolute; left:50%; top:50%; width:31px; height:1px; transform-origin:left center; background:linear-gradient(90deg,rgba(57,216,161,.9),transparent); animation:procurement-radar-spin 2.4s linear infinite; }
@keyframes procurement-radar-spin { to { transform:rotate(360deg); } }
.procurement-hero h3 { margin:3px 0 6px; font-size:17px; }
.procurement-hero p { max-width:780px; margin:0; color:var(--text-2); font-size:10px; line-height:1.6; }
.procurement-hero-summary { position:relative; z-index:2; display:grid; gap:3px; padding:13px 14px; border:1px solid var(--border); border-radius:13px; background:color-mix(in srgb,var(--panel-solid) 90%,transparent); }
.procurement-hero-summary small { color:var(--muted); font-size:8px; text-transform:uppercase; letter-spacing:.06em; }
.procurement-hero-summary strong { color:#39d8a1; font-size:28px; line-height:1; }
.procurement-hero-summary span { color:var(--text-2); font-size:8px; }
.procurement-active { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:15px; margin:0 0 14px; padding:13px 15px; border:1px solid color-mix(in srgb,var(--accent) 26%,var(--border)); border-radius:14px; background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%,var(--panel-solid)),var(--panel-alt)); box-shadow:0 10px 28px rgba(0,0,0,.12); }
.procurement-active.running { border-color:rgba(25,199,139,.34); box-shadow:0 10px 28px rgba(0,0,0,.12),0 0 22px rgba(25,199,139,.07); }
.procurement-active.secured { border-color:color-mix(in srgb,var(--success) 52%,var(--border)); background:linear-gradient(135deg,color-mix(in srgb,var(--success) 13%,var(--panel-solid)),var(--panel-alt)); }
.procurement-active > div:first-child { display:grid; gap:3px; }
.procurement-active > div:first-child > small { color:#39d8a1; font-size:7.5px; font-weight:900; letter-spacing:.07em; }
.procurement-active > div:first-child > strong { font-size:11px; }
.procurement-active > div:first-child > p { margin:0; color:var(--muted); font-size:8px; }
.procurement-live-dot { display:inline-block; width:7px; height:7px; margin-right:5px; border-radius:50%; background:#39d8a1; box-shadow:0 0 12px rgba(57,216,161,.7); animation:procurement-live-pulse 1.5s ease-in-out infinite; }
@keyframes procurement-live-pulse { 50% { opacity:.45; transform:scale(.82); } }
.procurement-active-stats { display:flex; gap:7px; }
.procurement-active-stats span { display:grid; min-width:58px; gap:1px; padding:7px 8px; border:1px solid var(--border); border-radius:10px; background:color-mix(in srgb,var(--panel-solid) 82%,transparent); text-align:center; }
.procurement-active-stats b { font-size:13px; }
.procurement-active-stats small { color:var(--muted); font-size:6.8px; }
.procurement-form { margin-bottom:14px; padding:16px; border:1px solid var(--border); border-radius:16px; background:linear-gradient(145deg,var(--panel-solid),var(--panel-alt)); box-shadow:0 10px 28px rgba(0,0,0,.11); }
.procurement-form-head,.procurement-results-head { display:flex; align-items:flex-end; justify-content:space-between; gap:15px; margin-bottom:12px; }
.procurement-form-head > div,.procurement-results-head > div { display:grid; gap:2px; }
.procurement-form-head small,.procurement-results-head small { color:#39d8a1; font-size:7.5px; font-weight:900; letter-spacing:.075em; }
.procurement-form-head strong,.procurement-results-head strong { font-size:12px; }
.procurement-form-head > span,.procurement-results-head > span { color:var(--muted); font-size:8px; }
.procurement-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.procurement-fields label:not(.procurement-check) { display:grid; align-content:start; gap:5px; }
.procurement-fields label > span:first-child { color:var(--text-2); font-size:8px; font-weight:750; }
.procurement-fields select,.procurement-fields input[type="number"] { width:100%; height:36px; border:1px solid var(--border); border-radius:9px; outline:0; background:var(--input); color:var(--text); font-size:9px; }
.procurement-fields select { padding:0 28px 0 9px; }
.procurement-fields input[type="number"] { padding:0 9px; }
.procurement-load-select { grid-column:span 2; }
.procurement-check { display:flex; align-items:center; gap:8px; min-height:54px; padding:8px 10px; border:1px solid var(--border); border-radius:10px; background:color-mix(in srgb,var(--panel-alt) 86%,transparent); }
.procurement-check input { width:17px; height:17px; accent-color:var(--accent); }
.procurement-check span { display:grid; gap:2px; }
.procurement-check strong { font-size:8.5px; }
.procurement-check small { color:var(--muted); font-size:7.2px; line-height:1.35; }
.procurement-form-footer { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:12px; padding-top:12px; border-top:1px solid var(--border); }
.procurement-form-footer p { max-width:780px; margin:0; color:var(--muted); font-size:8px; line-height:1.5; }
.procurement-start { min-width:210px; background:linear-gradient(135deg,#0b8f69,#1bc891); box-shadow:0 10px 24px rgba(25,199,139,.19); }
.procurement-results,.procurement-offers { margin-bottom:14px; padding:15px; border:1px solid var(--border); border-radius:16px; background:var(--panel); box-shadow:0 10px 28px rgba(0,0,0,.1); }
.procurement-candidates { display:grid; gap:9px; }
.procurement-candidate { display:grid; grid-template-columns:62px minmax(0,1fr); gap:10px; padding:10px; border:1px solid var(--border); border-radius:13px; background:linear-gradient(145deg,color-mix(in srgb,var(--panel-solid) 96%,transparent),var(--panel-alt)); transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease; }
.procurement-candidate:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--accent) 30%,var(--border)); box-shadow:0 10px 24px rgba(0,0,0,.11); }
.procurement-candidate.best { border-color:rgba(25,199,139,.42); box-shadow:0 12px 28px rgba(25,199,139,.07); }
.procurement-candidate.status-offer,.procurement-candidate.status-interested { border-color:color-mix(in srgb,var(--success) 38%,var(--border)); }
.procurement-candidate.status-declined { opacity:.68; }
.procurement-rank { display:grid; align-content:center; justify-items:center; gap:3px; border-right:1px solid var(--border); }
.procurement-rank strong { display:grid; place-items:center; width:35px; height:35px; border-radius:50%; background:rgba(25,199,139,.11); color:#39d8a1; font-size:14px; }
.procurement-rank small { color:var(--muted); font-size:6.7px; text-align:center; }
.procurement-candidate-main { min-width:0; display:grid; gap:8px; }
.procurement-candidate-main header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.procurement-candidate-main header > div { display:grid; gap:2px; }
.procurement-candidate-main header small { color:var(--muted); font-size:7.2px; }
.procurement-candidate-main header strong { font-size:11px; }
.procurement-score { flex:0 0 auto; padding:5px 8px; border-radius:9px; background:rgba(25,199,139,.1); color:#39d8a1; font-size:7px; }
.procurement-score b { font-size:13px; }
.procurement-route-line { display:flex; align-items:center; gap:8px; padding:7px 9px; border-radius:9px; background:color-mix(in srgb,var(--panel-solid) 72%,transparent); }
.procurement-route-line > span:last-child { display:grid; gap:1px; }
.procurement-route-line strong { font-size:8.5px; }
.procurement-route-line small { color:var(--muted); font-size:7px; }
.procurement-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
.procurement-metrics span { display:grid; gap:2px; min-width:0; padding:6px 8px; border:1px solid var(--border); border-radius:8px; }
.procurement-metrics small { color:var(--muted); font-size:6.7px; }
.procurement-metrics strong { overflow:hidden; font-size:8.3px; text-overflow:ellipsis; white-space:nowrap; }
.procurement-metrics em { color:var(--accent-2); font-size:6.8px; font-style:normal; }
.procurement-candidate-actions { display:flex; align-items:center; gap:7px; justify-content:flex-end; }
.procurement-offers-list { display:grid; gap:9px; }
.procurement-offer { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:13px; padding:11px 12px; border:1px solid var(--border); border-radius:12px; background:var(--panel-alt); }
.procurement-offer.recommended { border-color:rgba(25,199,139,.48); background:linear-gradient(135deg,rgba(25,199,139,.08),var(--panel-alt)); box-shadow:0 9px 24px rgba(25,199,139,.07); }
.procurement-offer > div:first-child { display:grid; gap:2px; }
.procurement-offer > div:first-child small { color:#39d8a1; font-size:7px; font-weight:850; }
.procurement-offer > div:first-child strong { font-size:10px; }
.procurement-offer > div:first-child span { color:var(--muted); font-size:7px; }
.procurement-offer-price { display:grid; justify-items:end; gap:2px; min-width:135px; }
.procurement-offer-price > strong { font-size:14px; }
.procurement-offer-price > span,.procurement-offer-price > small { color:var(--muted); font-size:7px; }
.procurement-offer-actions { display:flex; gap:6px; }
.procurement-offers-empty,.procurement-no-load { display:flex; align-items:center; justify-content:center; gap:14px; min-height:170px; padding:25px; border:1px dashed var(--border-strong); border-radius:15px; background:var(--panel-alt); text-align:left; }
.procurement-offers-empty > span,.procurement-no-load > svg { width:38px; height:38px; color:#39d8a1; }
.procurement-offers-empty > div,.procurement-no-load > div { display:grid; gap:6px; max-width:620px; }
.procurement-offers-empty strong,.procurement-no-load strong { font-size:12px; }
.procurement-offers-empty p,.procurement-no-load p { margin:0; color:var(--muted); font-size:8.5px; line-height:1.5; }
.procurement-chat-request { width:min(470px,74vw); padding:12px; border:1px solid rgba(25,199,139,.38); border-radius:14px; background:linear-gradient(145deg,rgba(25,199,139,.08),var(--panel-solid)); box-shadow:0 12px 28px rgba(0,0,0,.16),0 0 20px rgba(25,199,139,.06); }
.procurement-chat-request.status-accepted { border-color:color-mix(in srgb,var(--success) 48%,var(--border)); }
.procurement-chat-request.status-rejected { border-color:color-mix(in srgb,var(--danger) 46%,var(--border)); }
.procurement-chat-head { display:flex; align-items:center; gap:9px; }
.procurement-chat-head > span { display:grid; place-items:center; width:31px; height:31px; border-radius:9px; background:rgba(25,199,139,.13); color:#39d8a1; }
.procurement-chat-head svg { width:16px; height:16px; }
.procurement-chat-head > div { display:grid; gap:1px; flex:1; }
.procurement-chat-head small { color:#39d8a1; font-size:7px; font-weight:900; letter-spacing:.07em; }
.procurement-chat-head strong { font-size:10px; }
.procurement-chat-head > b { color:#39d8a1; font-size:10px; }
.procurement-chat-request > p { margin:8px 0 0; color:var(--text-2); font-size:8.5px; line-height:1.55; white-space:pre-line; }
.procurement-chat-decision { margin-top:9px; padding:7px 9px; border-radius:9px; font-size:7.7px; font-weight:750; }
.procurement-chat-decision.accepted { background:color-mix(in srgb,var(--success) 12%,transparent); color:var(--success); }
.procurement-chat-decision.rejected { background:color-mix(in srgb,var(--danger) 10%,transparent); color:var(--danger); }
.procurement-chat-decision.pending { background:color-mix(in srgb,var(--accent) 10%,transparent); color:var(--accent-2); }
.dock-procurement-message { display:grid; gap:5px; max-width:94%; padding:9px 10px; border:1px solid rgba(25,199,139,.34); border-radius:14px; background:linear-gradient(145deg,rgba(25,199,139,.1),var(--panel-alt)); color:var(--text); }
.dock-procurement-message > strong { font-size:9px; }
.dock-procurement-message > small { color:var(--muted); font-size:7.2px; }
.dock-procurement-message.status-rejected { opacity:.72; border-color:color-mix(in srgb,var(--danger) 40%,var(--border)); }
.dock-procurement-message.status-accepted { border-color:color-mix(in srgb,var(--success) 45%,var(--border)); }

@media (max-width:980px) {
  .procurement-hero { grid-template-columns:auto minmax(0,1fr); }
  .procurement-hero-summary { grid-column:1 / -1; }
  .procurement-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .procurement-active { grid-template-columns:1fr; }
  .procurement-active-stats { flex-wrap:wrap; }
  .procurement-offer { grid-template-columns:1fr auto; }
  .procurement-offer-actions { grid-column:1 / -1; justify-content:flex-end; }
}
@media (max-width:680px) {
  .procurement-hero { grid-template-columns:1fr; }
  .procurement-radar { width:62px; height:62px; }
  .procurement-fields { grid-template-columns:1fr; }
  .procurement-load-select { grid-column:auto; }
  .procurement-form-footer { align-items:stretch; flex-direction:column; }
  .procurement-start { width:100%; }
  .procurement-candidate { grid-template-columns:1fr; }
  .procurement-rank { display:none; }
  .procurement-metrics { grid-template-columns:1fr; }
  .procurement-candidate-actions { justify-content:stretch; flex-wrap:wrap; }
  .procurement-offer { grid-template-columns:1fr; }
  .procurement-offer-price { justify-items:start; }
  .procurement-offer-actions { grid-column:auto; justify-content:flex-start; }
  .procurement-chat-request { width:min(100%,86vw); }
}

/* K-Line chat: náhled obrázku vloženého přes Ctrl+V před odesláním. */
.chat-paste-preview { grid-column:1 / -1; position:relative; overflow:hidden; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:9px; min-height:58px; padding:7px 8px; border:1px solid color-mix(in srgb,var(--accent) 26%,var(--border)); border-radius:11px; background:color-mix(in srgb,var(--panel-alt) 90%,transparent); box-shadow:0 8px 20px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.045); }
.chat-paste-preview img { display:block; width:48px; height:44px; object-fit:cover; border-radius:8px; background:rgba(0,0,0,.16); box-shadow:0 5px 13px rgba(0,0,0,.18); }
.chat-paste-preview > span { min-width:0; display:grid; gap:2px; }
.chat-paste-preview strong { color:var(--text); font-size:9px; }
.chat-paste-preview small { overflow:hidden; color:var(--muted); font-size:7.8px; text-overflow:ellipsis; white-space:nowrap; }
.chat-paste-preview > button { display:grid; place-items:center; width:27px; height:27px; padding:0; border:1px solid color-mix(in srgb,var(--danger) 28%,var(--border)); border-radius:8px; background:color-mix(in srgb,var(--danger) 8%,var(--panel-solid)); color:var(--danger); font-size:16px; cursor:pointer; }
.chat-paste-preview.compact { min-height:46px; gap:6px; padding:5px 6px; border-radius:9px; }
.chat-paste-preview.compact img { width:38px; height:34px; border-radius:6px; }
.chat-paste-preview.compact strong { font-size:8px; }
.chat-paste-preview.compact small { font-size:7px; }
.chat-paste-preview.compact > button { width:23px; height:23px; border-radius:6px; font-size:14px; }

/* K-Line Autopilot — návod pro Gold+ firmy + fotografie míst u nákladů */
.procurement-hero { grid-template-columns:auto minmax(0,1fr) minmax(330px,420px); }
.procurement-hero-tools { position:relative; z-index:3; display:flex; align-items:stretch; justify-content:flex-end; gap:10px; min-width:0; }
.procurement-guide-button { align-self:center; min-width:96px; min-height:44px; gap:6px; border-color:color-mix(in srgb,#39d8a1 34%,var(--border)); background:linear-gradient(145deg,color-mix(in srgb,#39d8a1 8%,var(--panel-alt)),var(--panel-solid)); }
.procurement-guide-button svg { width:15px; height:15px; }
.procurement-hero-tools .procurement-hero-summary { flex:1 1 190px; min-width:180px; }
.procurement-no-load-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:4px; }

html.procurement-guide-open { overflow:hidden; }
.procurement-guide-overlay { position:fixed; z-index:12000; inset:0; display:grid; place-items:stretch; padding:18px; background:rgba(2,7,13,.88); backdrop-filter:blur(16px); animation:procurement-guide-fade .18s ease-out; }
.procurement-guide-shell { position:relative; display:grid; grid-template-rows:auto minmax(0,1fr) auto; width:min(1500px,100%); height:100%; margin:auto; overflow:hidden; border:1px solid color-mix(in srgb,#39d8a1 42%,var(--border)); border-radius:22px; background:radial-gradient(circle at 8% 4%,rgba(25,199,139,.15),transparent 28%),linear-gradient(145deg,color-mix(in srgb,var(--panel-solid) 98%,#07131d 2%),color-mix(in srgb,var(--panel) 97%,#06101a 3%)); box-shadow:0 40px 120px rgba(0,0,0,.72),0 0 58px rgba(25,199,139,.13),inset 0 1px 0 rgba(255,255,255,.05); animation:procurement-guide-rise .22s cubic-bezier(.2,.8,.2,1); }
.procurement-guide-head { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 22px; border-bottom:1px solid color-mix(in srgb,var(--border) 88%,transparent); background:color-mix(in srgb,var(--panel-solid) 90%,transparent); }
.procurement-guide-brand { display:flex; align-items:center; gap:13px; min-width:0; }
.procurement-guide-brand > span { display:grid; place-items:center; width:48px; height:48px; flex:0 0 auto; border:1px solid rgba(57,216,161,.32); border-radius:15px; background:rgba(57,216,161,.11); color:#39d8a1; box-shadow:0 0 24px rgba(57,216,161,.10); }
.procurement-guide-brand > span svg { width:22px; height:22px; }
.procurement-guide-brand > div { display:grid; gap:2px; min-width:0; }
.procurement-guide-brand small { color:#39d8a1; font-size:8px; font-weight:900; letter-spacing:.08em; }
.procurement-guide-brand strong { font-size:18px; }
.procurement-guide-brand p { margin:0; color:var(--muted); font-size:9px; }
.procurement-guide-close { display:grid; place-items:center; width:40px; height:40px; flex:0 0 auto; border:1px solid var(--border); border-radius:12px; background:var(--panel-alt); color:var(--text); cursor:pointer; font-size:26px; line-height:1; transition:transform .15s ease,border-color .15s ease,background .15s ease; }
.procurement-guide-close:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--danger) 42%,var(--border)); background:color-mix(in srgb,var(--danger) 8%,var(--panel-alt)); }
.procurement-guide-scroll { min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:20px 22px 24px; scrollbar-gutter:stable; }
.procurement-guide-intro { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr); align-items:center; gap:20px; margin-bottom:18px; padding:22px; border:1px solid rgba(57,216,161,.24); border-radius:18px; background:linear-gradient(135deg,rgba(57,216,161,.08),color-mix(in srgb,var(--panel-alt) 94%,transparent)); }
.procurement-guide-intro h2 { margin:6px 0 8px; font-size:22px; }
.procurement-guide-intro p { max-width:900px; margin:0; color:var(--text-2); font-size:10px; line-height:1.7; }
.procurement-guide-live-stats { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.procurement-guide-live-stats span { display:grid; gap:4px; padding:14px; border:1px solid var(--border); border-radius:13px; background:color-mix(in srgb,var(--panel-solid) 86%,transparent); }
.procurement-guide-live-stats small { color:var(--muted); font-size:7.5px; }
.procurement-guide-live-stats strong { color:#39d8a1; font-size:27px; line-height:1; }
.procurement-guide-section { margin-top:16px; padding:18px; border:1px solid var(--border); border-radius:17px; background:color-mix(in srgb,var(--panel) 92%,transparent); box-shadow:0 10px 28px rgba(0,0,0,.08); }
.procurement-guide-section-title { display:flex; align-items:center; gap:10px; margin-bottom:13px; }
.procurement-guide-section-title > span { display:grid; place-items:center; width:34px; height:34px; flex:0 0 auto; border-radius:11px; background:rgba(57,216,161,.12); color:#39d8a1; font-size:14px; font-weight:900; }
.procurement-guide-section-title > div { display:grid; gap:1px; }
.procurement-guide-section-title small { color:#39d8a1; font-size:7.5px; font-weight:900; letter-spacing:.07em; }
.procurement-guide-section-title h3 { margin:0; font-size:15px; }
.procurement-guide-section-title.compact { margin-bottom:10px; }
.procurement-guide-requirements { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.procurement-guide-requirements article { display:grid; align-content:start; gap:6px; min-height:132px; padding:14px; border:1px solid var(--border); border-radius:13px; background:var(--panel-alt); }
.procurement-guide-requirements article > span { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:color-mix(in srgb,var(--accent-soft) 55%,transparent); color:var(--accent-2); }
.procurement-guide-requirements svg { width:17px; height:17px; }
.procurement-guide-requirements strong,.procurement-guide-settings strong { font-size:10px; }
.procurement-guide-requirements p,.procurement-guide-settings p { margin:0; color:var(--muted); font-size:8.2px; line-height:1.55; }
.procurement-guide-settings { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.procurement-guide-settings article { display:grid; align-content:start; gap:5px; min-height:105px; padding:12px; border:1px solid var(--border); border-radius:12px; background:color-mix(in srgb,var(--panel-alt) 90%,transparent); }
.procurement-guide-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.procurement-guide-flow article { position:relative; display:grid; grid-template-columns:auto auto minmax(0,1fr); align-items:start; gap:9px; min-height:116px; padding:13px; border:1px solid var(--border); border-radius:13px; background:var(--panel-alt); }
.procurement-guide-flow article > b { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:#39d8a1; color:#04120d; font-size:8px; }
.procurement-guide-flow article > span { display:grid; place-items:center; width:31px; height:31px; border-radius:9px; background:rgba(57,216,161,.10); color:#39d8a1; }
.procurement-guide-flow article > span svg { width:16px; height:16px; }
.procurement-guide-flow article > div { display:grid; gap:4px; }
.procurement-guide-flow strong { font-size:9.5px; }
.procurement-guide-flow p { margin:0; color:var(--muted); font-size:7.9px; line-height:1.55; }
.procurement-guide-two-column { display:grid; grid-template-columns:1fr 1fr; gap:12px; background:transparent; border:0; padding:0; box-shadow:none; }
.procurement-guide-do,.procurement-guide-dont { padding:17px; border:1px solid var(--border); border-radius:16px; background:var(--panel); }
.procurement-guide-do { border-color:color-mix(in srgb,var(--success) 30%,var(--border)); }
.procurement-guide-dont { border-color:color-mix(in srgb,var(--warning) 34%,var(--border)); }
.procurement-guide-do ul,.procurement-guide-dont ul { display:grid; gap:7px; margin:0; padding-left:20px; color:var(--text-2); font-size:8.5px; line-height:1.45; }
.procurement-guide-note { display:flex; align-items:flex-start; gap:11px; margin-top:16px; padding:15px 16px; border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border)); border-radius:14px; background:color-mix(in srgb,var(--accent-soft) 20%,var(--panel-alt)); }
.procurement-guide-note > span { color:var(--accent-2); }
.procurement-guide-note svg { width:20px; height:20px; }
.procurement-guide-note > div { display:grid; gap:4px; }
.procurement-guide-note strong { font-size:10px; }
.procurement-guide-note p { margin:0; color:var(--muted); font-size:8.3px; line-height:1.55; }
.procurement-guide-footer { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 22px; border-top:1px solid var(--border); background:color-mix(in srgb,var(--panel-solid) 94%,transparent); }
.procurement-guide-footer > span { max-width:900px; color:var(--muted); font-size:8.5px; line-height:1.45; }
.procurement-guide-footer .button { min-width:190px; }
@keyframes procurement-guide-fade { from { opacity:0; } to { opacity:1; } }
@keyframes procurement-guide-rise { from { opacity:0; transform:translateY(10px) scale(.992); } to { opacity:1; transform:none; } }

.load-photo-field small { color:var(--muted); font-size:8px; line-height:1.45; }
.load-detail-photos { display:grid; gap:10px; margin-top:2px; padding:12px; border:1px solid var(--border); border-radius:14px; background:color-mix(in srgb,var(--panel-alt) 90%,transparent); }
.load-detail-photos-head { display:flex; align-items:end; justify-content:space-between; gap:12px; }
.load-detail-photos-head > div { display:grid; gap:2px; }
.load-detail-photos-head small { color:var(--accent-2); font-size:7.5px; font-weight:900; letter-spacing:.07em; }
.load-detail-photos-head strong { font-size:11px; }
.load-detail-photos-head > span { display:inline-flex; align-items:center; gap:5px; color:var(--muted); font-size:7.5px; }
.load-detail-photos-head svg { width:12px; height:12px; }
.load-detail-photo-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.load-detail-photo-grid.single { grid-template-columns:minmax(0,620px); }
.load-detail-photo-card { position:relative; overflow:hidden; min-width:0; padding:0; border:1px solid var(--border); border-radius:12px; background:#07111d; color:white; cursor:zoom-in; box-shadow:0 10px 24px rgba(0,0,0,.16); }
.load-detail-photo-card img { display:block; width:100%; height:220px; object-fit:cover; transition:transform .22s ease,filter .22s ease; }
.load-detail-photo-grid.single .load-detail-photo-card img { height:min(360px,38vh); object-fit:contain; }
.load-detail-photo-card:hover img { transform:scale(1.018); filter:brightness(1.04); }
.load-detail-photo-card > span { position:absolute; left:8px; right:8px; bottom:8px; overflow:hidden; padding:5px 7px; border-radius:8px; background:rgba(3,9,16,.72); color:#f3f8ff; font-size:7.5px; text-overflow:ellipsis; white-space:nowrap; backdrop-filter:blur(8px); }

@media (max-width:980px) {
  .procurement-hero { grid-template-columns:auto minmax(0,1fr); }
  .procurement-hero-tools { grid-column:1 / -1; justify-content:flex-end; }
  .procurement-guide-requirements,.procurement-guide-settings { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .procurement-guide-flow { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:700px) {
  .procurement-guide-overlay { padding:0; }
  .procurement-guide-shell { border-radius:0; border-left:0; border-right:0; }
  .procurement-guide-head { padding:13px 14px; }
  .procurement-guide-brand p { display:none; }
  .procurement-guide-scroll { padding:14px; }
  .procurement-guide-intro { grid-template-columns:1fr; padding:16px; }
  .procurement-guide-requirements,.procurement-guide-settings,.procurement-guide-flow,.procurement-guide-two-column { grid-template-columns:1fr; }
  .procurement-guide-footer { align-items:stretch; flex-direction:column; padding:12px 14px; }
  .procurement-guide-footer .button { width:100%; }
  .procurement-hero-tools { align-items:stretch; flex-direction:column; }
  .procurement-guide-button { width:100%; }
  .load-detail-photo-grid { grid-template-columns:1fr; }
  .load-detail-photo-card img { height:230px; }
}


/* K-Line: opakované upozornění na nepřečtenou zprávu po 5 minutách */
html.missed-message-reminder-open { overflow:hidden; }
.missed-message-reminder-layer { position:fixed; z-index:9996; inset:0; display:grid; place-items:center; padding:22px; background:rgba(2,7,13,.52); backdrop-filter:blur(7px); animation:missed-message-layer-in .2s ease both; }
.missed-message-reminder-card { position:relative; isolation:isolate; width:min(560px,calc(100vw - 36px)); padding:24px; border:1px solid rgba(255,209,47,.72); border-radius:24px; background:linear-gradient(160deg,color-mix(in srgb,var(--panel-solid) 96%,#231a00 4%),color-mix(in srgb,var(--panel-alt) 94%,#382600 6%)); color:var(--text); box-shadow:0 34px 90px rgba(0,0,0,.58),0 0 34px rgba(255,201,35,.18),inset 0 1px 0 rgba(255,255,255,.08); }
.missed-message-reminder-card::before { content:""; position:absolute; z-index:-2; inset:-4px; padding:4px; border-radius:27px; background:conic-gradient(from 0deg,transparent 0 10%,#ffbb00 15%,#fff2a0 20%,#ffd326 25%,transparent 32% 58%,#ffcf31 66%,#fff0a4 70%,transparent 78% 100%); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; animation:missed-message-border-run 2.6s linear infinite; pointer-events:none; }
.missed-message-reminder-card::after { content:""; position:absolute; z-index:-3; inset:-13px; border-radius:34px; border:2px solid rgba(255,207,35,.24); box-shadow:0 0 18px rgba(255,199,28,.48),0 0 42px rgba(255,198,31,.22); animation:missed-message-glow-pulse 1.35s ease-in-out infinite; pointer-events:none; }
.missed-message-reminder-icon { display:grid; place-items:center; width:52px; height:52px; margin:0 auto 12px; border:1px solid rgba(255,214,57,.58); border-radius:17px; background:linear-gradient(145deg,rgba(255,213,45,.23),rgba(255,174,0,.08)); color:#ffe06a; font-size:30px; font-weight:950; text-shadow:0 0 18px rgba(255,215,67,.65); box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 10px 30px rgba(255,190,0,.13); }
.missed-message-reminder-copy { text-align:center; }
.missed-message-reminder-copy .eyebrow { margin:0 0 5px; color:#ffd84f; font-size:8px; font-weight:900; letter-spacing:.12em; }
.missed-message-reminder-copy h2 { margin:0; color:var(--text); font-size:22px; line-height:1.16; }
.missed-message-reminder-copy > p:last-child { margin:8px 0 0; color:var(--text-2); font-size:10px; line-height:1.5; }
.missed-message-reminder-message { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:start; gap:11px; margin-top:18px; padding:13px; border:1px solid color-mix(in srgb,#ffd43b 26%,var(--border)); border-radius:15px; background:color-mix(in srgb,var(--panel-alt) 88%,#2e2200 12%); box-shadow:inset 0 1px 0 rgba(255,255,255,.04); }
.missed-message-reminder-message .profile-image { width:42px; height:42px; }
.missed-message-reminder-message > div:last-child { min-width:0; display:grid; gap:3px; }
.missed-message-reminder-message strong { overflow:hidden; color:var(--text); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.missed-message-reminder-message small { overflow:hidden; color:#e6bd3e; font-size:8px; font-weight:750; text-overflow:ellipsis; white-space:nowrap; }
.missed-message-reminder-message p { margin:4px 0 0; color:var(--text-2); font-size:10px; line-height:1.45; overflow-wrap:anywhere; }
.missed-message-reminder-message time { margin-top:2px; color:var(--muted); font-size:8px; }
.missed-message-reminder-actions { display:grid; grid-template-columns:1fr 1.4fr; gap:9px; margin-top:18px; }
.missed-message-reminder-actions .button { min-height:42px; font-weight:850; }
.missed-message-reminder-actions .button-primary { box-shadow:0 0 0 1px rgba(255,220,70,.12),0 10px 28px color-mix(in srgb,var(--accent-glow) 22%,transparent); }
@keyframes missed-message-border-run { to { transform:rotate(360deg); } }
@keyframes missed-message-glow-pulse { 0%,100% { opacity:.55; transform:scale(.994); } 50% { opacity:1; transform:scale(1.008); } }
@keyframes missed-message-layer-in { from { opacity:0; } to { opacity:1; } }
@media(max-width:620px) { .missed-message-reminder-layer { padding:14px; } .missed-message-reminder-card { padding:19px 16px; border-radius:20px; } .missed-message-reminder-copy h2 { font-size:19px; } .missed-message-reminder-actions { grid-template-columns:1fr; } }

/* K-Line: upozornění na nově přijaté hodnocení */
html.partner-review-notice-open { overflow:hidden; }
.partner-review-notice-layer { position:fixed; z-index:9997; inset:0; display:grid; place-items:center; padding:22px; background:rgba(7,3,10,.56); backdrop-filter:blur(8px); animation:partner-review-layer-in .22s ease both; }
.partner-review-notice-card { position:relative; isolation:isolate; width:min(590px,calc(100vw - 36px)); padding:27px; border:1px solid rgba(255,104,195,.72); border-radius:26px; background:linear-gradient(155deg,color-mix(in srgb,var(--panel-solid) 95%,#351126 5%),color-mix(in srgb,var(--panel-alt) 91%,#4b1238 9%)); color:var(--text); box-shadow:0 38px 100px rgba(0,0,0,.62),0 0 38px rgba(255,69,173,.22),inset 0 1px 0 rgba(255,255,255,.09); }
.partner-review-notice-card::before { content:""; position:absolute; z-index:-2; inset:-4px; padding:4px; border-radius:30px; background:conic-gradient(from 0deg,transparent 0 9%,#ff3ca6 14%,#ffd4ee 19%,#ff76c4 24%,transparent 31% 55%,#d94cff 63%,#ffd2f1 69%,#ff4baa 74%,transparent 82% 100%); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; animation:partner-review-border-run 2.35s linear infinite; pointer-events:none; filter:drop-shadow(0 0 7px rgba(255,70,177,.78)); }
.partner-review-notice-card::after { content:""; position:absolute; z-index:-3; inset:-14px; border:2px solid rgba(255,94,190,.22); border-radius:37px; box-shadow:0 0 20px rgba(255,67,174,.5),0 0 52px rgba(223,70,255,.25); animation:partner-review-glow-pulse 1.25s ease-in-out infinite; pointer-events:none; }
.partner-review-notice-icon { display:grid; place-items:center; width:58px; height:58px; margin:0 auto 12px; border:1px solid rgba(255,139,207,.62); border-radius:19px; background:radial-gradient(circle at 35% 28%,rgba(255,227,244,.24),transparent 34%),linear-gradient(145deg,rgba(255,72,174,.28),rgba(173,64,255,.11)); color:#ff9fd5; font-size:32px; line-height:1; text-shadow:0 0 12px rgba(255,132,211,.95),0 0 28px rgba(255,66,171,.62); box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 12px 34px rgba(255,53,164,.15); animation:partner-review-main-star 1.7s ease-in-out infinite; }
.partner-review-notice-copy { position:relative; z-index:2; text-align:center; }
.partner-review-notice-copy .eyebrow { margin:0 0 5px; color:#ff83c9; font-size:8px; font-weight:900; letter-spacing:.13em; }
.partner-review-notice-copy h2 { margin:0; color:var(--text); font-size:24px; line-height:1.14; text-shadow:0 0 18px rgba(255,97,190,.18); }
.partner-review-notice-copy > p:last-child { margin:8px auto 0; max-width:440px; color:var(--text-2); font-size:10px; line-height:1.5; }
.partner-review-notice-review { position:relative; z-index:2; display:grid; gap:10px; margin-top:19px; padding:15px 16px; border:1px solid color-mix(in srgb,#ff65bc 30%,var(--border)); border-radius:16px; background:color-mix(in srgb,var(--panel-alt) 87%,#45102f 13%); box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 12px 30px rgba(0,0,0,.13); }
.partner-review-notice-review header { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.partner-review-notice-review header > div { min-width:0; display:grid; gap:3px; }
.partner-review-notice-review strong { overflow:hidden; color:var(--text); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.partner-review-notice-review small { color:#e79ac9; font-size:8px; }
.partner-review-notice-review header > span { flex:0 0 auto; color:#ff8bcf; font-size:17px; letter-spacing:2px; text-shadow:0 0 13px rgba(255,86,184,.62); }
.partner-review-notice-review p { margin:0; color:var(--text-2); font-size:10px; line-height:1.55; overflow-wrap:anywhere; }
.partner-review-notice-actions { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1.45fr; gap:10px; margin-top:19px; }
.partner-review-notice-actions .button { min-height:43px; font-weight:850; }
.partner-review-notice-actions .button-primary { border-color:rgba(255,104,195,.48); background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 72%,#ff3d9f 28%),color-mix(in srgb,var(--accent-2) 72%,#d94cff 28%)); box-shadow:0 10px 30px rgba(255,56,166,.2),0 0 0 1px rgba(255,176,221,.08); }
.partner-review-stars-scene { position:absolute; z-index:1; inset:0; overflow:hidden; border-radius:inherit; pointer-events:none; }
.partner-review-stars-scene span { position:absolute; color:#ff91d1; font-size:13px; opacity:0; text-shadow:0 0 10px rgba(255,103,194,.9); animation:partner-review-star-float 2.8s ease-in-out infinite; }
.partner-review-stars-scene span:nth-child(1) { left:8%; top:18%; animation-delay:-.2s; }
.partner-review-stars-scene span:nth-child(2) { right:10%; top:21%; font-size:10px; animation-delay:-1.3s; }
.partner-review-stars-scene span:nth-child(3) { left:15%; bottom:19%; font-size:9px; animation-delay:-2.1s; }
.partner-review-stars-scene span:nth-child(4) { right:17%; bottom:16%; font-size:12px; animation-delay:-.8s; }
.partner-review-stars-scene span:nth-child(5) { left:32%; top:9%; font-size:8px; animation-delay:-1.8s; }
.partner-review-stars-scene span:nth-child(6) { right:31%; top:11%; font-size:8px; animation-delay:-2.5s; }
.partner-review-stars-scene span:nth-child(7) { right:5%; top:49%; font-size:9px; animation-delay:-1.1s; }
@keyframes partner-review-border-run { to { transform:rotate(360deg); } }
@keyframes partner-review-glow-pulse { 0%,100% { opacity:.5; transform:scale(.994); } 50% { opacity:1; transform:scale(1.01); } }
@keyframes partner-review-main-star { 0%,100% { transform:scale(1) rotate(-4deg); filter:brightness(.96); } 50% { transform:scale(1.09) rotate(5deg); filter:brightness(1.18); } }
@keyframes partner-review-star-float { 0% { opacity:0; transform:translateY(9px) scale(.65) rotate(-18deg); } 22%,72% { opacity:.78; } 55% { transform:translateY(-8px) scale(1.12) rotate(12deg); } 100% { opacity:0; transform:translateY(-18px) scale(.7) rotate(28deg); } }
@keyframes partner-review-layer-in { from { opacity:0; } to { opacity:1; } }
@media(max-width:620px) { .partner-review-notice-layer { padding:14px; } .partner-review-notice-card { padding:21px 16px; border-radius:21px; } .partner-review-notice-copy h2 { font-size:21px; } .partner-review-notice-review header { align-items:flex-start; flex-direction:column; gap:7px; } .partner-review-notice-actions { grid-template-columns:1fr; } }

/* Ukončené účty: neveřejný právní a účetní archiv Administrátora */
.terminated-archive-records {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}
.terminated-archive-records article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 12px;
  border: 1px solid color-mix(in srgb, var(--border) 82%, transparent);
  border-radius: 12px;
  background: color-mix(in srgb, var(--panel-solid) 88%, transparent);
}
.terminated-archive-records article > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.terminated-archive-records article strong,
.terminated-archive-records article small {
  overflow-wrap: anywhere;
}
.terminated-archive-records article > div:last-child:not(:first-child) {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}


/* Ukončené účty: přímý prohlížeč přepravní dokumentace */
.terminated-archive-transports-section { margin-top:18px; }
.terminated-archive-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:12px; }
.terminated-archive-section-head h3 { margin:3px 0 4px; }
.terminated-archive-section-head p:not(.eyebrow) { margin:0; color:var(--muted); max-width:820px; }
.terminated-archive-transports { display:grid; gap:14px; }
.terminated-archive-transport { border:1px solid color-mix(in srgb,var(--border) 88%,transparent); border-radius:16px; background:color-mix(in srgb,var(--panel-solid) 93%,transparent); overflow:hidden; box-shadow:0 10px 26px rgba(22,38,58,.08); }
.terminated-archive-transport > header { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding:15px 16px; border-bottom:1px solid color-mix(in srgb,var(--border) 78%,transparent); }
.terminated-archive-transport > header small,.terminated-archive-transport > header span { display:block; color:var(--muted); }
.terminated-archive-transport > header h4 { margin:3px 0 4px; font-size:17px; }
.terminated-archive-transport-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.terminated-archive-transport-meta { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; padding:11px 16px; background:color-mix(in srgb,var(--panel) 72%,transparent); }
.terminated-archive-transport-meta span { min-width:0; }
.terminated-archive-transport-meta small,.terminated-archive-transport-meta strong { display:block; overflow-wrap:anywhere; }
.terminated-archive-transport-meta small { color:var(--muted); font-size:10px; }
.terminated-archive-files { display:grid; gap:8px; padding:12px 16px 16px; }
.terminated-archive-file { display:grid; grid-template-columns:52px minmax(0,1fr) auto; align-items:center; gap:12px; padding:9px 10px; border:1px solid color-mix(in srgb,var(--border) 78%,transparent); border-radius:12px; background:color-mix(in srgb,var(--panel-solid) 88%,transparent); }
.terminated-archive-thumb { width:52px; height:52px; padding:0; border:0; border-radius:9px; overflow:hidden; background:#111827; cursor:pointer; box-shadow:0 4px 12px rgba(15,23,42,.16); }
.terminated-archive-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.terminated-archive-file-icon { width:52px; height:52px; display:grid; place-items:center; border-radius:9px; background:color-mix(in srgb,var(--accent) 11%,var(--panel-solid)); color:var(--accent); }
.terminated-archive-file-copy { min-width:0; display:grid; gap:2px; }
.terminated-archive-file-copy small,.terminated-archive-file-copy span { color:var(--muted); font-size:10px; }
.terminated-archive-file-copy strong { overflow-wrap:anywhere; }
.terminated-archive-file-actions { display:flex; gap:7px; flex-wrap:wrap; justify-content:flex-end; }
@media(max-width:780px) { .terminated-archive-section-head,.terminated-archive-transport > header { flex-direction:column; } .terminated-archive-transport-actions { justify-content:flex-start; } .terminated-archive-transport-meta { grid-template-columns:1fr 1fr; } .terminated-archive-file { grid-template-columns:48px 1fr; } .terminated-archive-file-actions { grid-column:1/-1; justify-content:flex-start; } }

/* Gold+ central weather warning — independent from existing transport weather UI */
html.weather-center-notice-open { overflow:hidden; }
.weather-center-notice-layer { position:fixed; z-index:9998; inset:0; display:grid; place-items:center; padding:22px; background:rgba(12,2,4,.58); backdrop-filter:blur(9px); animation:weather-center-layer-in .22s ease both; }
.weather-center-notice-card { position:relative; isolation:isolate; width:min(620px,calc(100vw - 36px)); padding:28px; border:1px solid rgba(255,74,74,.76); border-radius:27px; background:linear-gradient(155deg,color-mix(in srgb,var(--panel-solid) 95%,#3b0b0b 5%),color-mix(in srgb,var(--panel-alt) 90%,#5b1111 10%)); color:var(--text); box-shadow:0 40px 110px rgba(0,0,0,.65),0 0 42px rgba(255,42,42,.25),inset 0 1px 0 rgba(255,255,255,.08); overflow:hidden; }
.weather-center-notice-card::before { content:""; position:absolute; z-index:-2; inset:-4px; padding:4px; border-radius:31px; background:conic-gradient(from 0deg,transparent 0 8%,#ff2626 13%,#ffd0d0 18%,#ff5959 23%,transparent 31% 55%,#ff1717 63%,#fff0f0 68%,#ff5050 73%,transparent 82% 100%); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; animation:weather-center-border-run 2.1s linear infinite; pointer-events:none; filter:drop-shadow(0 0 8px rgba(255,37,37,.88)); }
.weather-center-notice-card::after { content:""; position:absolute; z-index:-3; inset:-15px; border:2px solid rgba(255,56,56,.24); border-radius:39px; box-shadow:0 0 22px rgba(255,30,30,.58),0 0 58px rgba(255,38,38,.3); animation:weather-center-glow-pulse 1.08s ease-in-out infinite; pointer-events:none; }
.weather-center-storm-scene { position:absolute; inset:0; z-index:0; overflow:hidden; pointer-events:none; opacity:.8; }
.weather-center-lightning { position:absolute; top:18px; right:42px; color:#fff4c7; font-size:58px; line-height:1; text-shadow:0 0 8px #fff,0 0 24px rgba(255,236,84,.95),0 0 45px rgba(255,55,32,.62); animation:weather-center-lightning 2.7s steps(1,end) infinite; }
.weather-center-wind { position:absolute; left:-35%; top:31%; color:rgba(255,224,224,.34); font-size:90px; font-weight:300; letter-spacing:-14px; transform:scaleX(2.4); animation:weather-center-wind 3.8s linear infinite; }
.weather-center-wind.second { top:58%; animation-duration:5.1s; animation-delay:-1.8s; opacity:.55; }
.weather-center-notice-icon { position:relative; z-index:2; display:grid; place-items:center; width:62px; height:62px; margin:0 auto 13px; border:1px solid rgba(255,113,113,.65); border-radius:20px; background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.2),transparent 35%),linear-gradient(145deg,rgba(255,53,53,.31),rgba(124,0,0,.14)); font-size:34px; box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 12px 36px rgba(255,28,28,.18); animation:weather-center-icon-pulse 1.45s ease-in-out infinite; }
.weather-center-notice-copy { position:relative; z-index:2; text-align:center; }
.weather-center-notice-copy .eyebrow { margin:0 0 5px; color:#ff7777; font-size:8px; font-weight:900; letter-spacing:.14em; }
.weather-center-notice-copy h2 { margin:0; color:var(--text); font-size:25px; line-height:1.14; text-shadow:0 0 18px rgba(255,54,54,.24); }
.weather-center-notice-copy > p:last-child { margin:8px auto 0; max-width:470px; color:var(--text-2); font-size:10px; line-height:1.5; }
.weather-center-notice-warning { position:relative; z-index:2; display:grid; gap:9px; margin-top:20px; padding:16px 17px; border:1px solid color-mix(in srgb,#ff5555 34%,var(--border)); border-radius:17px; background:color-mix(in srgb,var(--panel-alt) 86%,#4e0d0d 14%); box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 14px 34px rgba(0,0,0,.16); }
.weather-center-notice-warning > strong { color:#ff9b9b; font-size:12px; line-height:1.4; }
.weather-center-notice-warning > p { margin:0; color:var(--text-2); font-size:10px; line-height:1.55; }
.weather-center-notice-warning > div { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.weather-center-notice-warning > div span { display:grid; gap:2px; padding:8px 10px; border-radius:11px; background:rgba(255,65,65,.07); color:var(--muted); font-size:8px; }
.weather-center-notice-warning > div b { color:var(--text); font-size:9px; }
.weather-center-notice-actions { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1.45fr; gap:10px; margin-top:20px; }
.weather-center-notice-actions .button { min-height:44px; font-weight:850; }
.weather-center-notice-actions .button-primary { border-color:rgba(255,88,88,.52); background:linear-gradient(135deg,#b81919,#f04444); box-shadow:0 11px 32px rgba(255,37,37,.23),0 0 0 1px rgba(255,186,186,.08); }
@keyframes weather-center-border-run { to { transform:rotate(360deg); } }
@keyframes weather-center-glow-pulse { 0%,100% { opacity:.52; transform:scale(.993); } 50% { opacity:1; transform:scale(1.009); } }
@keyframes weather-center-layer-in { from { opacity:0; } to { opacity:1; } }
@keyframes weather-center-icon-pulse { 0%,100% { transform:scale(1); filter:brightness(1); } 50% { transform:scale(1.07); filter:brightness(1.25); } }
@keyframes weather-center-lightning { 0%,14%,18%,58%,62%,100% { opacity:.05; transform:translateY(-4px) scale(.94); } 15%,17%,59%,61% { opacity:1; transform:translateY(0) scale(1.08); } }
@keyframes weather-center-wind { from { transform:translateX(0) scaleX(2.4); } to { transform:translateX(155%) scaleX(2.4); } }
@media(max-width:620px) { .weather-center-notice-layer { padding:14px; } .weather-center-notice-card { padding:22px 16px; border-radius:22px; } .weather-center-notice-copy h2 { font-size:21px; } .weather-center-notice-warning > div { grid-template-columns:1fr; } .weather-center-notice-actions { grid-template-columns:1fr; } }


/* Profil a nastavení · centrální informační upozornění */
.notification-display-settings { display:grid; gap:9px; margin-top:18px; padding-top:16px; border-top:1px solid color-mix(in srgb,var(--border) 82%,transparent); }
.notification-display-heading { display:grid; gap:3px; margin-bottom:2px; }
.notification-display-heading strong { color:var(--text); font-size:11px; font-weight:850; }
.notification-display-heading small { color:var(--muted); font-size:8.6px; line-height:1.45; }
.notification-display-row { --notice-tone:#72a8ff; --notice-glow:rgba(75,137,255,.2); position:relative; isolation:isolate; display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:62px; padding:11px 12px; border:1px solid color-mix(in srgb,var(--notice-tone) 52%,var(--border)); border-radius:15px; background:linear-gradient(105deg,color-mix(in srgb,var(--notice-tone) 7%,var(--panel-alt)),color-mix(in srgb,var(--panel-solid) 96%,transparent)); box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 22px rgba(0,0,0,.09),0 0 17px var(--notice-glow); overflow:hidden; cursor:pointer; transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.notification-display-row::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(105deg,transparent 0 35%,color-mix(in srgb,var(--notice-tone) 18%,transparent) 48%,transparent 61%); transform:translateX(-125%); animation:notification-setting-sheen 4.8s ease-in-out infinite; pointer-events:none; }
.notification-display-row:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--notice-tone) 75%,var(--border)); box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 25px rgba(0,0,0,.12),0 0 23px var(--notice-glow); }
.notification-display-row.weather { --notice-tone:#ff6262; --notice-glow:rgba(255,53,53,.18); }
.notification-display-row.review { --notice-tone:#ff70c8; --notice-glow:rgba(255,77,188,.18); }
.notification-display-row.missed { --notice-tone:#ffd84f; --notice-glow:rgba(255,205,43,.18); }
.notification-display-row > span:first-child { display:flex; align-items:center; gap:10px; min-width:0; }
.notification-display-row > span:first-child > span { display:grid; gap:3px; min-width:0; }
.notification-display-row strong { color:var(--text); font-size:10px; line-height:1.3; }
.notification-display-row small { color:var(--muted); font-size:8.2px; line-height:1.4; }
.notification-display-icon { flex:0 0 auto; display:grid; place-items:center; width:34px; height:34px; border:1px solid color-mix(in srgb,var(--notice-tone) 62%,transparent); border-radius:11px; background:color-mix(in srgb,var(--notice-tone) 11%,var(--panel-solid)); color:var(--notice-tone); font-size:16px; font-weight:900; font-style:normal; text-shadow:0 0 12px var(--notice-glow); box-shadow:0 0 15px var(--notice-glow),inset 0 1px 0 rgba(255,255,255,.08); }
.notification-display-row > input { position:absolute; opacity:0; pointer-events:none; }
.notification-display-row > i { flex:0 0 auto; position:relative; width:42px; height:23px; border:1px solid color-mix(in srgb,var(--notice-tone) 33%,var(--border)); border-radius:999px; background:color-mix(in srgb,var(--panel-solid) 90%,#000 10%); box-shadow:inset 0 2px 6px rgba(0,0,0,.22); transition:.2s ease; }
.notification-display-row > i::after { content:""; position:absolute; top:3px; left:3px; width:15px; height:15px; border-radius:50%; background:var(--muted); box-shadow:0 2px 7px rgba(0,0,0,.28); transition:.2s ease; }
.notification-display-row > input:checked + i { border-color:var(--notice-tone); background:color-mix(in srgb,var(--notice-tone) 24%,var(--panel-solid)); box-shadow:0 0 14px var(--notice-glow),inset 0 1px 5px rgba(255,255,255,.06); }
.notification-display-row > input:checked + i::after { transform:translateX(19px); background:var(--notice-tone); box-shadow:0 0 10px var(--notice-glow),0 2px 7px rgba(0,0,0,.26); }
.notification-display-row > input:focus-visible + i { outline:2px solid color-mix(in srgb,var(--notice-tone) 72%,white); outline-offset:3px; }
@keyframes notification-setting-sheen { 0%,58% { transform:translateX(-125%); opacity:0; } 68% { opacity:1; } 84%,100% { transform:translateX(125%); opacity:0; } }
@media(max-width:620px) { .notification-display-row { align-items:flex-start; } .notification-display-row > i { margin-top:5px; } }

.notification-display-row.ai-support { --notice-tone:#4f9dff; --notice-glow:rgba(58,142,255,.22); }
.notification-display-row.ai-support .notification-display-icon { font-size:8px; letter-spacing:.04em; }
.dock-chat.ai-support-chat.dock-alert { border-color:rgba(71,155,255,.98); box-shadow:0 -24px 58px rgba(0,0,0,.34),0 0 0 1px rgba(71,155,255,.22),0 0 27px rgba(54,139,255,.58),0 0 62px rgba(54,139,255,.25),inset 0 1px 0 rgba(255,255,255,.08); }
.dock-chat.ai-support-chat.dock-alert .dock-chat-head { background:linear-gradient(180deg,color-mix(in srgb,#4f9dff 14%,var(--panel-solid)),color-mix(in srgb,#286fd8 6%,var(--panel-solid))); }
.dock-chat.ai-support-chat.dock-alert .dock-chat-head strong { color:#eef7ff; text-shadow:0 0 12px rgba(90,172,255,.35); }
.dock-chat.ai-support-chat.dock-alert::after { background:conic-gradient(from var(--dock-alert-angle),transparent 0deg 280deg,rgba(67,151,255,.18) 300deg,#4f9dff 326deg,#e9f5ff 338deg,#4f9dff 349deg,transparent 360deg); filter:drop-shadow(0 0 6px rgba(67,151,255,.82)); }
.dock-chat.ai-support-chat.dock-alert .dock-chat-head::after { border-color:rgba(129,193,255,.65); background:linear-gradient(180deg,rgba(61,150,255,.38),rgba(24,79,156,.46)); color:#f4f9ff; box-shadow:0 8px 18px rgba(0,0,0,.18),0 0 19px rgba(64,151,255,.4),inset 0 1px 0 rgba(255,255,255,.13); }


/* Chat · skutečný indikátor psaní protistrany */
.chat-typing-indicator { align-self:flex-start; display:inline-flex; align-items:center; gap:9px; width:max-content; max-width:min(360px,78%); margin:6px 0 2px 4px; padding:8px 11px 8px 8px; border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border)); border-radius:14px 14px 14px 5px; background:color-mix(in srgb,var(--panel-solid) 90%,transparent); color:var(--text-2); box-shadow:0 8px 20px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.05); backdrop-filter:blur(10px); font-size:9px; line-height:1.2; animation:chat-typing-arrive .18s ease both; }
.chat-typing-indicator strong { color:var(--text); font-weight:850; }
.chat-typing-indicator.compact { margin:5px 0 1px 2px; padding:6px 8px 6px 6px; gap:7px; max-width:88%; font-size:8.2px; border-radius:11px 11px 11px 4px; }
.typing-paper-pen { position:relative; flex:0 0 auto; width:29px; height:24px; display:block; }
.chat-typing-indicator.compact .typing-paper-pen { width:25px; height:20px; }
.typing-paper { position:absolute; left:2px; bottom:1px; width:20px; height:20px; border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border)); border-radius:4px; background:linear-gradient(180deg,color-mix(in srgb,#fff 8%,var(--panel-solid)),color-mix(in srgb,var(--panel-alt) 96%,transparent)); box-shadow:0 3px 8px rgba(0,0,0,.12); overflow:hidden; }
.chat-typing-indicator.compact .typing-paper { width:18px; height:17px; }
.typing-paper::before,.typing-paper::after { content:""; position:absolute; left:4px; right:4px; height:1px; border-radius:999px; background:color-mix(in srgb,var(--accent) 35%,var(--muted)); opacity:.75; }
.typing-paper::before { top:7px; box-shadow:0 5px 0 color-mix(in srgb,var(--accent) 24%,var(--muted)); }
.typing-paper::after { top:4px; right:8px; }
.typing-pen { position:absolute; z-index:2; width:15px; height:3px; right:1px; top:5px; border-radius:999px; background:linear-gradient(90deg,#d7e8ff 0 16%,color-mix(in srgb,var(--accent) 78%,#4c8cff) 17% 84%,#f0c976 85%); box-shadow:0 0 7px color-mix(in srgb,var(--accent) 40%,transparent); transform-origin:90% 50%; transform:rotate(-42deg); animation:chat-typing-pen 1.05s ease-in-out infinite; }
.typing-pen::after { content:""; position:absolute; left:-3px; top:0; width:4px; height:3px; clip-path:polygon(100% 0,100% 100%,0 50%); background:#d8dde6; }
.typing-dots { display:inline-flex; align-items:flex-end; gap:2px; margin-left:1px; height:10px; }
.typing-dots i { width:3px; height:3px; border-radius:50%; background:color-mix(in srgb,var(--accent) 68%,var(--muted)); animation:chat-typing-dot .9s ease-in-out infinite; }
.typing-dots i:nth-child(2) { animation-delay:.15s; }
.typing-dots i:nth-child(3) { animation-delay:.3s; }
@keyframes chat-typing-pen { 0%,100% { transform:translate(0,0) rotate(-42deg); } 25% { transform:translate(-5px,4px) rotate(-37deg); } 50% { transform:translate(-1px,7px) rotate(-46deg); } 75% { transform:translate(-7px,9px) rotate(-39deg); } }
@keyframes chat-typing-dot { 0%,100% { transform:translateY(0); opacity:.35; } 50% { transform:translateY(-3px); opacity:1; } }
@keyframes chat-typing-arrive { from { opacity:0; transform:translateY(4px) scale(.98); } to { opacity:1; transform:none; } }


/* K-Line AI podpora – profilová karta a kulaté odeslání v Live chatu */
.ai-profile-dialog { display:grid; gap:16px; }
.ai-profile-hero { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:14px; padding:16px; border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border)); border-radius:18px; background:linear-gradient(135deg,color-mix(in srgb,var(--panel-alt) 88%,#13214a 12%),color-mix(in srgb,var(--panel) 92%,#0b1535 8%)); box-shadow:0 18px 42px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.05); }
.ai-profile-photo { width:84px; height:84px; border-radius:24px; box-shadow:0 18px 38px rgba(0,0,0,.22),0 0 0 1px rgba(255,214,102,.18),0 0 26px rgba(70,110,255,.18); }
.ai-profile-photo > img { object-fit:cover; }
.ai-profile-hero-copy { display:grid; gap:4px; }
.ai-profile-hero-copy small { color:var(--accent-2); font-size:10px; letter-spacing:.12em; font-weight:800; }
.ai-profile-hero-copy strong { font-size:20px; }
.ai-profile-hero-copy span { color:var(--text-2); line-height:1.5; }
.ai-profile-stat-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.ai-profile-stat-grid article,.ai-profile-info-grid article { padding:13px 14px; border:1px solid var(--border); border-radius:14px; background:color-mix(in srgb,var(--panel-alt) 94%,white 3%); box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 10px 24px rgba(0,0,0,.08); }
.ai-profile-stat-grid small { display:block; color:var(--muted); margin-bottom:6px; }
.ai-profile-stat-grid strong { font-size:19px; color:var(--text); }
.ai-profile-info-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.ai-profile-info-grid strong { display:block; margin-bottom:6px; color:var(--text); }
.ai-profile-info-grid p { margin:0; color:var(--text-2); line-height:1.5; }
.ai-profile-feature-section { display:grid; gap:11px; }
.ai-profile-feature-head { display:flex; justify-content:space-between; align-items:end; gap:10px; }
.ai-profile-feature-head strong { font-size:14px; }
.ai-profile-feature-head small { color:var(--muted); }
.ai-profile-feature-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
.ai-profile-feature-card { position:relative; overflow:hidden; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:12px; padding:14px 15px; border-radius:16px; border:1px solid var(--border); background:linear-gradient(135deg,color-mix(in srgb,var(--panel-alt) 92%,white 3%),color-mix(in srgb,var(--panel) 95%,black 5%)); color:var(--text); text-align:left; cursor:pointer; box-shadow:0 14px 28px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.05); transition:transform 160ms ease, box-shadow 170ms ease, border-color 160ms ease; }
.ai-profile-feature-card:hover { transform:translateY(-2px); box-shadow:0 18px 34px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.06); }
.ai-profile-feature-card > span:last-of-type { display:grid; gap:3px; }
.ai-profile-feature-card strong { font-size:13px; }
.ai-profile-feature-card small { color:var(--text-2); line-height:1.4; }
.ai-profile-feature-card b { color:var(--text); font-size:11px; opacity:.84; }
.ai-feature-emoji { width:42px; height:42px; display:grid; place-items:center; border-radius:14px; font-size:19px; background:rgba(255,255,255,.08); box-shadow:inset 0 1px 0 rgba(255,255,255,.14); }
.ai-profile-feature-card.tone-blue { border-color:rgba(87,149,255,.32); }
.ai-profile-feature-card.tone-blue .ai-feature-emoji { background:linear-gradient(135deg,rgba(83,144,255,.28),rgba(35,79,182,.32)); }
.ai-profile-feature-card.tone-gold { border-color:rgba(239,190,66,.28); }
.ai-profile-feature-card.tone-gold .ai-feature-emoji { background:linear-gradient(135deg,rgba(239,189,71,.3),rgba(155,103,22,.34)); }
.ai-profile-feature-card.tone-violet { border-color:rgba(185,120,255,.3); }
.ai-profile-feature-card.tone-violet .ai-feature-emoji { background:linear-gradient(135deg,rgba(196,121,255,.28),rgba(103,62,175,.34)); }
.ai-profile-feature-card.tone-emerald { border-color:rgba(62,216,146,.28); }
.ai-profile-feature-card.tone-emerald .ai-feature-emoji { background:linear-gradient(135deg,rgba(53,214,153,.28),rgba(26,113,87,.34)); }
.ai-profile-feature-card.tone-orange { border-color:rgba(255,159,76,.3); }
.ai-profile-feature-card.tone-orange .ai-feature-emoji { background:linear-gradient(135deg,rgba(255,162,76,.28),rgba(150,87,23,.34)); }
.ai-profile-feature-card.tone-pink { border-color:rgba(255,110,198,.28); }
.ai-profile-feature-card.tone-pink .ai-feature-emoji { background:linear-gradient(135deg,rgba(255,103,190,.28),rgba(154,45,119,.34)); }
.ai-profile-feature-card.tone-cyan { border-color:rgba(78,214,255,.3); }
.ai-profile-feature-card.tone-cyan .ai-feature-emoji { background:linear-gradient(135deg,rgba(84,216,255,.28),rgba(33,112,149,.34)); }
.ai-profile-helper { margin-top:2px; }
.dock-chat:not(.open) [data-dock-profile-trigger] { cursor:default; }
.dock-chat.open [data-dock-profile-trigger] { cursor:pointer; }
.dock-chat-head strong[data-dock-profile-trigger] {
  transition:color 150ms ease,text-shadow 150ms ease;
}
.dock-chat.open .dock-chat-head strong[data-dock-profile-trigger]:hover,
.dock-chat.open .dock-chat-head strong[data-dock-profile-trigger]:focus-visible {
  color:var(--accent-2);
  text-shadow:0 0 10px color-mix(in srgb,var(--accent-glow) 38%,transparent);
}
.dock-send-button { position:relative; width:36px!important; height:36px; padding:0; border-radius:50%!important; background:radial-gradient(circle at 30% 30%,color-mix(in srgb,var(--accent) 68%,white 32%),color-mix(in srgb,var(--accent) 90%,black 10%))!important; border:1px solid color-mix(in srgb,var(--accent) 78%,white 10%)!important; box-shadow:0 12px 22px color-mix(in srgb,var(--accent-glow) 32%,transparent), inset 0 1px 0 rgba(255,255,255,.18)!important; }
.dock-send-button::after { content:""; position:absolute; inset:-4px; border-radius:inherit; background:radial-gradient(circle,color-mix(in srgb,var(--accent-soft) 28%,transparent),transparent 68%); opacity:.9; z-index:0; }
.dock-send-button:hover { transform:translateY(-1px) scale(1.02); }
.dock-send-button:disabled { opacity:.58; box-shadow:none!important; }
.dock-send-button-core { position:relative; z-index:1; width:24px; height:24px; margin:auto; display:grid; place-items:center; border-radius:50%; background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.05)); box-shadow:inset 0 1px 0 rgba(255,255,255,.15); }
.dock-send-glyph { font-size:14px; font-weight:900; line-height:1; transform:translateX(1px); color:#fff; text-shadow:0 1px 0 rgba(0,0,0,.16); }
@media (max-width: 900px) {
  .ai-profile-stat-grid,.ai-profile-info-grid,.ai-profile-feature-grid { grid-template-columns:1fr; }
  .ai-profile-hero { grid-template-columns:1fr; justify-items:start; }
}


/* K-Line – pomocný výběr zakázky při režimu Všechny zprávy */
.chat-compose input[data-chat-context-required],
.dock-compose input[data-chat-context-required] { cursor:pointer; border-color:color-mix(in srgb,var(--warning) 42%,var(--border)); background:linear-gradient(180deg,color-mix(in srgb,var(--warning) 7%,var(--input)),color-mix(in srgb,var(--input) 96%,black 4%)); box-shadow:0 0 0 1px color-mix(in srgb,var(--warning) 8%,transparent),inset 0 1px 0 rgba(255,255,255,.04); }
.chat-compose input[data-chat-context-required]:hover,
.dock-compose input[data-chat-context-required]:hover { border-color:color-mix(in srgb,var(--warning) 66%,var(--border)); box-shadow:0 0 0 2px color-mix(in srgb,var(--warning) 12%,transparent),0 8px 20px rgba(0,0,0,.1); }
.chat-context-picker { display:grid; gap:14px; }
.chat-context-picker-intro { display:grid; grid-template-columns:auto 1fr; gap:12px; align-items:start; padding:14px 15px; border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border)); border-radius:15px; background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft) 24%,var(--panel-alt)),color-mix(in srgb,var(--panel) 96%,transparent)); }
.chat-context-picker-intro > span { width:40px; height:40px; display:grid; place-items:center; border-radius:13px; background:color-mix(in srgb,var(--accent) 18%,var(--panel-alt)); color:var(--accent-2); font-size:20px; box-shadow:inset 0 1px 0 rgba(255,255,255,.08); }
.chat-context-picker-intro strong { display:block; margin-bottom:5px; font-size:13px; }
.chat-context-picker-intro p { margin:0; color:var(--text-2); line-height:1.5; }
.chat-context-pick-list { display:grid; gap:9px; max-height:min(46vh,430px); overflow:auto; padding:2px; }
.chat-context-pick-card { position:relative; overflow:hidden; width:100%; display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; gap:11px; padding:12px 13px; border:1px solid var(--border); border-radius:14px; background:linear-gradient(135deg,color-mix(in srgb,var(--panel-alt) 96%,white 2%),color-mix(in srgb,var(--panel) 96%,black 4%)); color:var(--text); text-align:left; cursor:pointer; box-shadow:0 10px 24px rgba(0,0,0,.09),inset 0 1px 0 rgba(255,255,255,.04); transition:transform 150ms ease,border-color 150ms ease,box-shadow 160ms ease; }
.chat-context-pick-card::before { content:""; position:absolute; inset:0; background:linear-gradient(110deg,transparent 0 38%,color-mix(in srgb,var(--accent) 12%,transparent) 48%,transparent 58%); transform:translateX(-120%); transition:transform 420ms ease; pointer-events:none; }
.chat-context-pick-card:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--accent) 38%,var(--border)); box-shadow:0 14px 28px rgba(0,0,0,.12),0 0 22px color-mix(in srgb,var(--accent-glow) 10%,transparent); }
.chat-context-pick-card:hover::before { transform:translateX(120%); }
.chat-context-pick-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; background:color-mix(in srgb,var(--accent-soft) 48%,var(--panel-alt)); font-size:17px; }
.chat-context-pick-copy { min-width:0; display:grid; gap:4px; }
.chat-context-pick-copy strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.chat-context-pick-copy small { color:var(--text-2); line-height:1.4; }
.chat-context-pick-unread { min-width:23px; height:23px; padding:0 6px; display:grid; place-items:center; border-radius:999px; background:#1fca78; color:#fff; font-size:9px; box-shadow:0 0 16px rgba(31,202,120,.3); }
.chat-context-pick-arrow { color:var(--accent-2); font-size:18px; font-weight:900; }
.chat-context-picker-general { display:grid; gap:8px; padding-top:3px; border-top:1px solid var(--border); }
.chat-context-picker-general > small { color:var(--muted); }
.chat-context-pick-card.general { border-color:color-mix(in srgb,var(--border) 82%,var(--accent) 18%); opacity:.92; }
.chat-context-picker-empty { padding:14px; border:1px dashed var(--border-strong); border-radius:13px; display:grid; gap:5px; color:var(--text-2); }
.chat-context-picker-empty strong { color:var(--text); }

/* K-Line chat – 50 smajlíků a přepravních symbolů */
.chat-compose { grid-template-columns:auto auto auto minmax(0,1fr) auto; }
.dock-compose { position:relative; grid-template-columns:auto auto minmax(0,1fr) auto; overflow:visible; }
.chat-emoji-control { position:relative; align-self:center; z-index:14; }
.chat-emoji-toggle { width:40px; height:40px; padding:0; display:grid; place-items:center; border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border)); border-radius:11px; background:linear-gradient(180deg,color-mix(in srgb,var(--panel-alt) 95%,white 3%),color-mix(in srgb,var(--panel-alt) 96%,black 4%)); color:var(--text); font-size:19px; cursor:pointer; box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 18px rgba(0,0,0,.09); transition:transform 150ms ease,border-color 150ms ease,box-shadow 150ms ease,filter 150ms ease; }
.chat-emoji-toggle:hover,.chat-emoji-toggle[aria-expanded="true"] { transform:translateY(-1px); border-color:color-mix(in srgb,var(--accent) 50%,var(--border)); background:color-mix(in srgb,var(--accent-soft) 56%,var(--panel-alt)); box-shadow:0 9px 22px color-mix(in srgb,var(--accent-glow) 19%,transparent),inset 0 1px 0 rgba(255,255,255,.08); }
.chat-emoji-toggle:disabled { opacity:.46; cursor:not-allowed; transform:none; box-shadow:none; }
.chat-emoji-picker { position:absolute; z-index:80; left:0; bottom:calc(100% + 10px); width:344px; max-width:min(344px,calc(100vw - 38px)); padding:10px; border:1px solid color-mix(in srgb,var(--accent) 26%,var(--border)); border-radius:16px; background:color-mix(in srgb,var(--panel-solid) 97%,transparent); backdrop-filter:blur(18px); box-shadow:0 22px 52px rgba(0,0,0,.32),0 0 0 1px rgba(255,255,255,.03),0 0 30px color-mix(in srgb,var(--accent-glow) 12%,transparent); }
.chat-emoji-picker[hidden] { display:none!important; }
.chat-emoji-picker-head { display:flex; align-items:end; justify-content:space-between; gap:8px; padding:2px 3px 9px; border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent); }
.chat-emoji-picker-head strong { font-size:10px; color:var(--text); }
.chat-emoji-picker-head small { font-size:8px; color:var(--muted); }
.chat-emoji-grid { display:grid; grid-template-columns:repeat(10,minmax(0,1fr)); gap:4px; padding-top:9px; }
.chat-emoji-grid button { width:28px; height:28px; padding:0; display:grid; place-items:center; border:1px solid transparent; border-radius:8px; background:transparent; color:inherit; font-size:17px; cursor:pointer; box-shadow:none; transition:transform 120ms ease,background 120ms ease,border-color 120ms ease; }
.chat-emoji-grid button:hover { transform:translateY(-2px) scale(1.12); border-color:color-mix(in srgb,var(--accent) 27%,var(--border)); background:color-mix(in srgb,var(--accent-soft) 65%,var(--panel-alt)); box-shadow:0 6px 13px color-mix(in srgb,var(--accent-glow) 13%,transparent); }
.dock-compose .chat-emoji-control { z-index:24; }
.dock-compose .chat-emoji-toggle { width:31px; height:31px; border-radius:8px; border:1px solid color-mix(in srgb,var(--border) 82%,transparent); background:linear-gradient(180deg,color-mix(in srgb,var(--panel-alt) 92%,white 3%),color-mix(in srgb,var(--panel-alt) 94%,black 6%)); color:var(--text-2); font-size:15px; box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 6px 14px rgba(0,0,0,.08); }
.dock-compose .chat-emoji-toggle:hover,.dock-compose .chat-emoji-toggle[aria-expanded="true"] { border-color:color-mix(in srgb,var(--accent) 30%,var(--border-strong)); background:color-mix(in srgb,var(--accent-soft) 64%,var(--panel-alt)); color:var(--text); }
.dock-compose .chat-emoji-picker { width:270px; left:-38px; bottom:calc(100% + 8px); padding:9px; }
.dock-compose .chat-emoji-picker-head { padding-bottom:7px; }
.dock-compose .chat-emoji-grid { grid-template-columns:repeat(8,minmax(0,1fr)); gap:3px; padding-top:7px; }
.dock-compose .chat-emoji-grid button { width:27px; height:27px; border-radius:7px; font-size:15px; background:transparent; }
@media (max-width:720px) {
  .chat-compose { grid-template-columns:auto auto auto minmax(100px,1fr) auto; }
  .chat-emoji-picker { width:286px; }
  .chat-emoji-grid { grid-template-columns:repeat(8,minmax(0,1fr)); }
}


/* Kira – aktivní AI odpovědi a navigační tlačítka v chatu */
.kira-message-bubble { border:1px solid color-mix(in srgb,#5ba5ff 38%,var(--border)); background:linear-gradient(145deg,color-mix(in srgb,var(--panel-alt) 90%,#183f86 10%),color-mix(in srgb,var(--panel) 94%,#261a62 6%)); box-shadow:0 13px 30px rgba(28,87,188,.13),inset 0 1px 0 rgba(255,255,255,.05); }
.kira-message-head { display:flex; align-items:center; gap:6px; margin-bottom:7px; color:#a9ceff; }
.kira-message-head > span { font-size:15px; }
.kira-message-head strong { color:#eaf4ff; font-size:10.5px; }
.kira-message-head small { color:#7fa4d7; font-size:8px; letter-spacing:.04em; text-transform:uppercase; }
.kira-action-button { width:100%; margin-top:9px; padding:9px 11px; display:flex; align-items:center; justify-content:space-between; gap:10px; border:1px solid rgba(91,165,255,.38); border-radius:10px; background:linear-gradient(135deg,rgba(45,115,232,.22),rgba(88,72,209,.22)); color:#eaf5ff; font-weight:850; cursor:pointer; box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 18px rgba(22,72,160,.13); }
.kira-action-button:hover { border-color:rgba(117,188,255,.72); background:linear-gradient(135deg,rgba(55,133,255,.34),rgba(108,83,235,.3)); transform:translateY(-1px); }
.kira-action-button b { width:21px; height:21px; display:grid; place-items:center; border-radius:50%; background:rgba(91,165,255,.2); }
.kira-action-button.compact { padding:7px 8px; margin-top:7px; font-size:8.8px; border-radius:8px; }
.kira-action-button.compact b { width:17px; height:17px; }
.kira-dock-message { border-color:rgba(81,158,255,.32)!important; background:linear-gradient(145deg,color-mix(in srgb,var(--panel-alt) 88%,#164782 12%),color-mix(in srgb,var(--panel-solid) 94%,#21164e 6%))!important; }
.kira-dock-head { display:flex; align-items:center; gap:5px; margin-bottom:5px; color:#b9d9ff; }
.kira-dock-head b { font-size:12px; }
.kira-dock-head strong { font-size:9px; color:#eef7ff; }
.kira-avatar { box-shadow:0 0 0 1px rgba(84,164,255,.28),0 0 16px rgba(62,135,255,.22)!important; }


/* K-Line FIX – samostatné emoji/symboly jsou v odeslané zprávě výrazně větší */
.chat-message.emoji-only-message .chat-bubble.emoji-only-bubble { padding:0; min-width:62px; background:transparent!important; border:0!important; box-shadow:none!important; overflow:visible; }
.chat-message.emoji-only-message .chat-bubble.emoji-only-bubble > p { margin:0; padding:1px 4px!important; border:0!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; color:var(--text)!important; font-size:calc(2.85em * var(--chat-text-scale)); line-height:1.08; letter-spacing:.02em; overflow:visible; }
.chat-message.emoji-only-message .chat-bubble.emoji-only-bubble > p::before { display:none!important; }
.chat-message.emoji-only-message .chat-bubble.emoji-only-bubble > p:hover { transform:none!important; }
.chat-message.emoji-only-message .chat-bubble.emoji-only-bubble .chat-bubble-meta { margin-top:5px; }
.dock-message-row.emoji-only-message .dock-message.emoji-only-bubble { min-width:52px; padding:1px 4px!important; border:0!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; color:var(--text)!important; overflow:visible; }
.dock-message-row.emoji-only-message .dock-message.emoji-only-bubble::before { display:none!important; }
.dock-message-row.emoji-only-message .dock-message.emoji-only-bubble:hover { transform:none!important; }
.dock-message-row.emoji-only-message .dock-message-original { display:block; font-size:calc(29px * var(--chat-text-scale)); line-height:1.05; letter-spacing:.015em; text-align:center; }


/* Kira – modrý efekt kolem celé konverzace v sekci Zprávy a nabídky */
.conversation-record.ai-support-conversation-record {
  isolation:isolate;
  overflow:hidden;
  border-color:rgba(76,157,255,.72);
  background:linear-gradient(180deg,color-mix(in srgb,#3d8fff 15%,var(--panel-solid)),color-mix(in srgb,#235fb8 9%,var(--panel)));
  box-shadow:0 15px 36px rgba(0,0,0,.16),0 0 0 1px rgba(91,170,255,.10),0 0 22px rgba(54,139,255,.23),inset 0 1px 0 rgba(255,255,255,.055);
  animation:none;
}
.conversation-record.ai-support-conversation-record::before { display:none; }
.conversation-record.ai-support-conversation-record:hover,
.conversation-record.ai-support-conversation-record.active {
  border-color:rgba(103,179,255,.9);
  background:linear-gradient(180deg,color-mix(in srgb,#4799ff 20%,var(--panel-solid)),color-mix(in srgb,#2767c7 12%,var(--panel)));
  box-shadow:0 20px 46px rgba(0,0,0,.20),0 0 0 1px rgba(105,184,255,.13),0 0 31px rgba(54,139,255,.32),inset 3px 0 0 rgba(91,172,255,.88),inset 0 1px 0 rgba(255,255,255,.065);
}
/* U Kiry zůstávají čtyři akční tlačítka ve standardním vzhledu; modrý efekt patří pouze celé kartě. */
.conversation-record.ai-support-conversation-record .conversation-actions {
  overflow:visible;
  margin:0;
  padding:0 10px 10px 52px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  animation:none;
}
.conversation-record.ai-support-conversation-record .conversation-actions::before { display:none; }
.conversation-record.ai-support-conversation-record .conversation-actions button {
  border-color:var(--border);
  background:var(--panel-solid);
  color:var(--text-2);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.conversation-record.ai-support-conversation-record .conversation-actions button.danger { color:var(--text-2); }
.conversation-record.ai-support-conversation-record .conversation-actions .conversation-mute.active {
  border-color:#d4a900;
  background:rgba(255,206,47,.15);
  color:#ffd84f;
  box-shadow:0 0 0 1px rgba(255,216,79,.12) inset;
}
/* Nepřečtená zpráva od Kiry zesílí modrý efekt místo zeleného rámečku. */
.conversation-record.ai-support-conversation-record.unread {
  border-color:rgba(92,174,255,.98);
  background:linear-gradient(180deg,color-mix(in srgb,#469bff 23%,var(--panel-solid)),color-mix(in srgb,#2569d2 14%,var(--panel)));
  box-shadow:0 20px 48px rgba(0,0,0,.20),0 0 0 1px rgba(86,170,255,.22),0 0 27px rgba(54,139,255,.48),0 0 54px rgba(54,139,255,.22),inset 0 1px 0 rgba(255,255,255,.08);
}
.conversation-record.ai-support-conversation-record.unread::after {
  border-color:rgba(112,190,255,.34);
  box-shadow:0 0 18px rgba(69,156,255,.18) inset;
}
.conversation-record.ai-support-conversation-record.unread[data-unread-count]::before {
  content:attr(data-unread-count);
  top:11px; right:10px; bottom:auto; left:auto; width:auto; min-width:18px; height:18px; padding:0 5px;
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid rgba(132,199,255,.62); border-radius:999px;
  background:linear-gradient(180deg,rgba(65,156,255,.38),rgba(25,85,166,.46));
  color:#f4f9ff; font-size:9px; font-weight:900;
  box-shadow:0 8px 18px rgba(0,0,0,.18),0 0 18px rgba(64,151,255,.34),inset 0 1px 0 rgba(255,255,255,.13);
  filter:none; transform:none; opacity:1; animation:none;
}
.conversation-record.ai-support-conversation-record.unread .conversation::after { display:none; animation:none; }
.conversation-record.ai-support-conversation-record.unread .conversation-copy strong { color:#eaf6ff; text-shadow:0 0 12px rgba(90,172,255,.26); }
.conversation-record.ai-support-conversation-record.unread .conversation-copy small,
.conversation-record.ai-support-conversation-record.unread .conversation-last-date,
.conversation-record.ai-support-conversation-record.unread .conversation time { color:color-mix(in srgb,#cce8ff 76%,var(--muted)); }


/* Kira – nová neon vizualita + odstranění šedých teček v chatu a konverzacích */
.conversation .profile-image::after,
.conversation-search-results .profile-image::after,
.chat-pane-head .profile-image::after,
.chat-message .profile-image::after,
.dock-chat .profile-image::after,
.typing-indicator .profile-image::after,
.missed-message-reminder-message .profile-image::after { display:none !important; }

.profile-image.kira-avatar {
  overflow: visible;
  border-radius: 50%;
  border: 1px solid rgba(95,182,255,.78);
  background:
    radial-gradient(circle at 50% 16%, rgba(173,224,255,.35), transparent 42%),
    linear-gradient(145deg, rgba(18,54,121,.98), rgba(5,21,58,.98));
  box-shadow:
    0 0 0 1px rgba(112,198,255,.22),
    0 0 0 4px rgba(53,129,255,.13),
    0 0 18px rgba(53,132,255,.36),
    0 10px 24px rgba(0,0,0,.28);
}
.profile-image.kira-avatar.has-photo > img {
  inset: 3px;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  border-radius: 50%;
  object-fit: cover;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}
.profile-image.kira-avatar::before {
  content: "✦";
  position: absolute;
  right: -4px;
  bottom: -5px;
  z-index: 3;
  width: 18px;
  height: 18px;
  display: grid;
  place-items: center;
  clip-path: polygon(50% 0%, 92% 24%, 92% 76%, 50% 100%, 8% 76%, 8% 24%);
  border: 1px solid rgba(144,220,255,.88);
  background: linear-gradient(145deg, #4fd1ff, #296dff 60%, #183b97);
  color: #f5fbff;
  font-size: 10px;
  line-height: 1;
  text-shadow: 0 0 7px rgba(255,255,255,.66);
  box-shadow: 0 0 0 2px rgba(6,18,52,.95), 0 0 16px rgba(61,156,255,.48);
}
.conversation-record.ai-support-conversation-record .profile-image.kira-avatar,
.chat-pane.ai-support-pane .chat-partner-link .profile-image.kira-avatar { width: 38px; height: 38px; border-radius: 50%; }
.dock-chat.ai-support-chat .dock-chat-head .profile-image.kira-avatar { width: 28px; height: 28px; border-radius: 50%; }
.chat-message .profile-image.kira-avatar,
.dock-message-row .profile-image.kira-avatar { width: 28px; height: 28px; border-radius: 50%; }
.dock-chat.ai-support-chat .dock-chat-head .profile-image.kira-avatar::before { width: 14px; height: 14px; font-size: 8px; right: -4px; bottom: -4px; }
.chat-message .profile-image.kira-avatar::before,
.dock-message-row .profile-image.kira-avatar::before { width: 15px; height: 15px; font-size: 8px; right: -4px; bottom: -4px; }

.conversation-record.ai-support-conversation-record {
  border-color: rgba(76,157,255,.76);
  background:
    radial-gradient(circle at 12% 18%, rgba(96,177,255,.18), transparent 28%),
    linear-gradient(180deg, rgba(12,34,86,.98), rgba(7,18,51,.98));
  box-shadow:
    0 16px 38px rgba(0,0,0,.22),
    0 0 0 1px rgba(92,177,255,.10),
    0 0 26px rgba(52,134,255,.20),
    inset 0 1px 0 rgba(255,255,255,.06);
}
.conversation-record.ai-support-conversation-record::after {
  content: "";
  position: absolute;
  inset: 6px;
  border-radius: 18px;
  border: 1px solid rgba(100,179,255,.24);
  pointer-events: none;
  box-shadow: inset 0 0 18px rgba(63,138,255,.10), 0 0 18px rgba(41,126,255,.08);
}
.conversation-record.ai-support-conversation-record .conversation {
  background: linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,0));
}
.conversation-record.ai-support-conversation-record .conversation-copy strong { color:#eef6ff; }
.conversation-record.ai-support-conversation-record .conversation-copy small,
.conversation-record.ai-support-conversation-record .conversation-last-date,
.conversation-record.ai-support-conversation-record .conversation time,
.conversation-record.ai-support-conversation-record .conversation-context-preview { color: #a7c8ef; }
.conversation-record.ai-support-conversation-record:hover,
.conversation-record.ai-support-conversation-record.active {
  border-color: rgba(104,185,255,.94);
  box-shadow:
    0 20px 44px rgba(0,0,0,.26),
    0 0 0 1px rgba(115,198,255,.14),
    0 0 34px rgba(52,143,255,.28),
    inset 0 1px 0 rgba(255,255,255,.07);
}
.conversation-record.ai-support-conversation-record.unread {
  border-color: rgba(108,190,255,.98);
  box-shadow:
    0 20px 48px rgba(0,0,0,.28),
    0 0 0 1px rgba(125,202,255,.18),
    0 0 38px rgba(64,151,255,.44),
    0 0 68px rgba(39,121,246,.18),
    inset 0 1px 0 rgba(255,255,255,.08);
}

.chat-pane.ai-support-pane {
  isolation: isolate;
  border-left: 1px solid rgba(78,152,255,.18);
  background:
    radial-gradient(circle at 18% 18%, rgba(84,170,255,.14), transparent 26%),
    radial-gradient(circle at 84% 16%, rgba(58,131,255,.12), transparent 18%),
    linear-gradient(160deg, #071633 0%, #081835 40%, #06152e 100%) !important;
}
.chat-pane.ai-support-pane::before {
  content: "";
  position: absolute;
  inset: 12px 14px 12px 14px;
  border-radius: 24px;
  border: 1px solid rgba(86,170,255,.22);
  box-shadow: inset 0 0 28px rgba(47,123,255,.12), 0 0 26px rgba(36,121,255,.10);
  pointer-events: none;
  z-index: 0;
}
.chat-pane.ai-support-pane::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 32%, rgba(114,184,255,.08), transparent 21%),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0) 12%, rgba(0,0,0,.12));
  pointer-events: none;
  z-index: 0;
}
.chat-pane.ai-support-pane > * { position: relative; z-index: 1; }
.chat-pane.ai-support-pane,
.chat-pane.ai-support-pane .chat-stream {
  background-image:
    radial-gradient(circle at 18% 18%, rgba(84,170,255,.14), transparent 26%),
    radial-gradient(circle at 84% 16%, rgba(58,131,255,.12), transparent 18%),
    linear-gradient(160deg, #071633 0%, #081835 40%, #06152e 100%) !important;
}
.chat-pane.ai-support-pane .chat-pane-head {
  background: linear-gradient(180deg, rgba(16,42,102,.74), rgba(8,23,59,.58));
  border-bottom-color: rgba(84,160,255,.18);
}
.chat-pane.ai-support-pane .chat-partner-link.ai-support-partner-link {
  padding: 3px 6px 3px 0;
  border-radius: 18px;
}
.chat-pane.ai-support-pane .chat-partner-link.ai-support-partner-link span strong { color:#eef7ff; text-shadow:0 0 10px rgba(95,178,255,.22); }
.chat-pane.ai-support-pane .chat-partner-link.ai-support-partner-link span small { color:#9fc7f4; }
.chat-pane.ai-support-pane .chat-context-selector,
.chat-pane.ai-support-pane .chat-compose {
  background: linear-gradient(180deg, rgba(7,23,58,.76), rgba(7,20,49,.62));
  border-color: rgba(84,160,255,.16);
}

.dock-chat.ai-support-chat {
  border-color: rgba(76,157,255,.78);
  background: linear-gradient(180deg, rgba(9,26,66,.98), rgba(7,18,48,.98));
  box-shadow:
    0 -20px 48px rgba(0,0,0,.34),
    0 0 0 1px rgba(92,177,255,.10),
    0 0 26px rgba(52,134,255,.22),
    inset 0 1px 0 rgba(255,255,255,.06);
}
.dock-chat.ai-support-chat::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0) 18%, rgba(255,255,255,0) 76%, rgba(0,0,0,.10)),
    radial-gradient(circle at 18% 18%, rgba(84,170,255,.18), transparent 22%);
}
.dock-chat.ai-support-chat .dock-chat-head {
  background: linear-gradient(180deg, rgba(14,40,96,.78), rgba(8,23,58,.68));
  border-bottom-color: rgba(84,160,255,.18);
}
.dock-chat.ai-support-chat,
.dock-chat.ai-support-chat .dock-messages {
  background-image:
    radial-gradient(circle at 18% 18%, rgba(84,170,255,.13), transparent 24%),
    linear-gradient(160deg, #071633 0%, #081835 40%, #06152e 100%) !important;
}
.dock-chat.ai-support-chat .dock-compose {
  background: linear-gradient(180deg, rgba(7,23,58,.76), rgba(7,20,49,.62));
  border-top-color: rgba(84,160,255,.14);
}
.dock-chat.ai-support-chat .dock-chat-head strong { color:#eef7ff; }


/* Kira – jemnější karta v seznamu; výrazná až při skutečně nepřečtené zprávě */
.conversation-record.ai-support-conversation-record:not(.unread) {
  border-color: rgba(76,132,190,.30) !important;
  background:
    radial-gradient(circle at 12% 18%, rgba(77,139,205,.055), transparent 30%),
    linear-gradient(180deg, color-mix(in srgb,var(--panel-solid) 96%,#17365d 4%), color-mix(in srgb,var(--panel) 97%,#102844 3%)) !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.11), inset 0 1px 0 rgba(255,255,255,.035) !important;
}
.conversation-record.ai-support-conversation-record:not(.unread)::after {
  border-color: rgba(90,150,205,.10) !important;
  box-shadow: none !important;
}
.conversation-record.ai-support-conversation-record:not(.unread):hover,
.conversation-record.ai-support-conversation-record:not(.unread).active {
  border-color: rgba(86,150,214,.44) !important;
  background:
    radial-gradient(circle at 12% 18%, rgba(77,145,218,.075), transparent 30%),
    linear-gradient(180deg, color-mix(in srgb,var(--panel-solid) 94%,#1a416e 6%), color-mix(in srgb,var(--panel) 96%,#123154 4%)) !important;
  box-shadow: 0 13px 28px rgba(0,0,0,.14), 0 0 14px rgba(65,133,205,.07), inset 0 1px 0 rgba(255,255,255,.045) !important;
}
.conversation-record.ai-support-conversation-record:not(.unread) .conversation-copy strong {
  color: color-mix(in srgb,var(--text) 93%,#b9d8f5 7%) !important;
  text-shadow: none !important;
}
.conversation-record.ai-support-conversation-record:not(.unread) .conversation-copy small,
.conversation-record.ai-support-conversation-record:not(.unread) .conversation-last-date,
.conversation-record.ai-support-conversation-record:not(.unread) .conversation time,
.conversation-record.ai-support-conversation-record:not(.unread) .conversation-context-preview {
  color: var(--muted) !important;
}


/* Live chat – ruční řazení přetažením bez mezer */
.dock-chat-head[data-dock-toggle] { cursor: default; user-select: none; -webkit-user-select: none; }
.chat-dock.dock-reordering { overflow-x: visible; }
.chat-dock.dock-reordering .dock-chat { transition: transform 150ms ease, box-shadow 150ms ease, opacity 150ms ease, width 220ms cubic-bezier(.2,.8,.2,1), flex-basis 220ms cubic-bezier(.2,.8,.2,1); }
.chat-dock .dock-chat.is-dragging { z-index: 125; cursor: grabbing; transform: translateY(-10px) scale(1.018); opacity: .96; box-shadow: 0 -30px 68px rgba(0,0,0,.40), 0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent), 0 0 32px color-mix(in srgb,var(--accent-glow) 24%,transparent), inset 0 1px 0 rgba(255,255,255,.09); }
.chat-dock .dock-chat.is-dragging .dock-chat-head { cursor: grabbing; }
html.dock-drag-active, html.dock-drag-active body { cursor: grabbing !important; user-select: none !important; -webkit-user-select: none !important; }


/* Postupné načítání delších seznamů */
.result-more-wrap { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px; }
.result-more-button { min-width:190px; justify-content:center; gap:9px; border-color:color-mix(in srgb,var(--accent) 28%,var(--border)); background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 34%,var(--panel-solid)),color-mix(in srgb,var(--panel-solid) 96%,black 4%)); box-shadow:0 9px 22px rgba(0,0,0,.10),inset 0 1px 0 rgba(255,255,255,.045); }
.result-more-button:hover { border-color:color-mix(in srgb,var(--accent) 58%,var(--border)); box-shadow:0 13px 28px rgba(0,0,0,.15),0 0 20px color-mix(in srgb,var(--accent-glow) 14%,transparent),inset 0 1px 0 rgba(255,255,255,.06); }
.result-more-button small { display:inline-grid; place-items:center; min-width:28px; height:20px; padding:0 6px; border-radius:999px; background:color-mix(in srgb,var(--accent) 18%,transparent); color:var(--accent-2); font-size:9px; font-weight:900; }

/* Profil a nastavení — Live pracovní funkce */
.live-settings-panel {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-color: color-mix(in srgb,#43a9ff 24%,var(--border));
  background:
    radial-gradient(circle at 92% 8%,rgba(59,149,255,.10),transparent 31%),
    linear-gradient(145deg,color-mix(in srgb,var(--panel) 96%,#102b58 4%),color-mix(in srgb,var(--panel) 98%,#071a34 2%));
  box-shadow: var(--shadow),0 0 24px rgba(52,133,255,.07),inset 0 1px 0 rgba(255,255,255,.045);
}
.live-settings-panel > *:not(.live-settings-ambient) { position: relative; z-index: 1; }
.live-settings-ambient { position:absolute; inset:-40% -18% auto auto; width:220px; height:220px; border-radius:50%; background:radial-gradient(circle,rgba(61,153,255,.12),transparent 66%); pointer-events:none; }
.live-setting-title { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.live-settings-status { display:inline-flex; align-items:center; gap:6px; flex:0 0 auto; padding:6px 9px; border:1px solid rgba(76,170,255,.30); border-radius:999px; background:rgba(34,112,205,.10); color:#8dccff; font-size:8px; font-weight:900; letter-spacing:.09em; box-shadow:0 0 16px rgba(55,145,255,.08); }
.live-settings-status i { width:7px; height:7px; border-radius:50%; background:#43c6ff; box-shadow:0 0 0 4px rgba(67,198,255,.08),0 0 12px rgba(67,198,255,.52); animation:live-settings-dot 2.2s ease-in-out infinite; }
.live-feature-row { --live-tone:#4ca9ff; --live-soft:rgba(76,169,255,.13); position:relative; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:11px; margin-top:10px; padding:12px 12px; border:1px solid color-mix(in srgb,var(--live-tone) 27%,var(--border)); border-radius:14px; background:linear-gradient(135deg,color-mix(in srgb,var(--live-soft) 58%,var(--panel-alt)),color-mix(in srgb,var(--panel-alt) 96%,transparent)); box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 10px 22px rgba(0,0,0,.06); cursor:pointer; transition:transform 170ms ease,border-color 170ms ease,box-shadow 190ms ease,background 190ms ease; }
.live-feature-row.weather { --live-tone:#ff705f; --live-soft:rgba(255,82,69,.11); }
.live-feature-row.followup { --live-tone:#47d7a0; --live-soft:rgba(54,206,148,.11); }
.live-feature-row:not(.locked):hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--live-tone) 46%,var(--border)); box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 13px 27px rgba(0,0,0,.09),0 0 20px color-mix(in srgb,var(--live-tone) 8%,transparent); }
.live-feature-row-icon { display:grid; place-items:center; width:34px; height:34px; border:1px solid color-mix(in srgb,var(--live-tone) 35%,transparent); border-radius:11px; background:color-mix(in srgb,var(--live-tone) 13%,transparent); color:color-mix(in srgb,var(--live-tone) 80%,#fff); font-size:16px; font-weight:900; box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 16px color-mix(in srgb,var(--live-tone) 8%,transparent); }
.live-feature-row-copy { display:grid; gap:3px; min-width:0; }
.live-feature-row-copy strong { font-size:10px; color:var(--text); }
.live-feature-row-copy small { color:var(--muted); font-size:8.7px; line-height:1.45; }
.live-feature-row-copy em { color:color-mix(in srgb,var(--live-tone) 62%,var(--muted)); font-size:8px; font-style:normal; font-weight:750; }
.live-feature-row input { position:absolute; opacity:0; pointer-events:none; }
.live-feature-row > i { position:relative; width:42px; height:23px; flex:0 0 auto; border:1px solid color-mix(in srgb,var(--border-strong) 85%,transparent); border-radius:99px; background:color-mix(in srgb,var(--border-strong) 88%,black 12%); box-shadow:inset 0 2px 5px rgba(0,0,0,.13); transition:background 170ms ease,border-color 170ms ease,box-shadow 180ms ease; }
.live-feature-row > i::after { content:""; position:absolute; top:3px; left:3px; width:15px; height:15px; border-radius:50%; background:#f7fbff; box-shadow:0 2px 7px rgba(0,0,0,.24); transition:transform 170ms ease,box-shadow 170ms ease; }
.live-feature-row input:checked + i { border-color:color-mix(in srgb,var(--live-tone) 55%,transparent); background:linear-gradient(135deg,color-mix(in srgb,var(--live-tone) 78%,#1b4b7e),color-mix(in srgb,var(--live-tone) 58%,#17335c)); box-shadow:0 0 15px color-mix(in srgb,var(--live-tone) 18%,transparent),inset 0 1px 0 rgba(255,255,255,.09); }
.live-feature-row input:checked + i::after { transform:translateX(19px); box-shadow:0 2px 7px rgba(0,0,0,.22),0 0 8px rgba(255,255,255,.26); }
.live-feature-row.locked { opacity:.54; cursor:not-allowed; filter:saturate(.72); }
.live-feature-row.locked > i { opacity:.58; }
@keyframes live-settings-dot { 0%,100% { transform:scale(.9); opacity:.7; } 50% { transform:scale(1.13); opacity:1; } }
@media (prefers-reduced-motion: reduce) { .live-settings-status i { animation:none; } }

/* Návod K-Line + jednorázové připomenutí */
.nav-guide-label { margin-top: 14px; }
.kline-guide-nav-item {
  position: relative;
  border-color: color-mix(in srgb, #58b7ff 30%, var(--border));
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--panel-alt) 88%, #0f315d 12%), color-mix(in srgb, var(--panel) 97%, #091b36 3%));
  box-shadow: 0 12px 32px rgba(0,0,0,.16), 0 0 22px rgba(71, 174, 255, .10), inset 0 1px 0 rgba(255,255,255,.06);
}
.kline-guide-nav-item:hover {
  border-color: color-mix(in srgb, #7fcfff 55%, var(--border));
  box-shadow: 0 16px 38px rgba(0,0,0,.18), 0 0 28px rgba(71, 174, 255, .16), inset 0 1px 0 rgba(255,255,255,.07);
}
.kline-guide-nav-item::after {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: 16px;
  padding: 1px;
  background: linear-gradient(135deg, rgba(97,197,255,.25), rgba(255,255,255,.02), rgba(115,220,255,.14));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}
.guide-nav-live {
  margin-left: auto;
  border-color: rgba(107, 208, 255, .46);
  background: linear-gradient(135deg, rgba(25,111,184,.82), rgba(79, 196, 255, .82));
  color: #eef9ff;
  box-shadow: 0 0 18px rgba(87, 197, 255, .20);
}
html.kline-guide-open,
html.kline-guide-reminder-open { overflow: hidden; }
.kline-guide-layer {
  position: fixed;
  inset: 0;
  z-index: 10010;
  display: grid;
  place-items: center;
  padding: 16px;
  background: rgba(5, 9, 18, .72);
  backdrop-filter: blur(14px);
  animation: kline-guide-fade-in .22s ease both;
}
.kline-guide-shell {
  position: relative;
  isolation: isolate;
  width: min(1420px, calc(100vw - 24px));
  height: min(92vh, 980px);
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  gap: 16px;
  padding: 24px;
  border: 1px solid color-mix(in srgb, #6bc2ff 26%, var(--border));
  border-radius: 30px;
  background:
    radial-gradient(circle at 92% 8%, rgba(70, 170, 255, .12), transparent 25%),
    radial-gradient(circle at 8% 12%, rgba(255, 208, 96, .08), transparent 22%),
    linear-gradient(155deg, color-mix(in srgb, var(--panel-solid) 94%, #061428 6%), color-mix(in srgb, var(--panel-alt) 95%, #0d2543 5%));
  box-shadow: 0 50px 120px rgba(0,0,0,.58), 0 0 42px rgba(78, 171, 255, .12), inset 0 1px 0 rgba(255,255,255,.07);
  overflow: hidden;
}
.kline-guide-shell::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: -4px;
  padding: 4px;
  border-radius: 34px;
  background: conic-gradient(from 0deg, transparent 0 8%, rgba(107,194,255,.92) 13%, rgba(228,247,255,.92) 18%, rgba(108,206,255,.78) 24%, transparent 31% 54%, rgba(255,201,95,.82) 63%, rgba(255,249,230,.9) 69%, rgba(101,183,255,.86) 75%, transparent 84% 100%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: kline-guide-border-run 7.2s linear infinite;
  filter: drop-shadow(0 0 10px rgba(98,191,255,.46));
  pointer-events: none;
}
.kline-guide-shell::after {
  content: "";
  position: absolute;
  z-index: -3;
  inset: -18px;
  border: 2px solid rgba(88, 188, 255, .18);
  border-radius: 42px;
  box-shadow: 0 0 24px rgba(88, 188, 255, .28), 0 0 60px rgba(49, 134, 255, .18);
  animation: kline-guide-shell-pulse 2.7s ease-in-out infinite;
  pointer-events: none;
}
.kline-guide-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.kline-guide-brand {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}
.kline-guide-brand-mark {
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(101, 190, 255, .34);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(47, 126, 255, .22), rgba(83, 213, 255, .12));
  color: #dff4ff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 14px 34px rgba(26, 110, 255, .14);
}
.kline-guide-brand-copy { min-width: 0; display: grid; gap: 3px; }
.kline-guide-brand-copy small {
  color: #8fd2ff;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.kline-guide-brand-copy strong {
  color: var(--text);
  font-size: 24px;
  line-height: 1.16;
}
.kline-guide-brand-copy p {
  margin: 0;
  max-width: 780px;
  color: var(--text-2);
  font-size: 11px;
  line-height: 1.55;
}
.kline-guide-head-tools {
  display: grid;
  justify-items: end;
  gap: 9px;
  flex: 0 0 auto;
}
.kline-guide-status-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 12px;
  border: 1px solid rgba(104, 193, 255, .26);
  border-radius: 999px;
  background: rgba(37, 112, 202, .11);
  color: #a8dcff;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .1em;
}
.kline-guide-status-chip i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #4fd7ff;
  box-shadow: 0 0 0 4px rgba(79, 215, 255, .08), 0 0 16px rgba(79, 215, 255, .52);
  animation: kline-guide-dot 1.8s ease-in-out infinite;
}

.kline-guide-intro-play {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  min-width: 162px;
  padding: 8px 13px 8px 9px;
  overflow: visible;
  border: 1px solid color-mix(in srgb, var(--accent-2) 46%, var(--border-strong));
  border-radius: 15px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--accent) 18%, var(--panel-alt)), color-mix(in srgb, var(--accent-2) 9%, var(--panel-solid)));
  color: var(--text);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 9px 25px color-mix(in srgb, var(--accent) 16%, transparent);
  cursor: pointer;
  text-align: left;
  animation: kline-guide-intro-button-breathe 3.2s ease-in-out infinite;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, filter .18s ease;
}
.kline-guide-intro-play:hover {
  transform: translateY(-1px);
  border-color: color-mix(in srgb, var(--accent-2) 72%, var(--border-strong));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.13), 0 12px 30px color-mix(in srgb, var(--accent) 22%, transparent), 0 0 18px color-mix(in srgb, var(--accent-2) 13%, transparent);
  filter: brightness(1.06);
}
.kline-guide-intro-play:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--accent-2) 72%, white 28%);
  outline-offset: 3px;
}
.kline-guide-intro-play-icon {
  position: relative;
  z-index: 2;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: color-mix(in srgb, var(--accent) 72%, var(--panel-solid));
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.24), 0 0 0 4px color-mix(in srgb, var(--accent) 9%, transparent), 0 0 18px color-mix(in srgb, var(--accent) 28%, transparent);
}
.kline-guide-intro-play-icon svg { width: 17px; height: 17px; margin-left: 2px; }
.kline-guide-intro-play-copy { position: relative; z-index: 2; display: grid; gap: 1px; min-width: 0; }
.kline-guide-intro-play-copy small {
  color: color-mix(in srgb, var(--accent-2) 78%, var(--text-2));
  font-size: 7.5px;
  font-weight: 900;
  letter-spacing: .13em;
  line-height: 1.1;
}
.kline-guide-intro-play-copy strong { color: var(--text); font-size: 10.5px; line-height: 1.25; white-space: nowrap; }
.kline-guide-intro-play-pulse {
  position: absolute;
  z-index: 0;
  left: 9px;
  top: 8px;
  width: 34px;
  height: 34px;
  border: 1px solid color-mix(in srgb, var(--accent-2) 58%, transparent);
  border-radius: 50%;
  pointer-events: none;
  animation: kline-guide-intro-ring 3.2s ease-out infinite;
}
.kline-guide-close {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--border-strong) 84%, transparent);
  border-radius: 14px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--panel-alt) 94%, #173050 6%), color-mix(in srgb, var(--panel-solid) 96%, black 4%));
  color: var(--text);
  font-size: 22px;
  cursor: pointer;
}
.kline-guide-toolbar {
  display: grid;
  gap: 14px;
}
.kline-guide-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.kline-guide-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 14px;
  border: 1px solid color-mix(in srgb, var(--border) 92%, transparent);
  border-radius: 15px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--panel) 96%, white 4%), color-mix(in srgb, var(--panel-alt) 96%, black 4%));
  color: var(--text-2);
  font-weight: 800;
  letter-spacing: .01em;
  cursor: pointer;
  transition: transform .16s ease, border-color .18s ease, box-shadow .2s ease, color .18s ease;
}
.kline-guide-tab:hover {
  transform: translateY(-1px);
  color: var(--text);
  border-color: color-mix(in srgb, #66c0ff 46%, var(--border));
  box-shadow: 0 12px 28px rgba(0,0,0,.13), 0 0 18px rgba(97, 191, 255, .08);
}
.kline-guide-tab.active {
  color: #eef7ff;
  border-color: rgba(109, 199, 255, .45);
  background: linear-gradient(135deg, rgba(29, 118, 194, .88), rgba(53, 181, 255, .78));
  box-shadow: 0 16px 36px rgba(0,0,0,.18), 0 0 24px rgba(97, 191, 255, .15);
}
.kline-guide-tab svg { width: 16px; height: 16px; }
.kline-guide-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 14px;
  border: 1px solid color-mix(in srgb, #5dbbff 18%, var(--border));
  border-radius: 18px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--panel-alt) 96%, #102642 4%), color-mix(in srgb, var(--panel) 96%, #09192f 4%));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.kline-guide-search label { display: grid; gap: 6px; }
.kline-guide-search label > span {
  color: #93cfff;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.kline-guide-search-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 0 12px;
  min-height: 50px;
  border: 1px solid color-mix(in srgb, var(--border-strong) 88%, transparent);
  border-radius: 15px;
  background: color-mix(in srgb, var(--panel-solid) 96%, black 4%);
}
.kline-guide-search-line svg { width: 17px; height: 17px; color: #8ccfff; }
.kline-guide-search-line input {
  width: 100%;
  padding: 13px 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--text);
  font: inherit;
}
.kline-guide-search-help {
  align-self: end;
  min-width: 175px;
  justify-content: center;
}
.kline-guide-layout {
  min-height: 0;
  display: grid;
  grid-template-columns: 320px minmax(0, 1fr);
  gap: 16px;
}
.kline-guide-side {
  min-height: 0;
  overflow: auto;
  display: grid;
  gap: 12px;
  padding-right: 4px;
}
.kline-guide-side-card {
  position: relative;
  display: grid;
  gap: 8px;
  padding: 16px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 22%, var(--border));
  border-radius: 18px;
  background: linear-gradient(155deg, color-mix(in srgb, var(--panel-alt) 96%, var(--guide-soft, rgba(79,185,255,.12)) 4%), color-mix(in srgb, var(--panel-solid) 98%, black 2%));
  box-shadow: 0 12px 26px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.05);
}
.kline-guide-side-card.active {
  border-color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 50%, var(--border));
  box-shadow: 0 16px 34px rgba(0,0,0,.14), 0 0 20px color-mix(in srgb, var(--guide-tone, #4fb9ff) 10%, transparent), inset 0 1px 0 rgba(255,255,255,.06);
}
.kline-guide-side-card-top {
  display: flex;
  align-items: center;
  gap: 10px;
}
.kline-guide-side-icon {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 34%, transparent);
  background: color-mix(in srgb, var(--guide-tone, #4fb9ff) 12%, transparent);
  color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 84%, #fff);
}
.kline-guide-side-icon svg { width: 18px; height: 18px; }
.kline-guide-side-card strong { color: var(--text); font-size: 12px; }
.kline-guide-side-card p { margin: 0; color: var(--text-2); font-size: 9.4px; line-height: 1.5; }
.kline-guide-side-card small {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 72%, var(--muted));
  font-size: 8.4px;
  font-weight: 800;
}
.kline-guide-content {
  min-height: 0;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, #5dbbff 16%, var(--border));
  border-radius: 24px;
  background: linear-gradient(155deg, color-mix(in srgb, var(--panel-solid) 98%, #071526 2%), color-mix(in srgb, var(--panel-alt) 96%, #0c2340 4%));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.kline-guide-panel {
  height: 100%;
  overflow: auto;
  display: none;
  padding: 22px;
}
.kline-guide-panel.active { display: block; }
.kline-guide-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) auto;
  gap: 16px;
  margin-bottom: 16px;
  padding: 18px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 28%, var(--border));
  border-radius: 22px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--guide-soft, rgba(79,185,255,.12)) 68%, var(--panel-alt)), color-mix(in srgb, var(--panel-solid) 97%, black 3%));
  box-shadow: 0 16px 38px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.05);
}
.kline-guide-hero-copy { display: grid; gap: 7px; min-width: 0; }
.kline-guide-hero-copy small {
  color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 78%, var(--muted));
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.kline-guide-hero-copy h2 {
  margin: 0;
  color: var(--text);
  font-size: 24px;
  line-height: 1.12;
}
.kline-guide-hero-copy p { margin: 0; color: var(--text-2); font-size: 10px; line-height: 1.62; }
.kline-guide-hero-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(120px, 1fr));
  gap: 10px;
  align-self: center;
}
.kline-guide-hero-stats span {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 20%, var(--border));
  background: rgba(255,255,255,.03);
}
.kline-guide-hero-stats small { color: var(--muted); font-size: 8px; }
.kline-guide-hero-stats strong { color: var(--text); font-size: 16px; }
.kline-guide-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.kline-guide-card {
  position: relative;
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 22%, var(--border));
  border-radius: 20px;
  background: linear-gradient(155deg, color-mix(in srgb, var(--panel-alt) 97%, var(--guide-soft, rgba(79,185,255,.10)) 3%), color-mix(in srgb, var(--panel-solid) 98%, black 2%));
  box-shadow: 0 14px 28px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.05);
  scroll-margin-top: 18px;
}
.kline-guide-card.guide-search-hit {
  border-color: color-mix(in srgb, #ffd56b 54%, var(--guide-tone, #4fb9ff));
  box-shadow: 0 0 0 1px rgba(255,214,110,.14), 0 18px 36px rgba(0,0,0,.16), 0 0 26px rgba(255,214,110,.15);
  animation: kline-guide-hit-flash 1.55s ease;
}
.kline-guide-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.kline-guide-card-head-main {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
}
.kline-guide-card-mark {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 34%, transparent);
  background: color-mix(in srgb, var(--guide-tone, #4fb9ff) 12%, transparent);
  color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 84%, #fff);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 10px 22px rgba(0,0,0,.07);
}
.kline-guide-card-mark svg { width: 18px; height: 18px; }
.kline-guide-card-head strong {
  display: block;
  color: var(--text);
  font-size: 13px;
  line-height: 1.24;
}
.kline-guide-card-head small {
  display: block;
  margin-top: 3px;
  color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 76%, var(--muted));
  font-size: 8.5px;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.kline-guide-chip {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 32%, transparent);
  background: color-mix(in srgb, var(--guide-tone, #4fb9ff) 10%, transparent);
  color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 88%, #fff);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .08em;
  white-space: nowrap;
}
.kline-guide-card p { margin: 0; color: var(--text-2); font-size: 10px; line-height: 1.6; }
.kline-guide-card ul {
  display: grid;
  gap: 8px;
  padding-left: 18px;
  margin: 0;
  color: var(--text-2);
}
.kline-guide-card li { font-size: 9.4px; line-height: 1.55; }
.kline-guide-card-note {
  padding: 11px 12px;
  border-radius: 14px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 22%, var(--border));
  background: color-mix(in srgb, var(--guide-tone, #4fb9ff) 8%, rgba(255,255,255,.015));
  color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 82%, var(--text-2));
  font-size: 9px;
  line-height: 1.55;
}
.kline-guide-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto;
}
.kline-guide-card-actions .button,
.kline-guide-card-actions .mini-button { min-height: 36px; }
.kline-guide-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-top: 2px;
}
.kline-guide-footer span {
  color: var(--muted);
  font-size: 9px;
  line-height: 1.5;
}
.kline-guide-reminder-layer {
  position: fixed;
  inset: 0;
  z-index: 10020;
  display: grid;
  place-items: center;
  padding: 22px;
  background: rgba(6, 10, 20, .68);
  backdrop-filter: blur(11px);
  animation: kline-guide-fade-in .22s ease both;
}
.kline-guide-reminder-card {
  position: relative;
  isolation: isolate;
  width: min(640px, calc(100vw - 34px));
  padding: 28px;
  border: 1px solid rgba(103, 196, 255, .72);
  border-radius: 28px;
  background: linear-gradient(155deg, color-mix(in srgb, var(--panel-solid) 95%, #09182d 5%), color-mix(in srgb, var(--panel-alt) 92%, #112b4d 8%));
  color: var(--text);
  box-shadow: 0 42px 110px rgba(0,0,0,.58), 0 0 38px rgba(79, 191, 255, .18), inset 0 1px 0 rgba(255,255,255,.08);
  overflow: hidden;
}
.kline-guide-reminder-card::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: -4px;
  padding: 4px;
  border-radius: 32px;
  background: conic-gradient(from 0deg, transparent 0 8%, #4ecbff 14%, #f9fdff 19%, #5ba8ff 24%, transparent 32% 57%, #ffd76f 66%, #fff7d5 71%, #6ecfff 76%, transparent 85% 100%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: kline-guide-border-run 2.3s linear infinite;
  filter: drop-shadow(0 0 9px rgba(99, 196, 255, .9));
  pointer-events: none;
}
.kline-guide-reminder-card::after {
  content: "";
  position: absolute;
  z-index: -3;
  inset: -15px;
  border: 2px solid rgba(99, 196, 255, .25);
  border-radius: 38px;
  box-shadow: 0 0 22px rgba(99, 196, 255, .40), 0 0 62px rgba(42, 133, 255, .18);
  animation: kline-guide-shell-pulse 1.8s ease-in-out infinite;
  pointer-events: none;
}
.kline-guide-reminder-top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 12px;
}
.kline-guide-reminder-icon {
  width: 60px;
  height: 60px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(107, 197, 255, .52);
  border-radius: 20px;
  background: linear-gradient(145deg, rgba(44, 120, 255, .26), rgba(83, 213, 255, .12));
  color: #e9f9ff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 14px 36px rgba(29, 109, 255, .18);
  animation: kline-guide-reminder-icon 1.7s ease-in-out infinite;
}
.kline-guide-reminder-icon svg { width: 28px; height: 28px; }
.kline-guide-reminder-copy { display: grid; gap: 6px; }
.kline-guide-reminder-copy .eyebrow { margin: 0; color: #8ad4ff; }
.kline-guide-reminder-copy h2 { margin: 0; font-size: 26px; line-height: 1.12; }
.kline-guide-reminder-copy p { margin: 0; color: var(--text-2); font-size: 10px; line-height: 1.6; }
.kline-guide-reminder-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
}
.kline-guide-reminder-grid span {
  display: grid;
  gap: 4px;
  padding: 12px;
  border-radius: 15px;
  border: 1px solid rgba(99, 196, 255, .20);
  background: rgba(255,255,255,.03);
}
.kline-guide-reminder-grid small { color: #89d0ff; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.kline-guide-reminder-grid strong { color: var(--text); font-size: 11px; }
.kline-guide-reminder-actions {
  display: grid;
  grid-template-columns: 1fr 1.35fr;
  gap: 10px;
  margin-top: 20px;
}
.kline-guide-reminder-actions .button { min-height: 46px; font-weight: 850; }
.kline-guide-reminder-actions .button-primary {
  border-color: rgba(103, 196, 255, .42);
  background: linear-gradient(135deg, #1e76c8, #43c4ff);
  box-shadow: 0 12px 32px rgba(37, 132, 255, .22), 0 0 0 1px rgba(186, 227, 255, .06);
}
@keyframes kline-guide-fade-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes kline-guide-border-run { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
@keyframes kline-guide-shell-pulse { 0%, 100% { transform: scale(.995); opacity: .74; } 50% { transform: scale(1.008); opacity: 1; } }
@keyframes kline-guide-dot { 0%, 100% { transform: scale(.88); opacity: .7; } 50% { transform: scale(1.16); opacity: 1; } }
@keyframes kline-guide-intro-button-breathe { 0%, 100% { box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 9px 25px color-mix(in srgb, var(--accent) 13%, transparent); } 50% { box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 11px 29px color-mix(in srgb, var(--accent) 22%, transparent), 0 0 16px color-mix(in srgb, var(--accent-2) 10%, transparent); } }
@keyframes kline-guide-intro-ring { 0% { transform: scale(.88); opacity: .48; } 58% { opacity: .18; } 100% { transform: scale(1.48); opacity: 0; } }
@keyframes kline-guide-reminder-icon { 0%,100% { transform: translateY(0) scale(1); } 50% { transform: translateY(-2px) scale(1.03); } }
@keyframes kline-guide-hit-flash { 0% { transform: scale(1); } 15% { transform: scale(1.01); } 100% { transform: scale(1); } }
@media (max-width: 1180px) {
  .kline-guide-layout { grid-template-columns: 1fr; }
  .kline-guide-side { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 940px) {
  .kline-guide-shell { height: min(95vh, 1100px); padding: 18px; border-radius: 24px; }
  .kline-guide-head { flex-direction: column; }
  .kline-guide-head-tools { width: 100%; justify-items: stretch; }
  .kline-guide-intro-play { width: 100%; max-width: 240px; }
  .kline-guide-search { grid-template-columns: 1fr; }
  .kline-guide-hero { grid-template-columns: 1fr; }
  .kline-guide-card-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .kline-guide-layer { padding: 8px; }
  .kline-guide-shell { width: calc(100vw - 8px); height: calc(100vh - 8px); padding: 14px; gap: 12px; border-radius: 20px; }
  .kline-guide-brand { align-items: flex-start; }
  .kline-guide-brand-copy strong { font-size: 21px; }
  .kline-guide-side { grid-template-columns: 1fr; }
  .kline-guide-panel { padding: 15px; }
  .kline-guide-reminder-layer { padding: 14px; }
  .kline-guide-reminder-card { padding: 22px 16px; border-radius: 22px; }
  .kline-guide-reminder-top { align-items: flex-start; }
  .kline-guide-reminder-grid { grid-template-columns: 1fr; }
  .kline-guide-reminder-actions { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .kline-guide-shell::before,
  .kline-guide-shell::after,
  .kline-guide-status-chip i,
  .kline-guide-intro-play,
  .kline-guide-intro-play-pulse,
  .kline-guide-reminder-card::before,
  .kline-guide-reminder-card::after,
  .kline-guide-reminder-icon {
    animation: none;
  }
}

/* Přehled – přeskupování dlaždic a widgetů tažením */
.dashboard-layout-slot,
.dashboard-user-widget { touch-action: pan-y; }
.dashboard-layout-slot { position: relative; transition: box-shadow .18s ease, opacity .18s ease, filter .18s ease; }
.dashboard-personal-layout.dashboard-dragging,
.dashboard-custom-grid.dashboard-dragging {
  position: relative;
  isolation: isolate;
}
.dashboard-personal-layout.dashboard-dragging > .dashboard-layout-slot:not(.dashboard-drag-source),
.dashboard-custom-grid.dashboard-dragging > .dashboard-user-widget:not(.dashboard-drag-source) {
  border-radius: 18px;
  box-shadow:
    0 12px 28px rgba(0,0,0,.08),
    0 0 0 1px color-mix(in srgb,var(--accent) 7%,transparent),
    0 0 18px color-mix(in srgb,var(--accent-glow) 5%,transparent);
}
.dashboard-personal-layout.dashboard-dragging > .dashboard-layout-slot:not(.dashboard-drag-source)::after,
.dashboard-custom-grid.dashboard-dragging > .dashboard-user-widget:not(.dashboard-drag-source)::after {
  content:"";
  position:absolute;
  inset:3px;
  z-index:-1;
  border-radius:17px;
  border:1px dashed color-mix(in srgb,var(--accent) 15%,transparent);
  background:color-mix(in srgb,var(--accent-soft) 5%,transparent);
  opacity:.48;
  pointer-events:none;
}
.dashboard-layout-slot.dashboard-drag-source,
.dashboard-user-widget.dashboard-drag-source {
  z-index:1;
  opacity:.34;
  filter:saturate(.72) brightness(.94);
}
.dashboard-layout-slot.dashboard-drag-source > .dashboard-adaptive-tile,
.dashboard-user-widget.dashboard-drag-source {
  border-style:dashed;
  border-color:color-mix(in srgb,var(--accent) 35%,var(--border));
  background:color-mix(in srgb,var(--panel) 82%,transparent);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 7%,transparent),0 0 22px color-mix(in srgb,var(--accent-glow) 8%,transparent);
}
.dashboard-drag-ghost {
  position:fixed !important;
  z-index:10030 !important;
  margin:0 !important;
  pointer-events:none !important;
  opacity:.92;
  filter:saturate(1.04) brightness(1.03);
  transform-origin:0 0;
  border-radius:18px;
  box-shadow:
    0 28px 60px rgba(0,0,0,.34),
    0 0 0 1px color-mix(in srgb,var(--accent) 25%,transparent),
    0 0 32px color-mix(in srgb,var(--accent-glow) 16%,transparent) !important;
  transition:none !important;
  will-change:transform;
}
.dashboard-drag-ghost.dashboard-layout-slot > .dashboard-adaptive-tile {
  height:100%;
  transform:none !important;
  border-color:color-mix(in srgb,var(--accent) 42%,var(--border));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}
.dashboard-drag-ghost.dashboard-user-widget {
  transform-origin:0 0;
}
html.dashboard-drag-active,
html.dashboard-drag-active * { cursor:grabbing !important; user-select:none !important; }
.dashboard-personal-layout.dashboard-drag-reflowing > .dashboard-layout-slot:not(.dashboard-drag-source),
.dashboard-custom-grid.dashboard-drag-reflowing > .dashboard-user-widget:not(.dashboard-drag-source) {
  filter:brightness(1.015);
}
@media (prefers-reduced-motion: reduce) {
  .dashboard-personal-layout.dashboard-dragging > .dashboard-layout-slot,
  .dashboard-custom-grid.dashboard-dragging > .dashboard-user-widget { transition:none; }
}

/* Zprávy – řazení konverzací a připnutí pod Kiru */
.conversation-actions [data-conversation-pin] {
  --conversation-action-border: rgba(72,210,196,.84);
  --conversation-action-bg: rgba(43,190,177,.14);
  --conversation-action-glow: rgba(53,218,202,.38);
  --conversation-action-text: #e6fffb;
  --conversation-action-delay: .22s;
}
.conversation-actions [data-conversation-mute] { --conversation-action-delay: .34s; }
.conversation-actions [data-conversation-delete] { --conversation-action-delay: .46s; }
.conversation-actions .conversation-pin.active {
  border-color: rgba(67,222,205,.72);
  background: linear-gradient(135deg,rgba(32,157,146,.20),rgba(59,210,194,.13));
  color: #9ff7eb;
  box-shadow: 0 0 0 1px rgba(76,229,213,.08) inset,0 0 15px rgba(53,218,202,.12);
}
.conversation-actions .conversation-pin.active:hover {
  border-color: rgba(91,238,221,.94);
  background: linear-gradient(135deg,rgba(32,157,146,.29),rgba(59,210,194,.19));
  color: #eafffc;
  box-shadow: 0 7px 18px rgba(0,0,0,.14),0 0 19px rgba(53,218,202,.30),inset 0 1px 0 rgba(255,255,255,.05);
}
.conversation-pin-glyph {
  display: inline-grid;
  place-items: center;
  min-width: 11px;
  font-size: 9px;
  line-height: 1;
  filter: saturate(.82);
}
.conversation-record.pinned:not(.ai-support-conversation-record) {
  border-color: color-mix(in srgb,#42cdbd 20%,var(--border));
}
.conversation-record.pinned:not(.ai-support-conversation-record) .conversation-copy strong::after {
  content: var(--i18n-pinned, "PŘIPNUTO");
  display: inline-flex;
  margin-left: 6px;
  padding: 2px 5px;
  border: 1px solid rgba(69,205,191,.22);
  border-radius: 999px;
  background: rgba(53,184,171,.07);
  color: #75d8cc;
  font-size: 6.5px;
  font-weight: 900;
  letter-spacing: .06em;
  vertical-align: 1px;
}

/* Přehled – přesouvání hlavních panelů včetně prázdných míst */
.dashboard-main-board {
  align-items: stretch;
}
.dashboard-main-column {
  position: relative;
  min-width: 0;
  min-height: 100%;
  display: grid;
  align-content: start;
  gap: 14px;
  border-radius: var(--radius-md);
  transition: background .18s ease, box-shadow .18s ease, outline-color .18s ease;
}
.dashboard-main-panel {
  position: relative;
  z-index: 2;
  min-width: 0;
  touch-action: pan-y;
  transition: border-color .18s ease, box-shadow .2s ease, opacity .18s ease, filter .18s ease;
}
.dashboard-main-panel.dashboard-drag-armed {
  border-color: color-mix(in srgb,var(--accent) 38%,var(--border));
  box-shadow: var(--shadow),0 0 0 1px color-mix(in srgb,var(--accent) 9%,transparent),0 0 24px color-mix(in srgb,var(--accent-glow) 10%,transparent);
}
.dashboard-main-board.dashboard-main-dragging > .dashboard-main-column {
  outline: 1px dashed color-mix(in srgb,var(--accent) 18%,transparent);
  outline-offset: 6px;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 4%,transparent),transparent 42%),
    radial-gradient(circle at 50% 72%,color-mix(in srgb,var(--accent) 4%,transparent),transparent 46%);
  box-shadow: inset 0 0 28px color-mix(in srgb,var(--accent-glow) 3%,transparent);
}
.dashboard-main-board.dashboard-main-dragging > .dashboard-main-column::after {
  content:"";
  position:absolute;
  inset:8px;
  z-index:0;
  border-radius:calc(var(--radius-md) - 6px);
  border:1px dashed color-mix(in srgb,var(--accent) 8%,transparent);
  pointer-events:none;
}
.dashboard-main-board.dashboard-main-dragging > .dashboard-main-column.dashboard-main-column-target {
  outline-color: color-mix(in srgb,var(--accent) 42%,transparent);
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 10%,transparent),transparent 48%),
    radial-gradient(circle at 50% 70%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 52%);
  box-shadow: inset 0 0 32px color-mix(in srgb,var(--accent-glow) 7%,transparent),0 0 22px color-mix(in srgb,var(--accent-glow) 5%,transparent);
}
.dashboard-main-board.dashboard-main-dragging .dashboard-main-panel:not(.dashboard-drag-source) {
  filter: brightness(.985);
  box-shadow: var(--shadow),0 14px 30px rgba(0,0,0,.08),0 0 16px color-mix(in srgb,var(--accent-glow) 3%,transparent);
}
.dashboard-main-panel.dashboard-drag-source {
  opacity:.23;
  filter:saturate(.72) brightness(.92);
  border-style:dashed;
  border-color:color-mix(in srgb,var(--accent) 38%,var(--border));
  background:color-mix(in srgb,var(--panel) 86%,transparent);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 7%,transparent),0 0 22px color-mix(in srgb,var(--accent-glow) 7%,transparent);
}
.dashboard-drag-ghost.dashboard-main-panel {
  overflow:hidden;
  background:var(--panel);
  border-color:color-mix(in srgb,var(--accent) 45%,var(--border));
}
.dashboard-main-board.dashboard-drag-reflowing .dashboard-main-panel:not(.dashboard-drag-source) {
  filter:brightness(1.012);
}
.dashboard-main-board .loads-panel { container-type:inline-size; }
@container (max-width:610px) {
  .dashboard-main-board .loads-panel .load-row { grid-template-columns:minmax(150px,1fr) auto; gap:8px; }
  .dashboard-main-board .loads-panel .load-row .load-cell { display:none; }
}
@media (max-width:1100px) {
  .dashboard-main-board { grid-template-columns:1fr; }
  .dashboard-main-column { min-height:0; }
}
@media (prefers-reduced-motion: reduce) {
  .dashboard-main-panel,
  .dashboard-main-column { transition:none; }
}

/* Levé menu — tlačítko X vedle rádia Evropa 2 */
.brand { grid-template-columns:42px minmax(0,1fr) auto; }
.brand-head-actions {
  grid-column:3;
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  gap:7px;
  min-width:0;
}
.brand-head-actions .brand-radio {
  grid-column:auto;
  flex:0 0 52px;
}
.brand-head-actions .sidebar-close {
  grid-column:auto;
  flex:0 0 39px;
  width:39px;
  height:39px;
  margin:0;
  align-self:flex-start;
  border-radius:13px;
  border-color:color-mix(in srgb,var(--danger,#ff5c72) 28%,var(--border));
  background:color-mix(in srgb,var(--panel-solid) 94%,#43131c 6%);
  color:color-mix(in srgb,var(--text) 90%,#ff9aaa 10%);
  box-shadow:0 8px 18px rgba(0,0,0,.20),0 0 12px rgba(255,78,104,.06);
  transition:transform 160ms ease,border-color 160ms ease,box-shadow 160ms ease,background-color 160ms ease,color 160ms ease;
}
.brand-head-actions .sidebar-close:hover {
  transform:translateY(-2px) scale(1.035);
  border-color:rgba(255,105,126,.58);
  background:color-mix(in srgb,var(--panel-solid) 82%,#7e1d2d 18%);
  color:#fff;
  box-shadow:0 11px 24px rgba(0,0,0,.26),0 0 20px rgba(255,74,103,.16);
}
.brand-head-actions .sidebar-close svg { width:16px; height:16px; }
/* Když je rádio vypnuté, zmizí pouze rádio. X zůstává na stejném místě nahoře. */
html[data-radio="off"] .brand-head-actions .brand-radio { display:none !important; }
/* V ultra jednoduchém režimu se rádio skrývá, ale zavírací X musí zůstat dostupné. */
html[data-ultra-simple="on"] .brand-head-actions .brand-radio { display:none !important; }
html[data-ultra-simple="on"] .brand-head-actions { grid-column:3; }

/* Návod K-Line — revize 2026-08-29: kategorie nahoře, čitelnější text, klidná animace a obrázkové vysvětlivky */
.kline-guide-shell {
  grid-template-rows: auto auto minmax(0, 1fr) auto;
}
.kline-guide-shell > * {
  position: relative;
  z-index: 1;
}
/* Původní rotující/pulzující lem je nahrazen jediným pomalým světelným pohybem. */
.kline-guide-shell::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: -220px;
  right: auto;
  bottom: auto;
  width: 210px;
  height: 2px;
  inset: 0 auto auto -220px;
  padding: 0;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(112,202,255,.08), rgba(203,239,255,.76), rgba(112,202,255,.08), transparent);
  -webkit-mask: none;
  mask: none;
  filter: drop-shadow(0 0 7px rgba(98,191,255,.28));
  opacity: .74;
  animation: kline-guide-calm-sweep 15s ease-in-out infinite;
  pointer-events: none;
}
.kline-guide-shell::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: -150px;
  right: 8%;
  bottom: auto;
  left: auto;
  width: 340px;
  height: 260px;
  inset: -150px 8% auto auto;
  border: 0;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(86,184,255,.10), rgba(86,184,255,.035) 42%, transparent 72%);
  box-shadow: none;
  opacity: .66;
  animation: kline-guide-calm-drift 18s ease-in-out infinite alternate;
  pointer-events: none;
}
.kline-guide-status-chip i {
  animation: kline-guide-dot-calm 3.8s ease-in-out infinite;
}

/* Barevné kategorie jsou už pouze jednou a jsou přesunuty nahoru. */
.kline-guide-tabs { display: none !important; }
.kline-guide-category-strip {
  display: flex;
  gap: 10px;
  min-width: 0;
  padding: 2px 2px 8px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  scrollbar-color: color-mix(in srgb, #69c6ff 34%, var(--border)) transparent;
}
.kline-guide-category-strip::-webkit-scrollbar { height: 7px; }
.kline-guide-category-strip::-webkit-scrollbar-track { background: transparent; }
.kline-guide-category-strip::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: color-mix(in srgb, #69c6ff 26%, var(--border));
}
.kline-guide-category-card {
  flex: 0 0 205px;
  min-height: 88px;
  padding: 12px 13px;
  gap: 6px;
  text-align: left;
  cursor: pointer;
  scroll-snap-align: start;
  transition: transform .16s ease, border-color .18s ease, box-shadow .2s ease, background .2s ease;
}
.kline-guide-category-card:hover {
  transform: translateY(-1px);
  border-color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 45%, var(--border));
  box-shadow: 0 12px 26px rgba(0,0,0,.11), 0 0 16px color-mix(in srgb, var(--guide-tone, #4fb9ff) 7%, transparent), inset 0 1px 0 rgba(255,255,255,.06);
}
.kline-guide-category-card.active {
  background: linear-gradient(145deg, color-mix(in srgb, var(--guide-soft, rgba(79,185,255,.12)) 68%, var(--panel-alt)), color-mix(in srgb, var(--panel-solid) 97%, black 3%));
  box-shadow: 0 14px 28px rgba(0,0,0,.13), 0 0 18px color-mix(in srgb, var(--guide-tone, #4fb9ff) 10%, transparent), inset 0 1px 0 rgba(255,255,255,.07);
}
.kline-guide-category-card .kline-guide-side-icon {
  width: 34px;
  height: 34px;
  border-radius: 11px;
}
.kline-guide-category-card .kline-guide-side-card-top { gap: 8px; }
.kline-guide-category-card strong { font-size: 11.5px; }
.kline-guide-category-card small { font-size: 7.7px; letter-spacing: .04em; }
.kline-guide-category-card p {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 9.4px;
  line-height: 1.38;
}
.kline-guide-layout {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0;
}
.kline-guide-content { min-width: 0; }

/* Čitelnější text pro uživatele, kteří se s burzou teprve seznamují. */
.kline-guide-brand-copy p {
  max-width: 920px;
  font-size: 12px;
  line-height: 1.58;
}
.kline-guide-brand-copy strong { font-size: 25px; }
.kline-guide-search label > span { font-size: 9.5px; }
.kline-guide-search-line input { font-size: 12px; }
.kline-guide-panel { padding: 24px; }
.kline-guide-hero { margin-bottom: 18px; padding: 20px; }
.kline-guide-hero-copy h2 { font-size: 26px; }
.kline-guide-hero-copy p { font-size: 12.2px; line-height: 1.68; }
.kline-guide-hero-hint {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: fit-content;
  margin-top: 3px;
  padding: 7px 10px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 20%, var(--border));
  border-radius: 999px;
  background: color-mix(in srgb, var(--guide-tone, #4fb9ff) 6%, transparent);
  color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 74%, var(--text-2));
  font-size: 9.7px;
  font-weight: 750;
}
.kline-guide-hero-hint svg { width: 13px; height: 13px; }
.kline-guide-hero-stats small { font-size: 8.7px; }
.kline-guide-hero-stats strong { font-size: 16.5px; }
.kline-guide-card-grid { gap: 16px; }
.kline-guide-card {
  gap: 14px;
  padding: 20px;
  border-radius: 21px;
}
.kline-guide-card-wide { grid-column: 1 / -1; }
.kline-guide-card-head strong { font-size: 14.5px; line-height: 1.3; }
.kline-guide-card-head small { font-size: 9px; line-height: 1.4; }
.kline-guide-card p { font-size: 12px; line-height: 1.68; }
.kline-guide-card ul { gap: 9px; padding-left: 20px; }
.kline-guide-card li { font-size: 11.4px; line-height: 1.62; }
.kline-guide-chip { font-size: 8.4px; }
.kline-guide-card-note {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 9px;
  padding: 12px 13px;
  font-size: inherit;
}
.kline-guide-card-note > span {
  display: grid;
  place-items: center;
  width: 27px;
  height: 27px;
  border-radius: 9px;
  background: color-mix(in srgb, var(--guide-tone, #4fb9ff) 12%, transparent);
  color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 86%, #fff);
}
.kline-guide-card-note > span svg { width: 14px; height: 14px; }
.kline-guide-card-note p { margin: 0; font-size: 11.2px; line-height: 1.58; }
.kline-guide-footer span { font-size: 10.5px; line-height: 1.55; }
.kline-guide-footer span strong { color: var(--text-2); }

/* Očíslované návody přímo uvnitř karet. */
.kline-guide-step-block {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 18%, var(--border));
  border-radius: 16px;
  background: color-mix(in srgb, var(--guide-tone, #4fb9ff) 4%, rgba(255,255,255,.012));
}
.kline-guide-step-title {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--text);
}
.kline-guide-step-title > span {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 9px;
  background: color-mix(in srgb, var(--guide-tone, #4fb9ff) 12%, transparent);
  color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 84%, #fff);
}
.kline-guide-step-title svg { width: 14px; height: 14px; }
.kline-guide-step-title strong { font-size: 11.5px; }
.kline-guide-step-title small { color: var(--muted); font-size: 8.8px; }
.kline-guide-steps {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.kline-guide-steps li {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  padding: 9px 10px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 12%, var(--border));
  border-radius: 13px;
  background: color-mix(in srgb, var(--panel-solid) 97%, transparent);
}
.kline-guide-steps li > span {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 9px;
  background: color-mix(in srgb, var(--guide-tone, #4fb9ff) 15%, transparent);
  color: color-mix(in srgb, var(--guide-tone, #4fb9ff) 88%, #fff);
  font-size: 10px;
  font-weight: 900;
}
.kline-guide-steps li > div { display: grid; gap: 2px; min-width: 0; }
.kline-guide-steps li strong { color: var(--text); font-size: 11px; line-height: 1.35; }
.kline-guide-steps li p { margin: 0; color: var(--text-2); font-size: 10.7px; line-height: 1.52; }

/* Skutečné grafické prvky, které už K-Line používá. */
.kline-guide-plan-visual {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 11px;
}
.kline-guide-plan-visual figure {
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  margin: 0;
  padding: 12px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #4fb9ff) 15%, var(--border));
  border-radius: 16px;
  background: color-mix(in srgb, var(--panel-solid) 97%, transparent);
}
.kline-guide-plan-visual img {
  width: 82px;
  height: 54px;
  object-fit: contain;
  border-radius: 10px;
}
.kline-guide-plan-visual figcaption { display: grid; gap: 4px; min-width: 0; }
.kline-guide-plan-visual strong { color: var(--text); font-size: 12px; }
.kline-guide-plan-visual span { color: var(--text-2); font-size: 10px; line-height: 1.45; }

.kline-guide-badge-explainer { display: grid; gap: 18px; }
.kline-guide-badge-track {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid color-mix(in srgb, var(--guide-tone, #ffd56b) 18%, var(--border));
  border-radius: 18px;
  background: color-mix(in srgb, var(--panel-solid) 97%, transparent);
}
.kline-guide-badge-track-head {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}
.kline-guide-badge-track-head > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 13px;
  background: color-mix(in srgb, var(--guide-tone, #ffd56b) 13%, transparent);
  color: color-mix(in srgb, var(--guide-tone, #ffd56b) 84%, #fff);
}
.kline-guide-badge-track-head > span svg { width: 20px; height: 20px; }
.kline-guide-badge-track-head > div { display: grid; gap: 2px; }
.kline-guide-badge-track-head small { color: color-mix(in srgb, var(--guide-tone, #ffd56b) 72%, var(--muted)); font-size: 8px; font-weight: 900; letter-spacing: .11em; }
.kline-guide-badge-track-head strong { color: var(--text); font-size: 14px; }
.kline-guide-badge-track-head p { font-size: 10.2px; }
.kline-guide-badge-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.kline-guide-badge-grid article {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 10px;
  min-width: 0;
  padding: 11px;
  border: 1px solid color-mix(in srgb, var(--border) 92%, transparent);
  border-radius: 15px;
  background: linear-gradient(145deg, color-mix(in srgb, var(--panel-alt) 96%, white 4%), color-mix(in srgb, var(--panel-solid) 98%, black 2%));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.kline-guide-badge-image {
  display: grid;
  place-items: center;
  min-height: 74px;
  border-radius: 13px;
  background: radial-gradient(circle, color-mix(in srgb, var(--guide-tone, #ffd56b) 8%, rgba(255,255,255,.03)), transparent 70%);
}
.kline-guide-badge-image img {
  width: 68px;
  height: 68px;
  object-fit: contain;
  filter: drop-shadow(0 8px 11px rgba(0,0,0,.18));
}
.kline-guide-badge-copy { display: grid; align-content: center; gap: 3px; min-width: 0; }
.kline-guide-badge-copy small { color: var(--muted); font-size: 7.8px; text-transform: uppercase; letter-spacing: .06em; }
.kline-guide-badge-copy strong { color: var(--text); font-size: 11.4px; line-height: 1.25; }
.kline-guide-badge-copy span { color: color-mix(in srgb, var(--guide-tone, #ffd56b) 72%, var(--text-2)); font-size: 9px; font-weight: 800; line-height: 1.35; }
.kline-guide-badge-copy p { font-size: 9.2px; line-height: 1.42; }
.kline-guide-badge-copy b { color: color-mix(in srgb, #75dca9 72%, var(--text-2)); font-size: 8.4px; line-height: 1.35; }
.kline-guide-badge-warning {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 11px;
  align-items: center;
  padding: 13px 14px;
  border: 1px solid rgba(90,184,255,.22);
  border-radius: 16px;
  background: rgba(56,132,210,.06);
}
.kline-guide-badge-warning > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 13px;
  background: rgba(86,178,255,.11);
  color: #a8dcff;
}
.kline-guide-badge-warning svg { width: 20px; height: 20px; }
.kline-guide-badge-warning > div { display: grid; gap: 3px; }
.kline-guide-badge-warning strong { color: var(--text); font-size: 11.5px; }
.kline-guide-badge-warning p { font-size: 10.4px; }

@keyframes kline-guide-calm-sweep {
  0%, 12% { transform: translateX(0); opacity: 0; }
  22% { opacity: .62; }
  72% { opacity: .62; }
  88%, 100% { transform: translateX(calc(100vw + 520px)); opacity: 0; }
}
@keyframes kline-guide-calm-drift {
  from { transform: translate3d(0,0,0) scale(1); opacity: .42; }
  to { transform: translate3d(-70px,34px,0) scale(1.08); opacity: .68; }
}
@keyframes kline-guide-dot-calm {
  0%,100% { opacity: .66; box-shadow: 0 0 0 3px rgba(79,215,255,.05), 0 0 9px rgba(79,215,255,.24); }
  50% { opacity: 1; box-shadow: 0 0 0 4px rgba(79,215,255,.07), 0 0 12px rgba(79,215,255,.34); }
}

@media (max-width: 1180px) {
  .kline-guide-category-card { flex-basis: 190px; }
  .kline-guide-badge-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 940px) {
  .kline-guide-plan-visual { grid-template-columns: 1fr; }
  .kline-guide-plan-visual figure { grid-template-columns: 72px minmax(0, 1fr); }
  .kline-guide-plan-visual img { width: 72px; height: 48px; }
  .kline-guide-hero-hint { width: 100%; border-radius: 13px; }
}
@media (max-width: 720px) {
  .kline-guide-category-card { flex-basis: 172px; min-height: 82px; }
  .kline-guide-panel { padding: 15px; }
  .kline-guide-card { padding: 16px; }
  .kline-guide-card-head { flex-direction: column; }
  .kline-guide-badge-grid { grid-template-columns: 1fr; }
  .kline-guide-badge-grid article { grid-template-columns: 66px minmax(0, 1fr); }
  .kline-guide-badge-image { min-height: 66px; }
  .kline-guide-badge-image img { width: 60px; height: 60px; }
  .kline-guide-footer { align-items: flex-start; flex-direction: column; }
  .kline-guide-footer .button { width: 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
  .kline-guide-shell::before,
  .kline-guide-shell::after,
  .kline-guide-status-chip i,
  .kline-guide-intro-play,
  .kline-guide-intro-play-pulse { animation: none !important; }
}


/* K-Line chat: přílohy, PDF a hlasové zprávy */
.chat-attachment-control{position:relative;display:inline-flex;align-items:center;flex:0 0 auto;z-index:8}
.chat-attachment-control.compact{z-index:14}
.chat-attachment-menu{position:absolute;left:0;bottom:calc(100% + 8px);display:none;min-width:235px;padding:7px;border:1px solid color-mix(in srgb,var(--border-strong) 72%,transparent);border-radius:14px;background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:0 18px 46px rgba(0,0,0,.22);backdrop-filter:blur(14px);z-index:80}
.chat-attachment-menu.open{display:grid;gap:5px;animation:chatAttachmentMenuIn .16s ease-out both}
.chat-attachment-menu>button{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:9px;width:100%;padding:9px 10px;border:0;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.chat-attachment-menu>button:hover{background:color-mix(in srgb,var(--accent-soft) 70%,transparent)}
.chat-attachment-menu>button>b{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;color:#ff536d;font-size:13px}
.chat-attachment-menu>button svg{width:18px;height:18px;color:var(--accent-2)}
.chat-attachment-menu strong,.chat-attachment-menu small{display:block}
.chat-attachment-menu strong{font-size:11px}.chat-attachment-menu small{margin-top:2px;color:var(--muted);font-size:8.5px;line-height:1.25}
.chat-attachment-control.compact .chat-attachment-menu{left:-4px;min-width:205px}
@keyframes chatAttachmentMenuIn{from{opacity:0;transform:translateY(5px) scale(.985)}to{opacity:1;transform:none}}

.chat-file-preview .chat-file-preview-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:color-mix(in srgb,#df334d 16%,var(--panel-alt));color:#df334d;font-size:10px;font-weight:900;letter-spacing:.04em;flex:0 0 auto}
.chat-pdf-card{display:flex;align-items:center;gap:11px;min-width:245px;padding:10px 12px;border:1px solid color-mix(in srgb,currentColor 14%,var(--border));border-radius:15px;color:inherit;text-decoration:none;background:color-mix(in srgb,var(--panel-alt) 75%,transparent);transition:transform .16s ease,border-color .16s ease,background .16s ease}
.chat-pdf-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent-soft) 38%,var(--panel-alt))}
.chat-pdf-card>span{display:grid;place-items:center;width:44px;height:44px;border-radius:11px;background:color-mix(in srgb,#df334d 18%,var(--panel));color:#df334d;font-size:10px;font-weight:950}
.chat-pdf-card div{min-width:0}.chat-pdf-card strong,.chat-pdf-card small{display:block}.chat-pdf-card strong{max-width:285px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.chat-pdf-card small{margin-top:3px;color:var(--muted);font-size:8.5px}
.dock-pdf-card{display:flex;align-items:center;gap:7px;color:inherit;text-decoration:none;max-width:185px}.dock-pdf-card b{display:grid;place-items:center;min-width:30px;height:30px;border-radius:8px;background:color-mix(in srgb,#df334d 18%,transparent);color:#df334d;font-size:8px}.dock-pdf-card span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:700}

.chat-audio-recording{grid-column:1/-1;display:grid;grid-template-columns:12px minmax(110px,1fr) 42px auto auto;align-items:center;gap:9px;min-height:48px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:15px;background:color-mix(in srgb,var(--accent-soft) 26%,var(--panel-alt));box-shadow:0 8px 24px rgba(0,0,0,.09)}
.chat-audio-recording.compact{grid-template-columns:9px minmax(72px,1fr) 32px 31px 24px;gap:5px;min-height:38px;padding:5px 7px;border-radius:11px}
.chat-audio-recording .recording-dot{width:8px;height:8px;border-radius:50%;background:#ff4e68;animation:recordingDotBreathe 1.8s ease-in-out infinite}
.chat-audio-recording>strong{font-variant-numeric:tabular-nums;font-size:10px;color:var(--text-2)}
.chat-audio-recording button{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:30px;padding:0 9px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:9px;background:var(--panel);color:var(--text);cursor:pointer;font-size:9px;font-weight:800}
.chat-audio-recording button svg{width:13px;height:13px}.chat-audio-recording button.cancel{width:28px;padding:0;font-size:18px;color:var(--muted)}
.chat-audio-recording.compact button{height:27px;padding:0 7px}.chat-audio-recording.compact button.cancel{width:24px}
@keyframes recordingDotBreathe{0%,100%{transform:scale(.78);opacity:.58}50%{transform:scale(1);opacity:1}}

.chat-audio-bubble{min-width:min(370px,68vw);padding:8px 10px!important;overflow:hidden}
.chat-audio-card{--audio-progress:0%;position:relative;display:grid;grid-template-columns:38px minmax(150px,1fr) auto;align-items:center;gap:10px;min-width:300px;min-height:48px;isolation:isolate}
.chat-audio-card.compact{grid-template-columns:30px minmax(92px,1fr) auto;gap:6px;min-width:165px;min-height:34px}
.chat-audio-card audio{display:none}
.chat-audio-play{position:relative;z-index:2;display:grid;place-items:center;width:36px;height:36px;border:1px solid color-mix(in srgb,currentColor 18%,transparent);border-radius:50%;background:color-mix(in srgb,var(--panel) 72%,transparent);color:inherit;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.12);transition:transform .18s ease,background .18s ease}
.chat-audio-play:hover{transform:scale(1.04);background:color-mix(in srgb,var(--accent-soft) 68%,var(--panel))}.chat-audio-play.playing{transform:scale(.98)}
.chat-audio-card.compact .chat-audio-play{width:28px;height:28px;font-size:10px}
.chat-audio-duration{position:relative;z-index:2;min-width:34px;color:inherit;opacity:.78;font-size:9px;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}
.chat-audio-card.compact .chat-audio-duration{font-size:7.5px;min-width:28px}
.chat-audio-wave{position:relative;z-index:1;display:flex;align-items:center;gap:2px;height:30px;overflow:hidden}
.chat-audio-card.compact .chat-audio-wave,.chat-audio-recording.compact .chat-audio-wave{height:22px;gap:1.5px}
.chat-audio-wave i{display:block;flex:1 1 2px;min-width:2px;max-width:4px;height:var(--wave-h);border-radius:999px;background:currentColor;opacity:.48;transform-origin:center;animation:audioWaveBreathe 7.5s ease-in-out var(--wave-delay) infinite}
.chat-audio-card.playing .chat-audio-wave i{opacity:.72;animation-duration:2.8s}
.chat-audio-card .chat-audio-wave::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--audio-progress);background:color-mix(in srgb,var(--accent) 22%,transparent);border-right:1px solid color-mix(in srgb,var(--accent) 60%,transparent);pointer-events:none;transition:width .18s linear;mix-blend-mode:soft-light}
.chat-audio-recording .chat-audio-wave i{opacity:.62;animation-duration:2.6s}
@keyframes audioWaveBreathe{0%,100%{transform:scaleY(.72)}38%{transform:scaleY(1)}70%{transform:scaleY(.84)}}
@media (prefers-reduced-motion:reduce){.chat-audio-wave i,.chat-audio-recording .recording-dot{animation:none!important}.chat-attachment-menu.open{animation:none}}

.audio-listen-receipt{display:inline-grid;place-items:center;width:15px;height:13px;margin-left:4px;color:color-mix(in srgb,var(--muted) 80%,transparent)}
.audio-listen-receipt svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.audio-listen-receipt.listened{color:#2f9cff}.audio-listen-receipt.waiting{opacity:.45}
.message-receipt.compact .audio-listen-receipt{width:12px;margin-left:2px}.message-receipt.compact .audio-listen-receipt svg{width:11px;height:11px}
.dock-audio-message{padding:6px 7px!important}.dock-file-message{padding:7px 8px!important}

.chat-compose.audio-recording-active>.chat-attachment-control,.chat-compose.audio-recording-active>.chat-emoji-control,.chat-compose.audio-recording-active>[data-action="send-offer"]{opacity:.48;pointer-events:none}
.dock-compose.audio-recording-active>.chat-attachment-control,.dock-compose.audio-recording-active>.chat-emoji-control{opacity:.48;pointer-events:none}

/* Audio/PDF respektuje uživatelské barevné motivy bublin stejně jako text. */
.chat-pane[data-chat-bubbles="blue-slate"] .chat-message.user .chat-audio-bubble,.chat-pane[data-chat-bubbles="blue-slate"] .chat-message.user .chat-file-bubble,
.chat-pane[data-chat-bubbles="green-cream"] .chat-message.user .chat-audio-bubble,.chat-pane[data-chat-bubbles="green-cream"] .chat-message.user .chat-file-bubble,
.chat-pane[data-chat-bubbles="purple-slate"] .chat-message.user .chat-audio-bubble,.chat-pane[data-chat-bubbles="purple-slate"] .chat-message.user .chat-file-bubble,
.chat-pane[data-chat-bubbles="orange-graphite"] .chat-message.user .chat-audio-bubble,.chat-pane[data-chat-bubbles="orange-graphite"] .chat-message.user .chat-file-bubble,
.chat-pane[data-chat-bubbles="red-ice"] .chat-message.user .chat-audio-bubble,.chat-pane[data-chat-bubbles="red-ice"] .chat-message.user .chat-file-bubble,
.chat-pane[data-chat-bubbles="ocean"] .chat-message.user .chat-audio-bubble,.chat-pane[data-chat-bubbles="ocean"] .chat-message.user .chat-file-bubble,
.chat-pane[data-chat-bubbles="sunset"] .chat-message.user .chat-audio-bubble,.chat-pane[data-chat-bubbles="sunset"] .chat-message.user .chat-file-bubble,
.chat-pane[data-chat-bubbles="aurora"] .chat-message.user .chat-audio-bubble,.chat-pane[data-chat-bubbles="aurora"] .chat-message.user .chat-file-bubble,
.chat-pane[data-chat-bubbles="night"] .chat-message.user .chat-audio-bubble,.chat-pane[data-chat-bubbles="night"] .chat-message.user .chat-file-bubble,
.chat-pane[data-chat-bubbles="gold"] .chat-message.user .chat-audio-bubble,.chat-pane[data-chat-bubbles="gold"] .chat-message.user .chat-file-bubble{background:color-mix(in srgb,var(--accent) 14%,var(--panel));color:inherit}
.chat-pane[data-chat-text="black"] .chat-audio-bubble,.chat-pane[data-chat-text="black"] .chat-file-bubble{color:#090b0f!important}.chat-pane[data-chat-text="white"] .chat-audio-bubble,.chat-pane[data-chat-text="white"] .chat-file-bubble{color:#fff!important}


/* K-Line · více preferovaných destinací při přidání vytížení vozidla */
.vehicle-destinations-editor {
  display: grid;
  gap: 10px;
  padding: 11px;
  border: 1px solid color-mix(in srgb, var(--accent) 24%, var(--border));
  border-radius: 13px;
  background: color-mix(in srgb, var(--panel) 94%, var(--accent-soft));
}
.vehicle-destinations-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.vehicle-destinations-head > div {
  display: grid;
  gap: 3px;
}
.vehicle-destinations-head > div > span {
  color: var(--text-2);
  font-size: 10px;
  font-weight: 800;
}
.vehicle-destinations-head > div > small {
  color: var(--muted);
  font-size: 9px;
  line-height: 1.45;
}
.vehicle-destination-add {
  flex: 0 0 auto;
  min-height: 34px;
  padding: 7px 10px;
}
.vehicle-destination-list {
  display: grid;
  gap: 8px;
}
.vehicle-destination-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 8px;
  align-items: end;
  padding: 9px;
  border: 1px solid color-mix(in srgb, var(--border) 86%, var(--accent));
  border-radius: 11px;
  background: color-mix(in srgb, var(--input) 88%, transparent);
}
.vehicle-destination-row .field > span small {
  color: var(--muted);
  font-size: .9em;
  font-weight: 700;
}
.vehicle-destination-remove {
  min-height: 41px;
  padding-inline: 10px;
  border-color: color-mix(in srgb, #c94855 36%, var(--border));
  color: color-mix(in srgb, #c94855 78%, var(--text));
}
.vehicle-destination-remove:hover,
.vehicle-destination-remove:focus-visible {
  border-color: color-mix(in srgb, #c94855 64%, var(--border));
  background: color-mix(in srgb, #c94855 10%, var(--input));
}
.vehicle-detail-destinations dd {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.vehicle-detail-destinations dd > span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 7px;
  border: 1px solid color-mix(in srgb, var(--accent) 20%, var(--border));
  border-radius: 999px;
  background: var(--accent-soft);
}

@media (max-width: 760px) {
  .vehicle-destinations-head {
    align-items: stretch;
    flex-direction: column;
  }
  .vehicle-destination-add {
    width: 100%;
  }
  .vehicle-destination-row {
    grid-template-columns: 1fr;
  }
  .vehicle-destination-remove {
    justify-self: start;
    min-height: 34px;
  }
}

/* K-Line 2026-08-29 — jedna konverzace na partnera, zakázky jako informační pruhy */
.chat-pane { grid-template-rows:auto minmax(0,1fr) auto; }
.chat-pane > .chat-pane-head { grid-row:1; }
.chat-pane > .chat-stream { grid-row:2; }
.chat-pane > .chat-compose { grid-row:3; }
.dock-chat-body { grid-template-rows:1fr auto; }

.chat-thread-divider {
  width:100%;
  display:grid;
  grid-template-columns:minmax(18px,1fr) minmax(0,auto) minmax(18px,1fr);
  align-items:center;
  gap:10px;
  margin:7px 0 5px;
  padding:0 2px;
  color:var(--text);
}
.chat-thread-divider-line {
  height:1px;
  background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 34%,var(--border-strong)) 74%);
}
.chat-thread-divider > .chat-thread-divider-line:last-child { transform:scaleX(-1); }
.chat-thread-divider-card {
  position:relative;
  min-width:0;
  display:flex;
  align-items:center;
  gap:9px;
  padding:7px 10px;
  border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));
  border-radius:11px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--panel-solid) 92%,var(--accent-soft) 8%),color-mix(in srgb,var(--panel-alt) 96%,transparent));
  box-shadow:0 7px 18px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.04);
}
.chat-thread-divider-kicker {
  flex:0 0 auto;
  padding:3px 6px;
  border-radius:999px;
  background:color-mix(in srgb,var(--accent) 15%,transparent);
  color:var(--accent-2);
  font-size:7.5px;
  font-weight:900;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.chat-thread-divider-route {
  min-width:0;
  display:flex;
  align-items:center;
  gap:6px;
}
.chat-thread-divider-route > span {
  min-width:0;
  display:flex;
  align-items:center;
  gap:4px;
}
.chat-thread-divider-route .flag-code { flex:0 0 auto; }
.chat-thread-divider-route strong {
  overflow:hidden;
  max-width:150px;
  color:var(--text);
  font-size:9px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.chat-thread-divider-route > b {
  flex:0 0 auto;
  color:var(--accent-2);
  font-size:11px;
}
.chat-thread-divider-dates {
  display:flex;
  align-items:center;
  gap:6px;
}
.chat-thread-divider-dates > span {
  display:grid;
  gap:1px;
  padding-left:7px;
  border-left:1px solid color-mix(in srgb,var(--border-strong) 72%,transparent);
}
.chat-thread-divider-dates small {
  color:var(--muted);
  font-size:6.8px;
  line-height:1;
  text-transform:uppercase;
}
.chat-thread-divider-dates strong {
  color:var(--text-2);
  font-size:8px;
  white-space:nowrap;
}
.chat-thread-divider-ref {
  flex:0 0 auto;
  max-width:112px;
  overflow:hidden;
  padding:3px 6px;
  border:1px solid color-mix(in srgb,var(--border-strong) 72%,transparent);
  border-radius:7px;
  color:var(--muted);
  font-size:7px;
  font-weight:800;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.chat-thread-divider-status {
  flex:0 0 auto;
  padding:3px 6px;
  border-radius:999px;
  background:color-mix(in srgb,var(--success) 13%,transparent);
  color:var(--success);
  font-size:7px;
  font-weight:850;
}
.chat-thread-divider-status.closed {
  background:color-mix(in srgb,var(--muted) 10%,transparent);
  color:var(--muted);
}
.chat-thread-divider.pending .chat-thread-divider-card {
  border-style:dashed;
  border-color:color-mix(in srgb,var(--warning) 42%,var(--border));
  background:linear-gradient(180deg,color-mix(in srgb,var(--warning) 6%,var(--panel-solid)),color-mix(in srgb,var(--panel-alt) 97%,transparent));
}
.chat-thread-divider.pending .chat-thread-divider-kicker { background:color-mix(in srgb,var(--warning) 14%,transparent); color:color-mix(in srgb,var(--warning) 80%,var(--text)); }
.chat-thread-divider.general .chat-thread-divider-card { padding:6px 9px; border-color:color-mix(in srgb,var(--border-strong) 74%,transparent); background:color-mix(in srgb,var(--panel-solid) 88%,transparent); }
.chat-thread-divider-icon { flex:0 0 auto; font-size:12px; }
.chat-thread-divider-copy { display:grid; gap:1px; min-width:0; }
.chat-thread-divider-copy strong { color:var(--text-2); font-size:8.5px; }
.chat-thread-divider-copy small { color:var(--muted); font-size:7.4px; }

.dock-messages .chat-thread-divider {
  grid-template-columns:1fr;
  gap:0;
  margin:5px 0 4px;
  padding:0;
}
.dock-messages .chat-thread-divider-line { display:none; }
.dock-messages .chat-thread-divider-card {
  width:100%;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:4px 7px;
  padding:6px 7px;
  border-radius:9px;
  background:color-mix(in srgb,var(--panel-solid) 78%,transparent);
  backdrop-filter:blur(5px);
}
.dock-messages .chat-thread-divider-kicker { align-self:center; padding:2px 5px; font-size:6.5px; }
.dock-messages .chat-thread-divider-route { min-width:0; gap:4px; }
.dock-messages .chat-thread-divider-route strong { max-width:88px; font-size:7.8px; }
.dock-messages .chat-thread-divider-route > b { font-size:9px; }
.dock-messages .chat-thread-divider-dates {
  grid-column:1 / -1;
  gap:8px;
  padding-left:1px;
}
.dock-messages .chat-thread-divider-dates > span { display:flex; align-items:baseline; gap:4px; padding-left:0; border-left:0; }
.dock-messages .chat-thread-divider-dates small { font-size:6.2px; }
.dock-messages .chat-thread-divider-dates strong { font-size:7.2px; }
.dock-messages .chat-thread-divider.general .chat-thread-divider-card { grid-template-columns:auto minmax(0,1fr); }
.dock-messages .chat-thread-divider-copy strong { font-size:7.5px; }
.dock-messages .chat-thread-divider-copy small { display:none; }

@media (max-width:1050px) {
  .chat-thread-divider-card { flex-wrap:wrap; justify-content:center; }
  .chat-thread-divider-route strong { max-width:120px; }
  .chat-thread-divider-dates { flex:1 1 100%; justify-content:center; }
}


/* K-Line 2026-08-29 — zákazník pouze vlastní nabídky + identita firmy + klikací kontext zakázky */
.load-customer-identity {
  display:flex;
  align-items:center;
  gap:10px;
  margin:-2px 0 10px;
  padding:8px 10px;
  border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));
  border-radius:12px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--panel-solid) 94%,var(--accent-soft) 6%),color-mix(in srgb,var(--panel-alt) 96%,transparent));
}
.load-customer-identity .load-customer-avatar {
  width:38px;
  height:38px;
  flex:0 0 38px;
}
.load-customer-identity > span:last-child { display:grid; gap:2px; min-width:0; }
.load-customer-identity small { color:var(--muted); font-size:7.5px; text-transform:uppercase; letter-spacing:.055em; }
.load-customer-identity strong { overflow:hidden; color:var(--text); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }

button.chat-thread-divider-card {
  appearance:none;
  color:inherit;
  font:inherit;
  text-align:left;
}
.chat-thread-divider-card.selectable {
  cursor:pointer;
  transition:border-color 150ms ease, background 150ms ease, transform 150ms ease;
}
@media (hover:hover) and (pointer:fine) {
  .chat-thread-divider-card.selectable:hover {
    border-color:color-mix(in srgb,var(--accent) 48%,var(--border-strong));
    background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 18%,var(--panel-solid)),color-mix(in srgb,var(--panel-alt) 94%,transparent));
    transform:translateY(-1px);
  }
}
.chat-thread-divider-card.selectable:focus-visible {
  outline:2px solid color-mix(in srgb,var(--accent) 75%,white 8%);
  outline-offset:2px;
}
.chat-thread-context-clear {
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:4px;
  min-height:27px;
  padding:4px 7px;
  border:1px solid color-mix(in srgb,var(--border-strong) 78%,transparent);
  border-radius:8px;
  background:color-mix(in srgb,var(--panel-solid) 88%,transparent);
  color:var(--muted);
  font:inherit;
  font-size:7.3px;
  font-weight:800;
  cursor:pointer;
}
.chat-thread-context-clear:hover { color:var(--text); border-color:color-mix(in srgb,var(--accent) 34%,var(--border-strong)); }
.dock-messages .chat-thread-context-clear {
  grid-column:1 / -1;
  justify-self:end;
  min-height:22px;
  padding:2px 5px;
  font-size:6.4px;
}
.dock-messages .chat-thread-context-clear span { display:none; }

/* K-Line 2026-08-29 — aktivní odpověď k zakázce + otevření detailu z informačního pruhu */
.chat-thread-divider-center {
  min-width:0;
  display:flex;
  align-items:center;
  gap:6px;
  border-radius:14px;
  outline:2px solid transparent;
  outline-offset:2px;
  transition:outline-color 180ms ease, box-shadow 180ms ease;
}
.chat-thread-divider-center > .chat-thread-divider-card {
  flex:1 1 auto;
  min-width:0;
}
.chat-thread-detail-button {
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  min-height:31px;
  padding:5px 8px;
  border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border-strong));
  border-radius:9px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--panel-solid) 92%,var(--accent-soft) 8%),color-mix(in srgb,var(--panel-alt) 96%,transparent));
  color:var(--accent-2);
  font:inherit;
  font-size:7.4px;
  font-weight:900;
  white-space:nowrap;
  cursor:pointer;
  transition:border-color 150ms ease, background 150ms ease, transform 150ms ease;
}
@media (hover:hover) and (pointer:fine) {
  .chat-thread-detail-button:hover {
    border-color:color-mix(in srgb,var(--accent) 60%,var(--border-strong));
    background:color-mix(in srgb,var(--accent-soft) 24%,var(--panel-solid));
    transform:translateY(-1px);
  }
}
.chat-thread-detail-button:focus-visible {
  outline:2px solid color-mix(in srgb,var(--accent) 74%,white 10%);
  outline-offset:2px;
}
.chat-thread-divider.reply-selected .chat-thread-divider-center {
  outline-color:#ffd84a;
  box-shadow:0 0 0 1px rgba(255,216,74,.72),0 0 11px rgba(255,216,74,.52),0 0 25px rgba(255,190,35,.27),0 8px 22px rgba(0,0,0,.13);
  animation:klineChatReplyGlow 2.4s ease-in-out infinite;
}
.chat-thread-divider.reply-selected .chat-thread-divider-card {
  border-color:rgba(255,216,74,.88);
  background:linear-gradient(180deg,color-mix(in srgb,#ffd84a 8%,var(--panel-solid)),color-mix(in srgb,var(--panel-alt) 96%,transparent));
}
.chat-thread-divider.reply-selected .chat-thread-divider-kicker {
  background:rgba(255,216,74,.17);
  color:color-mix(in srgb,#ffd84a 78%,var(--text));
}
@keyframes klineChatReplyGlow {
  0%,100% { box-shadow:0 0 0 1px rgba(255,216,74,.64),0 0 9px rgba(255,216,74,.42),0 0 20px rgba(255,190,35,.22),0 8px 22px rgba(0,0,0,.12); }
  50% { box-shadow:0 0 0 1px rgba(255,224,92,.88),0 0 15px rgba(255,216,74,.66),0 0 31px rgba(255,190,35,.34),0 8px 24px rgba(0,0,0,.15); }
}
.dock-messages .chat-thread-divider-center {
  width:100%;
  gap:4px;
  border-radius:11px;
}
.dock-messages .chat-thread-divider-center > .chat-thread-divider-card {
  width:auto;
  min-width:0;
}
.dock-messages .chat-thread-detail-button {
  min-height:26px;
  padding:3px 5px;
  border-radius:7px;
  font-size:6.6px;
}
@media (max-width:1050px) {
  .chat-thread-divider-center { flex-wrap:wrap; justify-content:center; }
  .chat-thread-detail-button { min-height:29px; }
}
@media (prefers-reduced-motion:reduce) {
  .chat-thread-divider.reply-selected .chat-thread-divider-center { animation:none; }
}


/* K-Line World Pulse BETA */
.world-pulse-nav-item{position:relative}
.world-pulse-nav-live{margin-left:auto;padding:2px 6px;border:1px solid color-mix(in srgb,#d946ef 54%,transparent);border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,#a855f7 20%,transparent),color-mix(in srgb,#f97316 14%,transparent));color:#f5d7ff;font-size:6.8px;font-weight:950;letter-spacing:.1em;box-shadow:0 0 14px color-mix(in srgb,#d946ef 28%,transparent),inset 0 0 10px color-mix(in srgb,#f97316 8%,transparent);animation:worldPulseNavLive 2.2s ease-in-out infinite}
@keyframes worldPulseNavLive{0%,100%{filter:brightness(.92);box-shadow:0 0 9px color-mix(in srgb,#d946ef 20%,transparent)}50%{filter:brightness(1.22);box-shadow:0 0 20px color-mix(in srgb,#d946ef 48%,transparent),0 0 30px color-mix(in srgb,#f97316 15%,transparent)}}
.world-pulse-beta-layer{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:26px;background:rgba(2,8,20,.72);backdrop-filter:blur(16px);opacity:0;transition:opacity .22s ease}
.world-pulse-beta-layer[hidden]{display:none}
.world-pulse-beta-layer.open{opacity:1}
.world-pulse-beta-card{position:relative;width:min(700px,calc(100vw - 32px));overflow:hidden;padding:36px 38px 32px;border:1px solid rgba(216,180,254,.58);border-radius:30px;background:radial-gradient(circle at 50% 0%,rgba(168,85,247,.22),transparent 42%),linear-gradient(145deg,rgba(7,18,36,.98),rgba(11,27,50,.98));color:#eef5ff;text-align:center;box-shadow:0 28px 90px rgba(0,0,0,.52),0 0 0 1px rgba(244,114,182,.11),0 0 42px rgba(168,85,247,.28);transform:translateY(12px) scale(.985);transition:transform .28s ease}
.world-pulse-beta-layer.open .world-pulse-beta-card{transform:none}
.world-pulse-beta-card::before{content:"";position:absolute;inset:-2px;border-radius:31px;padding:2px;background:conic-gradient(from 0deg,transparent 0 13%,#8b5cf6 22%,#ec4899 34%,#f59e0b 44%,transparent 57% 78%,#8b5cf6 90%,transparent);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;animation:worldPulseBorderSpin 5.6s linear infinite;filter:drop-shadow(0 0 12px rgba(217,70,239,.45))}
@keyframes worldPulseBorderSpin{to{transform:rotate(360deg)}}
.world-pulse-beta-close{position:absolute;right:16px;top:14px;z-index:2;width:38px;height:38px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(255,255,255,.06);color:#fff;font-size:24px;cursor:pointer}
.world-pulse-beta-orbit{position:relative;width:104px;height:104px;margin:0 auto 12px;display:grid;place-items:center}
.world-pulse-beta-orbit span{font-size:52px;filter:drop-shadow(0 0 20px rgba(96,165,250,.5));animation:worldPulseGlobeBreath 3s ease-in-out infinite}
.world-pulse-beta-orbit i,.world-pulse-beta-orbit b{position:absolute;inset:5px;border:1px solid rgba(167,139,250,.55);border-radius:50%;animation:worldPulseOrbit 5s linear infinite}
.world-pulse-beta-orbit b{inset:16px;border-color:rgba(244,114,182,.48);animation-direction:reverse;animation-duration:3.7s}
.world-pulse-beta-orbit i::after,.world-pulse-beta-orbit b::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#c084fc;box-shadow:0 0 14px #c084fc;left:12px;top:5px}
@keyframes worldPulseOrbit{to{transform:rotate(360deg)}}
@keyframes worldPulseGlobeBreath{50%{transform:scale(1.07);filter:drop-shadow(0 0 30px rgba(96,165,250,.72))}}
.world-pulse-beta-word{display:flex;align-items:baseline;justify-content:center;gap:2px;margin-bottom:10px;font-size:31px;font-weight:1000;letter-spacing:.18em;color:#fff;text-shadow:0 0 20px rgba(168,85,247,.55)}
.world-pulse-beta-word span{display:inline-block;animation:worldPulseLetter 2.2s ease-in-out infinite}.world-pulse-beta-word span:nth-child(2){animation-delay:.08s}.world-pulse-beta-word span:nth-child(3){animation-delay:.16s}.world-pulse-beta-word span:nth-child(4){animation-delay:.24s}.world-pulse-beta-word span:nth-child(5){animation-delay:.32s}.world-pulse-beta-word b{margin-left:10px;color:#f0abfc;font-size:17px;letter-spacing:.26em}
@keyframes worldPulseLetter{0%,100%{transform:translateY(0);opacity:.76}50%{transform:translateY(-4px);opacity:1}}
.world-pulse-beta-badge{display:inline-flex;padding:5px 11px;border-radius:999px;border:1px solid rgba(251,191,36,.38);background:rgba(245,158,11,.10);color:#fde68a;font-size:10px;font-weight:900;letter-spacing:.14em}
.world-pulse-beta-card h2{margin:18px auto 10px;max-width:590px;font-size:27px;line-height:1.16}.world-pulse-beta-card>p{max-width:610px;margin:0 auto;color:#b9c9dc;line-height:1.65}
.world-pulse-beta-source{display:flex;gap:12px;align-items:flex-start;text-align:left;margin:22px auto;padding:14px 16px;max-width:590px;border:1px solid rgba(129,140,248,.18);border-radius:16px;background:rgba(255,255,255,.045)}.world-pulse-beta-source>span{color:#a78bfa;text-shadow:0 0 12px #8b5cf6}.world-pulse-beta-source strong,.world-pulse-beta-source small{display:block}.world-pulse-beta-source small{margin-top:3px;color:#9fb2c8;line-height:1.45}.world-pulse-beta-ok{min-width:250px;box-shadow:0 0 22px rgba(168,85,247,.22)}
.world-pulse-hero{position:relative;display:grid;grid-template-columns:125px minmax(0,1fr) 150px;gap:22px;align-items:center;margin:18px 0;padding:26px;border:1px solid color-mix(in srgb,#8b5cf6 28%,var(--border));border-radius:26px;background:radial-gradient(circle at 8% 50%,color-mix(in srgb,#3b82f6 17%,transparent),transparent 30%),linear-gradient(135deg,color-mix(in srgb,var(--panel) 94%,#111827),color-mix(in srgb,var(--panel) 92%,#4c1d95 8%));box-shadow:0 18px 46px color-mix(in srgb,#111827 14%,transparent);overflow:hidden}
.world-pulse-globe{position:relative;width:110px;height:110px;display:grid;place-items:center}.world-pulse-globe span{font-size:58px;z-index:2;filter:drop-shadow(0 0 22px rgba(59,130,246,.42))}.world-pulse-globe i,.world-pulse-globe b,.world-pulse-globe em{position:absolute;border-radius:50%;border:1px solid rgba(139,92,246,.35)}.world-pulse-globe i{inset:4px;animation:worldPulseOrbit 8s linear infinite}.world-pulse-globe b{inset:17px;border-color:rgba(236,72,153,.28);animation:worldPulseOrbit 5.5s linear infinite reverse}.world-pulse-globe em{inset:-8px;border-color:rgba(59,130,246,.16);animation:worldPulseGlobeBreath 3.4s ease-in-out infinite}
.world-pulse-hero-copy>div{display:flex;gap:8px;align-items:center}.world-pulse-live,.world-pulse-beta-mini{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:950;letter-spacing:.12em}.world-pulse-live{border:1px solid rgba(217,70,239,.32);background:rgba(168,85,247,.10);color:#d8b4fe}.world-pulse-live i{width:7px;height:7px;border-radius:50%;background:#d946ef;box-shadow:0 0 12px #d946ef;animation:worldPulseNavLive 1.6s ease-in-out infinite}.world-pulse-beta-mini{border:1px solid rgba(245,158,11,.28);background:rgba(245,158,11,.08);color:#fbbf24}.world-pulse-hero-copy h3{font-size:25px;margin:10px 0 6px}.world-pulse-hero-copy p{margin:0;color:var(--muted);line-height:1.55}.world-pulse-hero-copy>small{display:block;margin-top:10px;color:color-mix(in srgb,var(--text) 76%,var(--muted))}.world-pulse-hero-index{text-align:center;padding:14px;border:1px solid color-mix(in srgb,#8b5cf6 22%,var(--border));border-radius:18px;background:color-mix(in srgb,var(--panel) 82%,transparent)}.world-pulse-hero-index small,.world-pulse-hero-index span{display:block}.world-pulse-hero-index small{font-size:9px;letter-spacing:.12em;color:var(--muted);font-weight:800}.world-pulse-hero-index strong{display:block;font-size:32px;margin:3px 0}.world-pulse-hero-index span{font-size:11px;color:#a78bfa;font-weight:800}
.world-pulse-data-warning{display:flex;gap:13px;align-items:flex-start;margin:12px 0 18px;padding:14px 16px;border:1px solid color-mix(in srgb,#f59e0b 26%,var(--border));border-radius:16px;background:color-mix(in srgb,#f59e0b 7%,var(--panel))}.world-pulse-data-warning>span{display:grid;place-items:center;min-width:32px;height:32px;border-radius:50%;background:rgba(245,158,11,.12);color:#f59e0b;font-weight:950}.world-pulse-data-warning p{margin:0;color:var(--muted);line-height:1.45}.world-pulse-data-warning strong{color:var(--text)}
.world-pulse-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.world-pulse-kpis article{display:flex;gap:12px;align-items:center;padding:15px;border:1px solid var(--border);border-radius:17px;background:var(--panel);box-shadow:0 10px 28px color-mix(in srgb,#111827 7%,transparent)}.world-pulse-kpis article>span{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:color-mix(in srgb,#8b5cf6 10%,var(--panel));font-size:20px}.world-pulse-kpis svg{width:18px;height:18px}.world-pulse-kpis small,.world-pulse-kpis strong{display:block}.world-pulse-kpis small{color:var(--muted);font-size:10px}.world-pulse-kpis strong{font-size:21px;margin-top:2px}
.world-pulse-main-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px;margin:16px 0}.world-pulse-panel{border:1px solid var(--border);border-radius:20px;background:var(--panel);padding:18px;box-shadow:0 12px 34px color-mix(in srgb,#111827 7%,transparent)}.world-pulse-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.world-pulse-panel-head small{font-size:9px;font-weight:900;letter-spacing:.12em;color:#8b5cf6}.world-pulse-panel-head h3{margin:3px 0 0}.world-pulse-panel-head>span{font-size:9px;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,#8b5cf6 8%,var(--panel));color:var(--muted)}.world-pulse-source-live{color:#e879f9!important;border:1px solid rgba(217,70,239,.25);background:rgba(168,85,247,.08)!important;font-weight:900}
.world-pulse-role-list{display:grid;gap:9px}.world-pulse-role-list article{display:flex;gap:12px;padding:12px;border:1px solid color-mix(in srgb,var(--border) 82%,transparent);border-radius:14px;background:color-mix(in srgb,var(--panel) 93%,#8b5cf6 7%)}.world-pulse-role-list article>span{display:grid;place-items:center;min-width:34px;height:34px;border-radius:11px;background:color-mix(in srgb,#8b5cf6 11%,transparent)}.world-pulse-role-list svg{width:17px;height:17px}.world-pulse-role-list small,.world-pulse-role-list strong{display:block}.world-pulse-role-list small{color:var(--muted);font-size:10px}.world-pulse-role-list p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.world-pulse-role-empty{display:flex;gap:14px;align-items:flex-start;padding:20px;border:1px dashed color-mix(in srgb,#8b5cf6 26%,var(--border));border-radius:16px;background:color-mix(in srgb,#8b5cf6 4%,var(--panel))}.world-pulse-role-empty>span{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,#8b5cf6 10%,transparent)}.world-pulse-role-empty svg{width:19px;height:19px}.world-pulse-role-empty p{margin:5px 0 0;color:var(--muted);line-height:1.5}
.world-pulse-source-list{display:grid;gap:10px}.world-pulse-source-list article{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:14px}.world-pulse-source-list article>span{font-size:22px}.world-pulse-source-list strong,.world-pulse-source-list small{display:block}.world-pulse-source-list small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.35}.world-pulse-source-list b{font-size:8px;letter-spacing:.08em;padding:4px 7px;border-radius:999px}.world-pulse-source-list .connected b{color:#67e8f9;background:rgba(6,182,212,.08);border:1px solid rgba(6,182,212,.2)}.world-pulse-source-list .prepared b{color:#fbbf24;background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.2)}
.world-pulse-zones{margin:20px 0}.world-pulse-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:12px}.world-pulse-section-head small{font-size:9px;font-weight:900;letter-spacing:.12em;color:#8b5cf6}.world-pulse-section-head h3{margin:3px 0}.world-pulse-section-head p{margin:0;color:var(--muted);font-size:11px}.world-pulse-legend{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.world-pulse-legend span{font-size:9px;padding:5px 8px;border-radius:999px;border:1px solid var(--border)}.world-pulse-legend .hot{color:#fb7185;background:rgba(244,63,94,.07)}.world-pulse-legend .warm{color:#fbbf24;background:rgba(245,158,11,.07)}.world-pulse-legend .balanced{color:#a78bfa;background:rgba(139,92,246,.07)}.world-pulse-legend .cool{color:#67e8f9;background:rgba(6,182,212,.07)}
.world-pulse-zone-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.world-pulse-zone{position:relative;overflow:hidden;padding:16px;border:1px solid var(--border);border-radius:18px;background:var(--panel);box-shadow:0 12px 30px color-mix(in srgb,#111827 6%,transparent)}.world-pulse-zone::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#8b5cf6}.world-pulse-zone.tone-hot::before{background:#f43f5e;box-shadow:0 0 16px #f43f5e}.world-pulse-zone.tone-warm::before{background:#f59e0b}.world-pulse-zone.tone-cool::before{background:#06b6d4}.world-pulse-zone.tone-unknown::before{background:#64748b}.world-pulse-zone-head{display:flex;gap:10px;align-items:center}.world-pulse-country{font-size:26px}.world-pulse-zone-head div{min-width:0;flex:1}.world-pulse-zone-head small,.world-pulse-zone-head strong{display:block}.world-pulse-zone-head small{color:var(--muted);font-size:9px}.world-pulse-zone-head strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.world-pulse-zone-head>b{font-size:20px;padding:6px 8px;border-radius:11px;background:color-mix(in srgb,#8b5cf6 8%,var(--panel));color:#a78bfa}.world-pulse-zone-status{display:flex;align-items:center;gap:7px;margin:12px 0 9px}.world-pulse-zone-status i{width:7px;height:7px;border-radius:50%;background:#8b5cf6}.tone-hot .world-pulse-zone-status i{background:#f43f5e;box-shadow:0 0 11px #f43f5e}.tone-warm .world-pulse-zone-status i{background:#f59e0b}.tone-cool .world-pulse-zone-status i{background:#06b6d4}.world-pulse-zone-status span{font-size:11px;font-weight:850}.world-pulse-zone-status small{margin-left:auto;color:var(--muted);font-size:8.5px}.world-pulse-zone-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.world-pulse-zone-stats span{padding:8px;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:11px;background:color-mix(in srgb,var(--panel) 94%,#8b5cf6 6%)}.world-pulse-zone-stats small,.world-pulse-zone-stats strong{display:block}.world-pulse-zone-stats small{font-size:8px;color:var(--muted)}.world-pulse-zone-stats strong{font-size:17px}.world-pulse-zone>p{min-height:48px;margin:10px 0;color:var(--muted);font-size:10.5px;line-height:1.5}
.world-pulse-weather{display:flex;gap:9px;align-items:center;min-height:48px;padding:9px 10px;border-radius:12px;background:color-mix(in srgb,#3b82f6 6%,var(--panel));border:1px solid color-mix(in srgb,#3b82f6 13%,var(--border))}.world-pulse-weather-loader{width:16px;height:16px;border:2px solid color-mix(in srgb,#60a5fa 25%,transparent);border-top-color:#60a5fa;border-radius:50%;animation:worldPulseOrbit 1.1s linear infinite}.world-pulse-weather-icon{font-size:24px}.world-pulse-weather div{min-width:0}.world-pulse-weather small,.world-pulse-weather strong,.world-pulse-weather div span{display:block}.world-pulse-weather small{font-size:7.5px;letter-spacing:.08em;color:#60a5fa;font-weight:900}.world-pulse-weather strong{font-size:10.5px}.world-pulse-weather div span{font-size:9px;color:var(--muted);margin-top:2px}
.world-pulse-empty-network{grid-column:1/-1;padding:40px 20px;text-align:center;border:1px dashed var(--border);border-radius:20px;background:var(--panel)}.world-pulse-empty-network>span{font-size:46px}.world-pulse-empty-network strong{display:block;margin:8px 0}.world-pulse-empty-network p{max-width:560px;margin:auto;color:var(--muted);line-height:1.5}.world-pulse-privacy{display:flex;gap:13px;align-items:flex-start;margin:20px 0;padding:15px 17px;border:1px solid color-mix(in srgb,#8b5cf6 18%,var(--border));border-radius:16px;background:color-mix(in srgb,#8b5cf6 4%,var(--panel))}.world-pulse-privacy>span{min-width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,#8b5cf6 10%,transparent)}.world-pulse-privacy svg{width:17px;height:17px}.world-pulse-privacy p{margin:0;color:var(--muted);line-height:1.5}.world-pulse-privacy strong{color:var(--text)}
@media(max-width:1050px){.world-pulse-zone-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.world-pulse-main-grid{grid-template-columns:1fr}.world-pulse-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.world-pulse-hero{grid-template-columns:76px 1fr;padding:18px}.world-pulse-globe{width:72px;height:72px}.world-pulse-globe span{font-size:39px}.world-pulse-hero-index{grid-column:1/-1}.world-pulse-zone-grid{grid-template-columns:1fr}.world-pulse-section-head{align-items:flex-start;flex-direction:column}.world-pulse-legend{justify-content:flex-start}.world-pulse-kpis{grid-template-columns:1fr 1fr}.world-pulse-beta-card{padding:30px 20px 24px}.world-pulse-beta-word{font-size:24px;letter-spacing:.1em}.world-pulse-beta-word b{font-size:13px}.world-pulse-beta-card h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){.world-pulse-nav-live,.world-pulse-beta-card::before,.world-pulse-beta-orbit i,.world-pulse-beta-orbit b,.world-pulse-beta-orbit span,.world-pulse-beta-word span,.world-pulse-globe i,.world-pulse-globe b,.world-pulse-globe em,.world-pulse-live i,.world-pulse-weather-loader{animation:none!important}}

/* Komunikace – karty si drží plnou výšku; při větším počtu se seznam posouvá. */
.conversation-records {
  grid-auto-rows: max-content;
  align-content: start;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-gutter: stable;
  padding-right: 4px;
}
.conversation-record {
  min-height: 94px;
  align-self: start;
}
.conversation-records::-webkit-scrollbar {
  width: 8px;
}
.conversation-records::-webkit-scrollbar-track {
  margin: 3px 0 8px;
  border-color: color-mix(in srgb,var(--border) 52%,transparent);
  background: color-mix(in srgb,var(--panel-solid) 82%,transparent);
}
.conversation-records::-webkit-scrollbar-thumb {
  border: 2px solid transparent;
  background: linear-gradient(180deg,
    color-mix(in srgb,var(--accent-2) 20%,#59667a 80%),
    color-mix(in srgb,var(--accent) 16%,#263246 84%)
  ) padding-box;
}

/* Nepřečtená konverzace – pouze jedno čisté vnější orámování. */
.conversation-record.unread:not(.ai-support-conversation-record) {
  border-color: rgba(72,255,158,.94);
  background: linear-gradient(180deg,
    color-mix(in srgb,#2ee889 10%,var(--panel-solid)),
    color-mix(in srgb,#20c979 5%,var(--panel))
  );
  box-shadow:
    0 14px 30px rgba(0,0,0,.17),
    0 0 16px rgba(56,255,154,.18),
    inset 0 1px 0 rgba(255,255,255,.055);
}
.conversation-record.unread:not(.ai-support-conversation-record):hover {
  border-color: rgba(102,255,175,.98);
  background: linear-gradient(180deg,
    color-mix(in srgb,#31ef8f 12%,var(--panel-solid)),
    color-mix(in srgb,#20cb79 7%,var(--panel))
  );
  box-shadow:
    0 17px 34px rgba(0,0,0,.20),
    0 0 18px rgba(56,255,154,.22),
    inset 0 1px 0 rgba(255,255,255,.06);
}
.conversation-record.unread::after,
.conversation-record.unread .conversation::after {
  display: none !important;
  animation: none !important;
  box-shadow: none !important;
}

/* Komunikace – nepřečtená karta má opravdu jen JEDEN zelený rám.
   Odstraňuje vnitřní rámeček/focus vrstvu na horním tlačítku konverzace. */
.conversation-record.unread:not(.ai-support-conversation-record)::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
}
.conversation-record.unread:not(.ai-support-conversation-record) > .conversation,
.conversation-record.unread:not(.ai-support-conversation-record) > .conversation:hover,
.conversation-record.unread:not(.ai-support-conversation-record) > .conversation:focus,
.conversation-record.unread:not(.ai-support-conversation-record) > .conversation:focus-visible {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.conversation-record.unread:not(.ai-support-conversation-record) > .conversation::before,
.conversation-record.unread:not(.ai-support-conversation-record) > .conversation::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
  animation: none !important;
}


/* Kira intro – jednorázové video po prvním přihlášení */
.kira-intro-overlay {
  position: fixed;
  inset: 0;
  z-index: 12000;
  display: grid;
  place-items: center;
  padding: clamp(18px, 4vw, 56px);
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 50%, rgba(13, 98, 200, .10) 0 22%, rgba(3, 12, 27, .62) 58%, rgba(1, 7, 17, .90) 100%);
  backdrop-filter: blur(3px) saturate(1.04);
  opacity: 0;
  transition: opacity .52s ease;
  pointer-events: all;
}
.kira-intro-overlay.is-visible { opacity: 1; }
.kira-intro-overlay.is-leaving { opacity: 0; pointer-events: none; }
.kira-intro-stage {
  width: min(980px, 92vw);
  max-height: 86vh;
  display: grid;
  place-items: center;
  filter: drop-shadow(0 30px 70px rgba(0, 0, 0, .72));
}
.kira-intro-frame {
  position: relative;
  isolation: isolate;
  width: 100%;
  padding: 3px;
  border-radius: 26px;
  background: linear-gradient(135deg, rgba(76, 170, 255, .84), rgba(17, 86, 190, .48));
  box-shadow:
    0 0 0 1px rgba(102, 188, 255, .58),
    0 0 20px rgba(24, 139, 255, .34),
    0 0 58px rgba(10, 94, 220, .22),
    0 34px 95px rgba(0, 0, 0, .78);
  animation: kiraIntroBluePulse 7.2s ease-in-out infinite;
}
.kira-intro-frame::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -8px;
  border-radius: 31px;
  border: 2px solid rgba(72, 184, 255, .42);
  background: transparent;
  box-shadow:
    0 0 16px rgba(55, 167, 255, .26),
    0 0 38px rgba(15, 105, 255, .18);
  opacity: .56;
  animation: kiraIntroSoftShadow 7.2s ease-in-out infinite;
  pointer-events: none;
}
.kira-intro-frame::after {
  content: "";
  position: absolute;
  z-index: -2;
  inset: -34px;
  border-radius: 48px;
  background: radial-gradient(ellipse at center, rgba(29, 133, 255, .24), rgba(5, 66, 160, .09) 45%, transparent 72%);
  filter: blur(17px);
  opacity: .46;
  animation: kiraIntroOuterShadow 7.2s ease-in-out infinite;
  pointer-events: none;
}
.kira-intro-video {
  display: block;
  width: 100%;
  max-height: calc(86vh - 6px);
  object-fit: contain;
  border: 0;
  border-radius: 23px;
  background: #020914;
  box-shadow: inset 0 0 34px rgba(33, 130, 255, .12);
  outline: none;
  pointer-events: none;
}
@keyframes kiraIntroBluePulse {
  0%, 100% {
    box-shadow: 0 0 0 1px rgba(102, 188, 255, .48), 0 0 15px rgba(24, 139, 255, .22), 0 0 42px rgba(10, 94, 220, .14), 0 34px 95px rgba(0, 0, 0, .76);
  }
  50% {
    box-shadow: 0 0 0 1px rgba(126, 201, 255, .68), 0 0 26px rgba(46, 158, 255, .38), 0 0 66px rgba(15, 105, 255, .24), 0 38px 104px rgba(0, 0, 0, .80);
  }
}
@keyframes kiraIntroSoftShadow {
  0%, 100% { opacity: .34; box-shadow: 0 0 12px rgba(55, 167, 255, .18), 0 0 30px rgba(15, 105, 255, .12); }
  50% { opacity: .74; box-shadow: 0 0 22px rgba(55, 167, 255, .34), 0 0 52px rgba(15, 105, 255, .22); }
}
@keyframes kiraIntroOuterShadow {
  0%, 100% { opacity: .28; transform: scale(.992); }
  50% { opacity: .58; transform: scale(1.012); }
}
@media (max-width: 720px) {
  .kira-intro-overlay { padding: 14px; }
  .kira-intro-stage { width: 96vw; }
  .kira-intro-frame { border-radius: 20px; }
  .kira-intro-frame::before { border-radius: 25px; }
  .kira-intro-video { border-radius: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  .kira-intro-frame,
  .kira-intro-frame::before,
  .kira-intro-frame::after { animation: none; }
}

/* K-Line Mobile – hlavní Komunikace jako mobilní master/detail + Live chat nad nativní lištou. */
@media (max-width: 760px) {
  body.kline-ios-full-app .messages-layout {
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    height: min(640px, calc(100dvh - 178px)) !important;
    min-height: 430px !important;
    max-height: calc(100dvh - 178px) !important;
    overflow: hidden !important;
  }

  body.kline-ios-full-app .messages-layout.ios-mobile-chat-list .conversation-list {
    display: grid !important;
    width: 100% !important;
    max-height: none !important;
    min-height: 0 !important;
    height: 100% !important;
    overflow: hidden !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-list .chat-pane {
    display: none !important;
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-list .conversation-records {
    min-height: 0 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    padding-right: 3px;
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-list .conversation-record {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-list .conversation-record.ios-longpress-pending {
    transform: scale(.985);
    background: color-mix(in srgb,var(--accent) 8%,var(--panel-alt));
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-list .conversation-record.ios-longpress-triggered {
    box-shadow: 0 0 0 1px color-mix(in srgb,var(--danger) 48%,var(--border)), 0 8px 26px color-mix(in srgb,var(--danger) 16%,transparent);
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-list .conversation-hint {
    display: none !important;
  }

  body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .conversation-list {
    display: none !important;
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .chat-pane {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 100% !important;
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .chat-pane.ios-chat-swipe-back-preview {
    transform: translateX(var(--ios-chat-swipe-shift, 0));
    transition: none !important;
    box-shadow: -18px 0 42px rgba(0,0,0,.2);
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .chat-pane-head {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 9px 10px !important;
  }
  body.kline-ios-full-app .ios-mobile-chat-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 38px;
    min-width: 68px;
    padding: 0 11px 0 8px;
    border: 1px solid color-mix(in srgb, var(--accent) 38%, var(--border));
    border-radius: 12px;
    background: linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 74%,var(--panel-alt)),color-mix(in srgb,var(--panel) 92%,transparent));
    color: var(--accent-2);
    box-shadow: 0 6px 18px color-mix(in srgb,var(--accent) 12%,transparent), inset 0 1px 0 rgba(255,255,255,.08);
    font: inherit;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .01em;
    white-space: nowrap;
    -webkit-tap-highlight-color: transparent;
  }
  body.kline-ios-full-app .ios-mobile-chat-back > span {
    font-size: 25px;
    line-height: .7;
    margin-top: -2px;
    font-weight: 500;
  }
  body.kline-ios-full-app .ios-mobile-chat-back:active {
    transform: scale(.96);
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .chat-partner-link {
    min-width: 0 !important;
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .chat-pane-tools {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    justify-content: flex-start !important;
    overflow-x: auto !important;
    overscroll-behavior-x: contain;
    padding-top: 3px;
    scrollbar-width: none;
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .chat-pane-tools::-webkit-scrollbar {
    display: none;
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .chat-stream {
    min-height: 0 !important;
    padding: 12px 10px !important;
    -webkit-overflow-scrolling: touch;
  }
  body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .chat-compose {
    width: 100% !important;
    min-width: 0 !important;
    padding: 8px !important;
    gap: 5px !important;
  }

  /* Desktop má otevřený Live chat přichycený k dolní hraně stránky. V aplikaci je
     pod ním nativní spodní navigace, proto musí být samotné FIXED okno posunuté také. */
  body.kline-ios-full-app .chat-dock {
    right: 8px !important;
    left: 8px !important;
    bottom: 88px !important;
    max-height: calc(100dvh - 150px) !important;
  }
  body.kline-ios-full-app .dock-chat.open {
    inset: auto 8px 88px 8px !important;
    width: auto !important;
    max-width: none !important;
    max-height: calc(100dvh - 150px) !important;
  }
  body.kline-ios-full-app .dock-chat.open .dock-chat-body {
    height: min(400px, calc(100dvh - 250px)) !important;
    max-height: calc(100dvh - 250px) !important;
    min-height: 0 !important;
    grid-template-rows: minmax(0, 1fr) auto !important;
    overflow: hidden !important;
  }
  body.kline-ios-full-app .dock-chat.open .dock-messages {
    min-height: 0 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
  }
  body.kline-ios-full-app .dock-chat.open .dock-compose {
    position: relative !important;
    z-index: 8 !important;
    flex: 0 0 auto !important;
    min-height: 49px !important;
  }
}

/* ================================================================
   K-Line 0.7.7 · centrální STOP / START burzy
   ================================================================ */
.market-paused-banner {
  position: sticky;
  top: 0;
  z-index: 92;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  margin: 0 14px;
  padding: 10px 14px;
  border: 1px solid rgba(255,79,91,.42);
  border-radius: 0 0 14px 14px;
  background: linear-gradient(110deg,rgba(92,10,18,.94),rgba(32,9,15,.96) 58%,rgba(13,22,35,.97));
  box-shadow: 0 12px 34px rgba(0,0,0,.28),0 0 28px rgba(255,59,72,.17),inset 0 1px 0 rgba(255,255,255,.08);
  color: #fff;
  backdrop-filter: blur(16px);
}
.market-paused-banner[hidden] { display:none !important; }
.market-paused-icon { display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,125,134,.48);border-radius:11px;background:rgba(255,53,68,.13);box-shadow:0 0 18px rgba(255,58,72,.2);font-size:15px; }
.market-paused-banner > div { min-width:0;display:grid;gap:2px; }
.market-paused-banner strong { font-size:11px;letter-spacing:.02em; }
.market-paused-banner small { color:rgba(255,228,231,.78);font-size:8.5px;line-height:1.45; }
.market-paused-state { padding:5px 9px;border:1px solid rgba(255,105,116,.5);border-radius:999px;background:rgba(255,47,64,.14);color:#ffadb4;font-size:9px;font-weight:950;letter-spacing:.13em;box-shadow:0 0 14px rgba(255,49,65,.17); }
.market-paused-banner.market-paused-pulse { animation:market-paused-banner-pulse .72s ease; }
@keyframes market-paused-banner-pulse { 0%,100%{transform:translateY(0)} 32%{transform:translateY(2px);box-shadow:0 14px 38px rgba(0,0,0,.3),0 0 44px rgba(255,55,70,.34)} }

.market-admin-controls {
  position: relative;
  display: grid;
  gap: 8px;
  margin: 5px 2px 9px;
  padding: 10px;
  overflow: hidden;
  border: 1px solid rgba(116,150,193,.26);
  border-radius: 13px;
  background: linear-gradient(150deg,rgba(7,17,31,.96),rgba(15,27,44,.92));
  box-shadow: 0 10px 26px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.04);
}
.market-admin-controls::before { content:"";position:absolute;inset:-90% -30%;background:conic-gradient(from 0deg,transparent 0 34%,rgba(92,160,255,.11) 42%,transparent 49% 100%);animation:market-admin-scan 7s linear infinite;pointer-events:none; }
.market-admin-controls > * { position:relative;z-index:1; }
@keyframes market-admin-scan { to { transform:rotate(360deg); } }
.market-admin-control-head { display:flex;align-items:center;gap:8px;min-width:0; }
.market-admin-control-head > div { display:grid;gap:1px;min-width:0; }
.market-admin-control-head strong { color:var(--text);font-size:10px;font-weight:900; }
.market-admin-control-head small { color:var(--muted);font-size:7.5px;line-height:1.35; }
.market-admin-control-orb { width:10px;height:10px;border-radius:50%;background:#69e99d;box-shadow:0 0 0 4px rgba(105,233,157,.08),0 0 15px rgba(105,233,157,.4); }
.market-admin-controls.is-paused .market-admin-control-orb { background:#ff5461;box-shadow:0 0 0 4px rgba(255,84,97,.09),0 0 17px rgba(255,84,97,.48);animation:market-orb-pulse 1.15s ease-in-out infinite; }
@keyframes market-orb-pulse { 50% { transform:scale(1.28);filter:brightness(1.3); } }
.market-admin-control-buttons { display:grid;grid-template-columns:1fr 1fr;gap:7px; }
.market-control-button {
  position: relative;
  isolation: isolate;
  min-width:0;
  min-height:42px;
  padding:2px;
  overflow:hidden;
  border:0;
  border-radius:12px;
  background:transparent;
  color:#fff;
  cursor:pointer;
  font:inherit;
  transition:transform .18s ease,filter .18s ease,opacity .18s ease;
}
.market-control-button::before { content:"";position:absolute;z-index:-2;inset:-80%;background:conic-gradient(from 0deg,transparent 0 26%,var(--market-ring) 32% 39%,transparent 46% 68%,var(--market-ring) 74% 80%,transparent 87%);animation:market-control-orbit 2.4s linear infinite;filter:blur(.1px); }
.market-control-button::after { content:"";position:absolute;z-index:-1;inset:2px;border-radius:10px;background:linear-gradient(180deg,var(--market-face-1),var(--market-face-2));box-shadow:inset 0 1px 0 rgba(255,255,255,.12); }
@keyframes market-control-orbit { to { transform:rotate(360deg); } }
.market-control-button span,.market-control-button strong { position:relative;z-index:1; }
.market-control-button span { display:block;margin-bottom:1px;font-size:10px;filter:drop-shadow(0 0 6px currentColor); }
.market-control-button strong { display:block;font-size:7.4px;letter-spacing:.055em;white-space:nowrap; }
.market-control-button:hover:not(:disabled) { transform:translateY(-1px) scale(1.012);filter:brightness(1.14); }
.market-stop-button { --market-ring:#ff5a67;--market-face-1:#8b202b;--market-face-2:#4a121a;box-shadow:0 0 17px rgba(255,65,80,.14); }
.market-start-button { --market-ring:#62f1a1;--market-face-1:#167c4b;--market-face-2:#0b422a;box-shadow:0 0 17px rgba(63,231,139,.13); }
.market-control-button:disabled { opacity:.3;cursor:not-allowed;filter:grayscale(.55); }
.market-control-button:disabled::before { animation:none;opacity:.22; }

.market-control-dialog { width:min(650px,calc(100vw - 28px));max-width:none;padding:0;border:0;border-radius:23px;background:transparent;color:#fff;overflow:visible; }
.market-control-dialog::backdrop { background:rgba(0,4,12,.82);backdrop-filter:blur(9px) saturate(.75); }
.market-control-dialog-shell { position:relative;isolation:isolate;display:grid;gap:15px;padding:30px;overflow:hidden;border:1px solid rgba(255,255,255,.17);border-radius:23px;background:radial-gradient(circle at 50% -10%,rgba(66,127,207,.18),transparent 42%),linear-gradient(150deg,#07111f 0%,#0c1728 58%,#080f1b 100%);box-shadow:0 34px 100px rgba(0,0,0,.62),0 0 60px rgba(82,137,214,.14),inset 0 1px 0 rgba(255,255,255,.09); }
.market-control-dialog-shell::before { content:"";position:absolute;z-index:-2;inset:-130%;background:conic-gradient(from 0deg,transparent 0 25%,rgba(88,155,255,.9) 31%,transparent 38% 63%,rgba(88,155,255,.52) 69%,transparent 76%);animation:market-dialog-orbit 2.1s linear infinite; }
.market-control-dialog-shell::after { content:"";position:absolute;z-index:-1;inset:3px;border-radius:20px;background:linear-gradient(145deg,rgba(6,15,29,.985),rgba(14,27,46,.985)); }
.market-control-dialog.target-stop .market-control-dialog-shell::before { background:conic-gradient(from 0deg,transparent 0 24%,rgba(255,66,81,.98) 31%,transparent 39% 61%,rgba(255,120,129,.65) 69%,transparent 77%); }
.market-control-dialog.target-start .market-control-dialog-shell::before { background:conic-gradient(from 0deg,transparent 0 24%,rgba(69,239,148,.98) 31%,transparent 39% 61%,rgba(105,255,177,.62) 69%,transparent 77%); }
@keyframes market-dialog-orbit { to { transform:rotate(360deg); } }
.market-control-energy { position:absolute;z-index:0;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 38%,rgba(76,137,225,.12),transparent 36%);animation:market-energy-breathe 1.25s ease-in-out infinite; }
.target-stop .market-control-energy { background:radial-gradient(circle at 50% 38%,rgba(255,54,72,.18),transparent 38%); }
.target-start .market-control-energy { background:radial-gradient(circle at 50% 38%,rgba(52,232,140,.17),transparent 38%); }
@keyframes market-energy-breathe { 50% { opacity:.42;transform:scale(1.08); } }
.market-control-dialog-shell > *:not(.market-control-energy) { position:relative;z-index:2; }
.market-control-dialog-x { position:absolute !important;right:16px;top:14px;width:33px;height:33px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(255,255,255,.055);color:#fff;font-size:20px;cursor:pointer; }
.market-control-dialog-eyebrow { margin:0;color:#8fb9ef;font-size:9px;font-weight:900;letter-spacing:.18em; }
.target-stop .market-control-dialog-eyebrow { color:#ff8992; }
.target-start .market-control-dialog-eyebrow { color:#7bf0af; }
.market-control-dialog h2 { margin:0;padding-right:42px;font-size:25px;line-height:1.12; }
.market-control-dialog [data-market-dialog-copy] { margin:0;color:#c3cfdf;font-size:11px;line-height:1.65; }
.market-control-countdown { display:grid;place-items:center;gap:3px;width:126px;height:126px;margin:2px auto;border:1px solid rgba(255,255,255,.13);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.07),rgba(255,255,255,.018) 62%,transparent 64%);box-shadow:0 0 38px rgba(80,143,235,.16),inset 0 0 26px rgba(255,255,255,.035); }
.target-stop .market-control-countdown { box-shadow:0 0 42px rgba(255,64,78,.25),inset 0 0 26px rgba(255,65,78,.06); }
.target-start .market-control-countdown { box-shadow:0 0 42px rgba(55,230,136,.22),inset 0 0 26px rgba(55,230,136,.05); }
.market-control-countdown span { font-size:41px;font-weight:950;line-height:.95;font-variant-numeric:tabular-nums; }
.market-control-countdown small { color:#aebdd0;font-size:8px; }
.market-control-warning { display:grid;gap:5px;padding:12px 14px;border:1px solid rgba(255,255,255,.11);border-radius:13px;background:rgba(255,255,255,.035); }
.market-control-warning strong { font-size:10px; }
.market-control-warning span { color:#aebdd0;font-size:9px;line-height:1.5; }
.market-control-dialog-actions { display:grid;grid-template-columns:1fr 1.35fr;gap:10px;margin-top:2px; }
.market-control-confirm { min-height:44px;border:1px solid rgba(255,255,255,.16);border-radius:11px;background:linear-gradient(180deg,#4f5c6c,#313b49);color:#fff;font-weight:900;cursor:not-allowed;opacity:.38;transition:transform .18s ease,filter .18s ease,opacity .18s ease,box-shadow .18s ease; }
.target-stop .market-control-confirm.is-ready { background:linear-gradient(180deg,#df4855,#a51f2b);box-shadow:0 0 29px rgba(255,54,70,.32); }
.target-start .market-control-confirm.is-ready { background:linear-gradient(180deg,#2dcc79,#14834a);box-shadow:0 0 29px rgba(44,225,126,.28); }
.market-control-confirm.is-ready { cursor:pointer;opacity:1;animation:market-confirm-ready 1s ease-in-out infinite; }
@keyframes market-confirm-ready { 50% { filter:brightness(1.13);transform:translateY(-1px); } }

.prelaunch-access-field { padding:10px 11px 9px;border:1px solid rgba(255,171,69,.22);border-radius:13px;background:linear-gradient(145deg,rgba(255,167,59,.055),rgba(255,255,255,.018));box-shadow:0 0 19px rgba(255,164,48,.055); }
.prelaunch-access-field > span { display:flex;align-items:center;justify-content:space-between;gap:8px; }
.prelaunch-access-field > span b { padding:3px 6px;border:1px solid rgba(255,178,74,.32);border-radius:999px;background:rgba(255,164,45,.09);color:#f5bd71;font-size:7px;letter-spacing:.09em; }
.prelaunch-access-field > small { color:#9dafc6;font-size:8px;line-height:1.45; }
.prelaunch-login-status { display:flex;align-items:center;gap:8px;margin-top:-1px;padding:8px 10px;border:1px solid rgba(255,82,96,.18);border-radius:10px;background:rgba(255,65,80,.055);color:#e7b8bd;font-size:8.5px; }
.prelaunch-login-status > span { flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:#ff5865;box-shadow:0 0 12px rgba(255,76,91,.7);animation:market-orb-pulse 1.2s ease-in-out infinite; }

html[data-market-locked="true"] .market-locked-control { opacity:.28 !important;filter:grayscale(.78) saturate(.45) !important;cursor:not-allowed !important;box-shadow:none !important; }
html[data-market-locked="true"] #chat-dock.market-locked-control { opacity:.12 !important;pointer-events:none !important; }
html[data-market-locked="true"] .market-locked-control::after { filter:none; }
html[data-market-locked="true"] .dashboard-main-panel[data-dashboard-main-panel="market"] { opacity:.56;filter:grayscale(.45); }
html[data-market-locked="true"] .dashboard-main-panel[data-dashboard-main-panel="active-transport"] { opacity:.56;filter:grayscale(.45); }
html[data-market-locked="true"] #open-ai.market-locked-control { position:relative; }
html[data-market-bypass="true"] .market-paused-banner { display:none !important; }

@media (max-width:760px) {
  .market-paused-banner { margin:0 7px;padding:9px 10px;grid-template-columns:auto 1fr; }
  .market-paused-state { display:none; }
  .market-admin-control-buttons { grid-template-columns:1fr; }
  .market-control-dialog-shell { padding:24px 18px 19px; }
  .market-control-dialog h2 { font-size:20px; }
  .market-control-countdown { width:108px;height:108px; }
  .market-control-countdown span { font-size:35px; }
  .market-control-dialog-actions { grid-template-columns:1fr; }
}


/* Komunikace (PC): malé Live chaty zůstávají přesně u spodní hrany.
   Pravá hlavní chatová plocha si dole rezervuje 5 cm, takže composer je fyzicky nad Live chaty. */
@media (min-width: 921px) {
  html[data-active-view="messages"] .chat-pane {
    box-sizing: border-box;
    padding-bottom: 5cm;
  }
  html[data-active-view="messages"] .chat-pane > .chat-compose {
    margin-bottom: 0;
  }
}

/* Důkazní časová osa – jednoduché potvrzení kroků Hotovo */
.evidence-stage-body { position: relative; }
.evidence-stage-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  margin-top: 8px;
}
.evidence-stage-actions .mini-button { min-height: 27px; padding: 5px 8px; font-size: 7.5px; }
.evidence-stage-document-button.is-ready {
  border-color: color-mix(in srgb,var(--success) 48%,var(--border));
  background: color-mix(in srgb,var(--success) 11%,var(--panel-alt));
  color: color-mix(in srgb,var(--success) 76%,var(--text));
}
.evidence-stage-optional-button { opacity: .82; }
.evidence-stage-done-button {
  min-width: 74px;
  min-height: 28px;
  padding: 6px 12px;
  border-color: color-mix(in srgb,var(--success) 42%,var(--border)) !important;
  background: linear-gradient(135deg,color-mix(in srgb,var(--success) 23%,var(--panel-solid)),color-mix(in srgb,var(--success) 10%,var(--panel-alt))) !important;
  color: var(--text) !important;
  font-size: 8px;
  font-weight: 850;
}
.evidence-stage-done-button:hover:not(:disabled) { transform: translateY(-1px); box-shadow: 0 8px 18px color-mix(in srgb,var(--success) 18%,transparent); }
.evidence-stage-done-button.is-done,
.evidence-stage-done-button:disabled { opacity: .58; cursor: default; filter: saturate(.55); }
.evidence-stage.evidence-confirmed .evidence-stage-body {
  margin: 0 0 7px;
  padding: 7px 9px 10px;
  border-radius: 11px;
  background: color-mix(in srgb,#000 13%,var(--panel-alt));
  opacity: .76;
  box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--success) 12%,var(--border));
}
.evidence-stage.evidence-confirmed .evidence-derived-copy { opacity: .7; }
.evidence-record.completion-record {
  border-color: color-mix(in srgb,var(--success) 24%,var(--border));
  background: color-mix(in srgb,var(--success) 6%,var(--panel-alt));
}
@media (max-width: 720px) {
  .evidence-stage-actions { justify-content: flex-start; }
  .evidence-stage-done-button { margin-left: auto; }
}

/* K-Line TomTom map layer – API key stays on server-side proxy. */
.kline-tomtom-map { isolation: isolate; background: radial-gradient(circle at 25% 25%, var(--accent-soft), transparent 24%), linear-gradient(115deg, var(--panel-alt), var(--bg-soft)); }
.kline-tomtom-map::before { z-index: 0; }
.kline-map-tiles { position: absolute; inset: 0; z-index: 1; overflow: hidden; }
.kline-map-tile { position: absolute; width: 256px; height: 256px; max-width: none; user-select: none; pointer-events: none; }
.kline-map-route-overlay { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 3; overflow: visible; pointer-events: none; filter: drop-shadow(0 0 4px color-mix(in srgb, var(--accent) 68%, transparent)); }
.kline-map-route-line { fill: none; stroke: var(--accent); stroke-width: 5; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.kline-map-marker { position: absolute; z-index: 5; transform: translate(-50%, -50%); display: grid; justify-items: center; gap: 3px; pointer-events: none; }
.kline-map-marker > span { width: 18px; height: 18px; border: 4px solid var(--panel-solid); border-radius: 50%; background: var(--accent); box-shadow: 0 5px 15px rgba(0,0,0,.28), 0 0 0 2px color-mix(in srgb, var(--accent) 28%, transparent); }
.kline-map-marker.finish > span { width: 21px; height: 21px; }
.kline-map-marker strong { max-width: 150px; padding: 4px 7px; border: 1px solid var(--border); border-radius: 8px; background: color-mix(in srgb, var(--panel-solid) 90%, transparent); color: var(--text); box-shadow: var(--shadow); font-size: 9px; line-height: 1.15; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.kline-map-attribution { position: absolute; right: 8px; bottom: 8px; z-index: 6; padding: 3px 6px; border-radius: 6px; background: color-mix(in srgb, var(--panel-solid) 86%, transparent); color: var(--muted); font-size: 8px; line-height: 1; backdrop-filter: blur(8px); }
.kline-map-loading, .kline-map-error { position: absolute; inset: 0; z-index: 4; display: grid; place-content: center; justify-items: center; gap: 7px; padding: 28px; text-align: center; color: var(--text); }
.kline-map-loading svg, .kline-map-error svg { width: 27px; height: 27px; color: var(--accent); }
.kline-map-loading strong, .kline-map-error strong { font-size: 12px; }
.kline-map-loading small, .kline-map-error small { max-width: 420px; color: var(--muted); font-size: 10px; }
.map-provider-caption { margin-top: 13px; padding: 9px 10px; border: 1px solid var(--border); border-radius: 10px; background: var(--bg-soft); color: var(--muted); font-size: 9px; line-height: 1.4; }


/* K-Line interactive map controls – lightweight pan/zoom over existing TomTom tiles. */
.kline-tomtom-map { cursor: grab; }
.kline-tomtom-map.is-map-dragging { cursor: grabbing; }
.kline-map-scene { position:absolute; inset:0; z-index:1; overflow:hidden; will-change:transform; }
.kline-map-controls { position:absolute; left:10px; top:10px; z-index:8; display:flex; align-items:center; gap:5px; padding:5px; border:1px solid var(--border); border-radius:11px; background:color-mix(in srgb,var(--panel-solid) 91%,transparent); box-shadow:0 8px 22px rgba(0,0,0,.18); backdrop-filter:blur(9px); cursor:default; }
.kline-map-controls button { display:grid; place-items:center; width:30px; height:30px; padding:0; border:1px solid var(--border); border-radius:8px; background:var(--panel); color:var(--text); font-size:17px; font-weight:850; cursor:pointer; }
.kline-map-controls button:hover { border-color:var(--accent); color:var(--accent-2); box-shadow:0 0 12px var(--accent-glow); }
.kline-map-controls span { min-width:31px; text-align:center; color:var(--muted); font-size:8.5px; font-weight:850; }
.kline-map-interaction-hint { position:absolute; left:50%; bottom:9px; z-index:7; max-width:calc(100% - 150px); transform:translateX(-50%); padding:4px 8px; border:1px solid var(--border); border-radius:999px; background:color-mix(in srgb,var(--panel-solid) 88%,transparent); color:var(--muted); font-size:8px; line-height:1.2; white-space:nowrap; pointer-events:none; backdrop-filter:blur(8px); }
.world-pulse-method-note { display:block; margin-top:5px; color:var(--muted); font-size:8.5px; line-height:1.4; }
@media(max-width:720px){.kline-map-interaction-hint{display:none}.kline-map-controls{left:7px;top:7px}.kline-map-controls button{width:28px;height:28px}}

/* K-Line – administrátorská správa pojištění účtů */
.approval-insurance-panel { display:grid; gap:15px; margin-top:16px; padding:17px; border:1px solid color-mix(in srgb,#d8b85d 44%,var(--border)); border-radius:18px; background:linear-gradient(145deg,color-mix(in srgb,var(--panel-alt) 92%,#6a5110 8%),color-mix(in srgb,var(--panel-solid) 97%,#a17814 3%)); box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 12px 28px rgba(0,0,0,.08); }
.approval-insurance-intro { display:flex; align-items:center; gap:13px; }
.approval-insurance-icon { display:grid; place-items:center; flex:0 0 auto; width:45px; height:45px; border:1px solid rgba(224,190,91,.5); border-radius:14px; color:#e3c56d; background:rgba(218,179,64,.09); box-shadow:0 0 18px rgba(212,176,67,.12); }
.approval-insurance-icon svg { width:21px; height:21px; }
.approval-insurance-intro .eyebrow { margin:0 0 3px; color:#c9a84f; }
.approval-insurance-intro h3 { margin:0; font-size:14px; }
.approval-insurance-intro small { display:block; margin-top:4px; color:var(--text-2); line-height:1.45; }
.approval-insurance-fields { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr); gap:12px; }

.insurance-nav-item .nav-count.is-alert { color:#fff5cc; border-color:rgba(227,192,92,.6); background:rgba(181,132,20,.35); box-shadow:0 0 12px rgba(220,177,55,.28); }
.insurance-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; margin-bottom:18px; }
.insurance-summary-card { display:grid; grid-template-columns:auto 1fr; gap:12px; align-items:start; min-height:116px; padding:16px; border:1px solid var(--border); border-radius:18px; background:var(--panel); box-shadow:0 12px 30px rgba(0,0,0,.07); }
.insurance-summary-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:14px; background:var(--panel-alt); }
.insurance-summary-icon svg { width:20px; height:20px; }
.insurance-summary-card small { display:block; color:var(--text-3); font-size:8px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.insurance-summary-card strong { display:block; margin-top:2px; font-size:24px; line-height:1; }
.insurance-summary-card p { margin:7px 0 0; color:var(--text-2); font-size:9px; line-height:1.45; }
.insurance-summary-card.tone-red { border-color:color-mix(in srgb,#d95d5d 38%,var(--border)); }
.insurance-summary-card.tone-red .insurance-summary-icon { color:#ed7b7b; background:rgba(190,52,52,.09); }
.insurance-summary-card.tone-gold { border-color:color-mix(in srgb,#d0ad4f 42%,var(--border)); }
.insurance-summary-card.tone-gold .insurance-summary-icon { color:#d5b24e; background:rgba(190,145,34,.1); }
.insurance-summary-card.tone-green { border-color:color-mix(in srgb,#61b989 36%,var(--border)); }
.insurance-summary-card.tone-green .insurance-summary-icon { color:#63bc8c; background:rgba(58,151,100,.09); }
.insurance-summary-card.tone-blue .insurance-summary-icon { color:#76aee8; background:rgba(70,126,187,.09); }
.insurance-toolbar { display:flex; justify-content:space-between; gap:14px; align-items:center; margin-bottom:16px; }
.insurance-toolbar .filter-chips { flex:1 1 auto; }
.insurance-search { flex:0 1 390px; min-width:260px; }
.insurance-account-list { display:grid; gap:13px; }
.insurance-account-card { position:relative; overflow:hidden; display:grid; gap:14px; padding:17px; border:1px solid var(--border); border-radius:19px; background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel-alt) 94%,transparent)); box-shadow:0 13px 34px rgba(0,0,0,.07); }
.insurance-account-card::before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:#7da9da; opacity:.75; }
.insurance-account-card.state-expired { border-color:color-mix(in srgb,#e25f5f 48%,var(--border)); }
.insurance-account-card.state-expired::before { background:#dc5d5d; }
.insurance-account-card.state-expiring { border-color:color-mix(in srgb,#d6b24e 50%,var(--border)); box-shadow:0 13px 34px rgba(0,0,0,.07),0 0 24px rgba(207,164,44,.08); }
.insurance-account-card.state-expiring::before { background:#d0ab43; }
.insurance-account-card.state-valid::before { background:#56b37d; }
.insurance-account-card.state-missing::before { background:#729ac7; }
.insurance-account-card > header { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; }
.insurance-account-title { display:flex; min-width:0; gap:12px; align-items:center; }
.insurance-account-shield { display:grid; place-items:center; flex:0 0 auto; width:43px; height:43px; border:1px solid var(--border); border-radius:14px; color:#d0ad4f; background:var(--panel-alt); }
.insurance-account-shield svg { width:20px; height:20px; }
.insurance-account-title small { color:var(--text-3); font-size:8px; font-weight:800; letter-spacing:.04em; }
.insurance-account-title h3 { margin:2px 0 3px; font-size:15px; }
.insurance-account-title span { color:var(--text-2); font-size:9px; }
.insurance-state-pill { flex:0 0 auto; padding:6px 10px; border:1px solid var(--border); border-radius:999px; font-size:8px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
.insurance-state-pill.red { color:#ee8b8b; border-color:rgba(220,80,80,.35); background:rgba(191,54,54,.08); }
.insurance-state-pill.gold { color:#d4b455; border-color:rgba(211,174,64,.4); background:rgba(183,137,24,.09); }
.insurance-state-pill.green { color:#72c797; border-color:rgba(82,177,122,.34); background:rgba(57,153,98,.08); }
.insurance-state-pill.neutral { color:#8fb3db; border-color:rgba(105,151,201,.32); background:rgba(77,126,180,.08); }
.insurance-account-status { display:flex; gap:10px; align-items:baseline; padding:11px 13px; border:1px solid color-mix(in srgb,var(--border) 82%,transparent); border-radius:13px; background:var(--panel-alt); }
.insurance-account-status strong { font-size:14px; }
.insurance-account-status span { color:var(--text-2); font-size:9px; }
.insurance-account-fields { display:grid; grid-template-columns:minmax(190px,.8fr) minmax(200px,.8fr) auto; gap:12px; align-items:end; }
.insurance-account-fields label { display:grid; gap:5px; }
.insurance-account-fields label > span { color:var(--text-2); font-size:8px; font-weight:800; }
.insurance-account-fields input { width:100%; min-height:38px; padding:8px 10px; border:1px solid var(--border); border-radius:11px; color:var(--text); background:var(--input); outline:none; }
.insurance-account-fields input:focus { border-color:color-mix(in srgb,var(--accent) 65%,var(--border)); box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent); }
.insurance-account-fields label small { color:var(--text-3); font-size:7px; }
.insurance-days-input { position:relative; }
.insurance-days-input input { padding-right:42px; }
.insurance-days-input b { position:absolute; top:50%; right:11px; transform:translateY(-50%); color:var(--text-3); font-size:8px; }
.insurance-save-button { min-height:39px; white-space:nowrap; }

html.admin-insurance-notice-open { overflow:hidden; }
.admin-insurance-notice-layer { position:fixed; z-index:9998; inset:0; display:grid; place-items:center; padding:22px; background:rgba(7,7,4,.58); backdrop-filter:blur(8px); animation:insurance-layer-in .22s ease both; }
.admin-insurance-notice-card { position:relative; isolation:isolate; width:min(610px,calc(100vw - 36px)); padding:27px; overflow:hidden; border:1px solid rgba(213,178,72,.68); border-radius:26px; background:linear-gradient(155deg,color-mix(in srgb,var(--panel-solid) 95%,#362e0f 5%),color-mix(in srgb,var(--panel-alt) 92%,#5c4510 8%)); box-shadow:0 38px 100px rgba(0,0,0,.62),0 0 42px rgba(205,161,39,.18),inset 0 1px 0 rgba(255,255,255,.09); }
.admin-insurance-notice-card.expired { border-color:rgba(219,91,83,.72); background:linear-gradient(155deg,color-mix(in srgb,var(--panel-solid) 95%,#391313 5%),color-mix(in srgb,var(--panel-alt) 92%,#5c1815 8%)); box-shadow:0 38px 100px rgba(0,0,0,.62),0 0 42px rgba(209,74,64,.17),inset 0 1px 0 rgba(255,255,255,.09); }
.admin-insurance-notice-card::before { content:""; position:absolute; z-index:-2; inset:-4px; padding:4px; border-radius:30px; background:conic-gradient(from 0deg,transparent 0 10%,#c6a13d 16%,#f2dea1 21%,#c39b32 27%,transparent 33% 58%,#d2b458 66%,#f1dda1 71%,#bc9129 77%,transparent 84% 100%); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; animation:insurance-border-run 2.6s linear infinite; pointer-events:none; filter:drop-shadow(0 0 6px rgba(216,177,62,.6)); }
.admin-insurance-notice-card.expired::before { background:conic-gradient(from 0deg,transparent 0 10%,#c94f48 16%,#f3b1aa 21%,#d7635b 27%,transparent 33% 58%,#d54f49 66%,#f3bbb4 71%,#bd3e38 77%,transparent 84% 100%); filter:drop-shadow(0 0 6px rgba(220,78,69,.6)); }
.admin-insurance-notice-glow { position:absolute; z-index:-3; inset:12% 16%; border-radius:50%; background:radial-gradient(circle,rgba(213,170,54,.14),transparent 68%); filter:blur(16px); pointer-events:none; }
.admin-insurance-notice-icon { display:grid; place-items:center; width:62px; height:62px; margin:0 auto 13px; border:1px solid rgba(224,193,99,.58); border-radius:20px; color:#e3c76e; background:radial-gradient(circle at 35% 28%,rgba(255,244,205,.18),transparent 34%),linear-gradient(145deg,rgba(206,164,48,.18),rgba(125,91,14,.08)); box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 12px 34px rgba(182,137,23,.13); animation:insurance-shield-pulse 1.8s ease-in-out infinite; }
.admin-insurance-notice-card.expired .admin-insurance-notice-icon { color:#ee8b82; border-color:rgba(226,117,107,.52); background:rgba(188,61,52,.12); }
.admin-insurance-notice-icon svg { width:29px; height:29px; }
.admin-insurance-notice-copy { text-align:center; }
.admin-insurance-notice-copy .eyebrow { margin:0 0 5px; color:#c9a84f; font-size:8px; font-weight:900; letter-spacing:.13em; }
.admin-insurance-notice-card.expired .admin-insurance-notice-copy .eyebrow { color:#e27b73; }
.admin-insurance-notice-copy h2 { margin:0; font-size:24px; line-height:1.15; }
.admin-insurance-notice-copy > p:last-child { margin:8px auto 0; max-width:470px; color:var(--text-2); font-size:10px; line-height:1.5; }
.admin-insurance-notice-account { display:grid; grid-template-columns:1.35fr .8fr; gap:11px; margin-top:19px; }
.admin-insurance-notice-account > div { display:grid; gap:4px; min-width:0; padding:14px 15px; border:1px solid color-mix(in srgb,#d1ad49 28%,var(--border)); border-radius:15px; background:color-mix(in srgb,var(--panel-alt) 91%,#59420d 9%); }
.admin-insurance-notice-card.expired .admin-insurance-notice-account > div { border-color:color-mix(in srgb,#d46058 30%,var(--border)); background:color-mix(in srgb,var(--panel-alt) 92%,#571814 8%); }
.admin-insurance-notice-account small { color:var(--text-3); font-size:8px; }
.admin-insurance-notice-account strong { overflow:hidden; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
.admin-insurance-notice-account span { color:var(--text-2); font-size:8px; line-height:1.4; }
.admin-insurance-notice-actions { display:grid; grid-template-columns:1fr 1.45fr; gap:10px; margin-top:19px; }
.admin-insurance-notice-actions .button { min-height:43px; font-weight:850; }
@keyframes insurance-layer-in { from { opacity:0; } to { opacity:1; } }
@keyframes insurance-border-run { to { transform:rotate(360deg); } }
@keyframes insurance-shield-pulse { 0%,100% { transform:translateY(0) scale(1); } 50% { transform:translateY(-2px) scale(1.035); } }

@media(max-width:980px) { .insurance-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .insurance-toolbar { align-items:stretch; flex-direction:column; } .insurance-search { flex-basis:auto; min-width:0; } .insurance-account-fields { grid-template-columns:1fr 1fr; } .insurance-save-button { grid-column:1/-1; } }
@media(max-width:640px) { .approval-insurance-fields,.insurance-summary-grid,.insurance-account-fields,.admin-insurance-notice-account,.admin-insurance-notice-actions { grid-template-columns:1fr; } .insurance-account-card > header { flex-direction:column; } .admin-insurance-notice-layer { padding:13px; } .admin-insurance-notice-card { padding:21px 16px; border-radius:21px; } .admin-insurance-notice-copy h2 { font-size:21px; } }

/* K-Line TomTom – automatická mapa v detailu nabídky / přepravy. */
.offer-live-map-panel { display:grid; gap:10px; padding:12px; border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border)); border-radius:18px; background:linear-gradient(145deg,color-mix(in srgb,var(--panel-alt) 96%,var(--accent) 4%),var(--panel)); box-shadow:0 12px 30px rgba(0,0,0,.08); }
.offer-live-map-head { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.offer-live-map-head > div { min-width:0; }
.offer-live-map-head .eyebrow { margin:0 0 3px; }
.offer-live-map-head h3 { margin:0; overflow:hidden; font-size:14px; text-overflow:ellipsis; white-space:nowrap; }
.offer-live-map-head small { display:block; margin-top:4px; color:var(--muted); font-size:9px; line-height:1.4; }
.kline-dialog-tomtom-map { min-height:330px; background:var(--panel-alt); }
.offer-live-map-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); overflow:hidden; border:1px solid var(--border); border-radius:12px; background:var(--panel-alt); }
.offer-live-map-stats > span { display:grid; gap:4px; min-width:0; padding:10px 12px; border-right:1px solid var(--border); }
.offer-live-map-stats > span:last-child { border-right:0; }
.offer-live-map-stats small { color:var(--muted); font-size:8px; }
.offer-live-map-stats strong { overflow:hidden; color:var(--text); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
@media (max-width:720px) {
  .offer-live-map-head { align-items:flex-start; flex-direction:column; }
  .kline-dialog-tomtom-map { min-height:280px; }
  .offer-live-map-stats { grid-template-columns:1fr; }
  .offer-live-map-stats > span { border-right:0; border-bottom:1px solid var(--border); }
  .offer-live-map-stats > span:last-child { border-bottom:0; }
}

/* K-Line – dokončená role-aware Mapa / Sledování přeprav */
.map-heading-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:9px; }
.map-overview-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; margin:0 0 14px; }
.map-overview-summary article { display:grid; align-content:start; gap:3px; min-height:84px; padding:13px 14px; border:1px solid var(--border); border-radius:15px; background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel-alt) 94%,transparent)); box-shadow:0 10px 28px rgba(0,0,0,.05); }
.map-overview-summary small { color:var(--muted); font-size:8px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.map-overview-summary strong { overflow:hidden; font-size:15px; line-height:1.25; text-overflow:ellipsis; white-space:nowrap; }
.map-overview-summary span { overflow:hidden; color:var(--text-2); font-size:8.5px; text-overflow:ellipsis; white-space:nowrap; }
.map-workspace-complete { grid-template-columns:minmax(0,1.65fr) minmax(320px,.72fr); min-height:570px; }
.map-workspace-complete .map-canvas { min-height:570px; }
.map-side-complete { display:flex; flex-direction:column; min-width:0; max-height:570px; overflow:auto; scrollbar-width:thin; }
.map-selected-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding-bottom:10px; border-bottom:1px solid var(--border); }
.map-selected-head > div { min-width:0; }
.map-selected-head small { display:block; color:var(--muted); font-size:7.5px; font-weight:850; letter-spacing:.06em; }
.map-selected-head h3 { margin:3px 0 4px; overflow:hidden; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
.map-selected-head span:not(.status-pill) { display:block; overflow:hidden; color:var(--text-2); font-size:8.5px; text-overflow:ellipsis; white-space:nowrap; }
.map-detail-list { margin-top:10px; }
.map-live-position { display:grid; grid-template-columns:auto minmax(0,1fr); gap:10px; margin-top:11px; padding:11px 12px; border:1px solid var(--border); border-radius:13px; background:var(--panel-alt); }
.map-live-position > span { display:grid; place-items:center; width:34px; height:34px; border-radius:11px; background:var(--accent-soft); color:var(--accent-2); }
.map-live-position > span svg { width:16px; height:16px; }
.map-live-position.available { border-color:color-mix(in srgb,var(--success) 38%,var(--border)); background:color-mix(in srgb,var(--success) 6%,var(--panel-alt)); }
.map-live-position.available > span { color:var(--success); background:color-mix(in srgb,var(--success) 12%,var(--panel-alt)); }
.map-live-position small { display:block; color:var(--muted); font-size:7.5px; font-weight:900; letter-spacing:.08em; }
.map-live-position strong { display:block; margin-top:2px; font-size:9.5px; }
.map-live-position p { margin:4px 0 0; color:var(--text-2); font-size:8px; line-height:1.45; }
.map-selected-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:11px; }
.map-selected-actions .button { min-width:0; }
.map-side-complete .map-provider-caption { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:start; gap:8px; }
.map-side-complete .map-provider-caption p { margin:0; color:var(--muted); font-size:8.2px; line-height:1.45; }
.map-transport-switcher { display:grid; gap:8px; margin-top:12px; padding-top:12px; border-top:1px solid var(--border); }
.map-switcher-head { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.map-switcher-head > div { display:grid; gap:1px; }
.map-switcher-head small { color:var(--muted); font-size:7px; font-weight:900; letter-spacing:.08em; }
.map-switcher-head strong { font-size:10px; }
.map-switcher-head > span { display:grid; place-items:center; min-width:25px; height:22px; padding:0 7px; border:1px solid var(--border); border-radius:999px; color:var(--accent-2); background:var(--accent-soft); font-size:8px; font-weight:900; }
.map-transport-list { display:grid; gap:6px; }
.map-transport-option { display:grid; gap:3px; width:100%; padding:9px 10px; border:1px solid var(--border); border-radius:11px; color:var(--text); background:var(--panel); text-align:left; cursor:pointer; transition:.18s ease; }
.map-transport-option:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--accent) 38%,var(--border)); background:color-mix(in srgb,var(--accent) 4%,var(--panel)); }
.map-transport-option.active { border-color:color-mix(in srgb,var(--accent) 56%,var(--border)); background:color-mix(in srgb,var(--accent) 9%,var(--panel)); box-shadow:inset 3px 0 0 var(--accent),0 8px 20px color-mix(in srgb,var(--accent) 7%,transparent); }
.map-option-route { display:flex; align-items:center; gap:7px; min-width:0; }
.map-option-route .country-flag { flex:0 0 auto; }
.map-option-route strong { overflow:hidden; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.map-transport-option > small { overflow:hidden; padding-left:27px; color:var(--muted); font-size:7.5px; text-overflow:ellipsis; white-space:nowrap; }
.map-settings-dialog { display:grid; gap:11px; }
.map-settings-dialog > p { margin:0 0 2px; color:var(--text-2); font-size:9px; line-height:1.5; }
.map-settings-dialog .switch-row { min-height:58px; padding:11px 12px; border:1px solid var(--border); border-radius:13px; background:var(--panel-alt); }
.map-settings-dialog .switch-row span { min-width:0; }
.map-settings-dialog .switch-row strong { display:block; font-size:10px; }
.map-settings-dialog .switch-row small { display:block; margin-top:3px; color:var(--muted); font-size:8px; line-height:1.4; }
@media (max-width:1100px) {
  .map-overview-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .map-workspace-complete { grid-template-columns:1fr; }
  .map-workspace-complete .map-canvas { min-height:470px; }
  .map-side-complete { max-height:none; border-top:1px solid var(--border); border-left:0; }
}
@media (max-width:640px) {
  .map-heading-actions { justify-content:stretch; width:100%; }
  .map-heading-actions .button { flex:1 1 0; }
  .map-overview-summary { grid-template-columns:1fr 1fr; }
  .map-overview-summary article { min-height:74px; padding:11px; }
  .map-overview-summary strong { font-size:12px; }
  .map-workspace-complete .map-canvas { min-height:390px; }
  .map-selected-actions { grid-template-columns:1fr; }
}

/* K-Line iOS chat: message actions, reply/forward labels and compact chat menu */
.message-forwarded-mark {
  display: block;
  margin: 0 0 5px;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .02em;
  color: color-mix(in srgb,var(--muted) 82%,var(--accent-2));
}
.message-reply-reference {
  display: grid;
  gap: 2px;
  margin: 0 0 7px;
  padding: 7px 9px;
  border-left: 3px solid var(--accent);
  border-radius: 8px;
  background: color-mix(in srgb,var(--panel-solid) 55%,transparent);
  min-width: 0;
}
.message-reply-reference b { font-size: 9px; color: var(--accent-2); }
.message-reply-reference small { display:block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--muted); font-size:9px; }
.message-reply-reference.compact { margin-bottom:5px; padding:5px 7px; }
.ios-deleted-message { opacity:.72; font-style:italic; }
.ios-deleted-message p { margin:0; color:var(--muted); }

body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .chat-pane-head {
  grid-template-columns: auto minmax(0,1fr) auto !important;
  position: relative;
  overflow: visible !important;
}
body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .chat-pane-tools .chat-wallpaper-toggle,
body.kline-ios-full-app .messages-layout.ios-mobile-chat-detail .chat-pane-tools .chat-color-toggle {
  display:none !important;
}
body.kline-ios-full-app .ios-chat-more { position:relative; z-index:40; }
body.kline-ios-full-app .ios-chat-more-toggle {
  width:40px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));
  border-radius:12px;
  background:color-mix(in srgb,var(--panel-alt) 92%,transparent);
  color:var(--text);
  font-size:18px;
  font-weight:900;
  letter-spacing:2px;
  line-height:1;
  -webkit-tap-highlight-color:transparent;
}
body.kline-ios-full-app .ios-chat-more-toggle:active { transform:scale(.95); }
body.kline-ios-full-app .ios-chat-more-menu {
  position:absolute;
  top:44px;
  right:0;
  width:min(230px,72vw);
  padding:7px;
  border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));
  border-radius:15px;
  background:color-mix(in srgb,var(--panel-solid) 97%,transparent);
  box-shadow:0 18px 45px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(18px);
}
body.kline-ios-full-app .ios-chat-more-menu[hidden] { display:none !important; }
body.kline-ios-full-app .ios-chat-more-menu button {
  width:100%;
  min-height:42px;
  display:grid;
  grid-template-columns:28px 1fr;
  align-items:center;
  gap:8px;
  padding:7px 9px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--text);
  text-align:left;
  font:inherit;
}
body.kline-ios-full-app .ios-chat-more-menu button:active { background:color-mix(in srgb,var(--accent) 12%,var(--panel-alt)); }
body.kline-ios-full-app .ios-chat-more-menu button span { color:var(--accent-2); text-align:center; font-size:16px; }
body.kline-ios-full-app .ios-chat-more-menu button b { font-size:11px; }

body.kline-ios-full-app [data-ios-message-id] {
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  user-select:none;
  transition:transform .14s ease, filter .14s ease;
}
body.kline-ios-full-app [data-ios-message-id].ios-message-longpress-pending {
  transform:scale(.985);
  filter:brightness(1.08);
}
.ios-message-action-backdrop {
  position:fixed;
  inset:0;
  z-index:2147483000;
  background:rgba(2,8,18,.44);
  backdrop-filter:blur(3px);
}
.ios-message-action-sheet {
  position:fixed;
  z-index:2147483001;
  left:10px;
  right:10px;
  bottom:max(10px,env(safe-area-inset-bottom));
  display:grid;
  gap:5px;
  padding:9px;
  border:1px solid color-mix(in srgb,var(--accent) 26%,var(--border));
  border-radius:22px;
  background:color-mix(in srgb,var(--panel-solid) 98%,transparent);
  box-shadow:0 24px 70px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.06);
  transform:translateY(calc(100% + 35px));
  opacity:.4;
  transition:transform .19s ease,opacity .19s ease;
  max-height:min(72dvh,620px);
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
.ios-message-action-sheet.open { transform:translateY(0); opacity:1; }
.ios-message-action-handle { width:34px; height:4px; border-radius:999px; margin:1px auto 4px; background:color-mix(in srgb,var(--muted) 55%,transparent); }
.ios-message-action-preview { display:grid; gap:2px; padding:8px 10px 10px; border-bottom:1px solid var(--border); min-width:0; }
.ios-message-action-preview small { color:var(--muted); font-size:9px; }
.ios-message-action-preview strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; }
.ios-message-action-sheet > button {
  min-height:49px;
  display:grid;
  grid-template-columns:30px 1fr;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border:0;
  border-radius:13px;
  background:color-mix(in srgb,var(--panel-alt) 76%,transparent);
  color:var(--text);
  text-align:left;
  font:inherit;
}
.ios-message-action-sheet > button span { text-align:center; color:var(--accent-2); font-size:18px; }
.ios-message-action-sheet > button b { font-size:12px; }
.ios-message-action-sheet > button small { grid-column:2; margin-top:-5px; color:var(--muted); font-size:8.5px; }
.ios-message-action-sheet > button.danger { color:var(--danger); }
.ios-message-action-sheet > button.danger span { color:var(--danger); }
.ios-message-action-sheet > button:disabled { opacity:.42; }
.ios-message-action-sheet > button.cancel { grid-template-columns:1fr; justify-items:center; margin-top:3px; background:color-mix(in srgb,var(--accent) 9%,var(--panel-alt)); text-align:center; }
.ios-message-action-note { display:block; padding:4px 10px 7px; color:var(--muted); font-size:8.5px; }
.ios-forward-list { display:grid; gap:4px; max-height:42dvh; overflow:auto; -webkit-overflow-scrolling:touch; }
.ios-forward-list > button {
  width:100%;
  min-height:52px;
  display:grid;
  grid-template-columns:38px 1fr 18px;
  align-items:center;
  gap:8px;
  padding:7px 9px;
  border:0;
  border-radius:12px;
  background:color-mix(in srgb,var(--panel-alt) 76%,transparent);
  color:var(--text);
  text-align:left;
}
.ios-forward-list > button .avatar { width:34px; height:34px; }
.ios-forward-list > button span { display:grid; gap:2px; min-width:0; }
.ios-forward-list > button b,.ios-forward-list > button small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ios-forward-list > button b { font-size:11px; }
.ios-forward-list > button small { color:var(--muted); font-size:8.5px; }
.ios-forward-list > button i { color:var(--muted); font-style:normal; font-size:20px; }

body.kline-ios-full-app .ios-reply-composer {
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(0,1fr) 32px;
  align-items:center;
  gap:7px;
  width:100%;
  padding:7px 8px 7px 10px;
  border-left:3px solid var(--accent);
  border-radius:10px;
  background:color-mix(in srgb,var(--accent) 8%,var(--panel-alt));
}
body.kline-ios-full-app .ios-reply-composer > span { display:grid; gap:1px; min-width:0; }
body.kline-ios-full-app .ios-reply-composer small { color:var(--accent-2); font-size:8.5px; font-weight:850; }
body.kline-ios-full-app .ios-reply-composer strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:9.5px; }
body.kline-ios-full-app .ios-reply-composer button {
  width:30px;
  height:30px;
  border:0;
  border-radius:9px;
  background:color-mix(in srgb,var(--panel-solid) 82%,transparent);
  color:var(--muted);
  font-size:20px;
}

/* K-Line předplatné 31. 8. 2026 — 48 h zdarma → 30denní akce → běžná cena */
.registration-price-stack { display:grid; gap:5px; margin:2px 0 3px; }
.registration-price-stack > .registration-plan-price { color:var(--text); font-size:13px; }
.registration-plan-promo { display:flex; flex-wrap:wrap; align-items:center; gap:7px; }
.registration-plan-promo del { color:var(--muted); font-size:9px; font-weight:800; text-decoration-thickness:1.5px; opacity:.86; }
.registration-plan-promo b { color:#ff5c6f; font-size:11px; font-weight:950; text-shadow:0 0 16px rgba(255,76,101,.2); }
.registration-price-stack > small { color:var(--success); font-size:8px; font-weight:850; }
.plan-comparison-card .registration-price-stack { margin:1px 0 5px; }

html[data-trial="promo"] .trial-countdown { min-width:190px; border-color:rgba(255,78,99,.58); background:color-mix(in srgb,#2a0d17 40%,var(--panel-solid)); box-shadow:0 13px 34px rgba(0,0,0,.32),0 0 25px rgba(255,70,95,.22); }
html[data-trial="promo"] .trial-countdown::before { border-color:rgba(255,78,99,.58); background:color-mix(in srgb,#2a0d17 40%,var(--panel-solid)); }
html[data-trial="promo"] .trial-countdown span { color:#ff6a79; }
.trial-countdown > small { margin-top:4px; color:var(--muted); font-size:7.5px; font-weight:750; line-height:1.25; }
.trial-countdown .promo-countdown-value { color:#fff2f4; text-shadow:0 0 18px rgba(255,70,95,.3); }
.trial-countdown .promo-countdown-price { display:flex; justify-content:center; align-items:center; gap:6px; color:var(--muted); }
.trial-countdown .promo-countdown-price del { font-size:7.5px; text-decoration-thickness:1.3px; }
.trial-countdown .promo-countdown-price b { color:#ff6678; font-size:8.5px; }

.subscription-price-promo { display:grid; gap:3px; padding:7px 8px; border:1px solid rgba(255,80,104,.28); border-radius:9px; background:rgba(255,60,90,.055); }
.subscription-price-promo del { color:var(--muted); font-size:9px; font-weight:750; }
.subscription-price-promo b { color:#ff6274; font-size:12px; font-weight:950; }
.subscription-price-promo small { color:var(--muted); font-size:7.5px; }
.subscription-card:has(.subscription-price-promo) { border-color:rgba(255,80,104,.32); box-shadow:0 0 0 2px rgba(255,70,96,.06),var(--shadow); }
.promo-red { color:#ff6274 !important; }
.subscription-status.trial { background:color-mix(in srgb,var(--success) 11%,var(--panel)); border-color:color-mix(in srgb,var(--success) 36%,var(--border)); color:color-mix(in srgb,var(--success) 82%,var(--text)); }
.subscription-status.promo { background:rgba(255,70,96,.08); border-color:rgba(255,80,104,.36); color:#ff7181; }

.finance-price-role-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.finance-price-role { display:grid; gap:9px; padding:11px; border:1px solid var(--border); border-radius:13px; background:color-mix(in srgb,var(--panel-alt) 84%,transparent); }
.finance-price-role h4 { margin:0; font-size:10px; letter-spacing:.03em; }
.finance-price-list label.promo-price > div { border-color:rgba(255,80,104,.42); box-shadow:inset 0 0 0 1px rgba(255,80,104,.04); }
.finance-price-list label.promo-price > span { color:#ff7181; }
.finance-price-rules { grid-template-columns:1fr 1fr; margin-top:12px; }
.promo-finance-rule { margin-top:12px; border-color:rgba(255,80,104,.24); }
@media(max-width:900px){.finance-price-role-grid,.finance-price-rules{grid-template-columns:1fr}}

/* K-Line account security: password, SMS 2FA and native biometric lock */
.security-settings-panel { position: relative; overflow: hidden; }
.security-settings-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.security-setting-card { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 11px 12px; align-items: start; padding: 15px; border: 1px solid var(--border); border-radius: 15px; background: var(--panel-alt); box-shadow: inset 0 1px 0 rgba(255,255,255,.035); }
.security-setting-card > div { min-width: 0; }
.security-setting-card strong { display: block; font-size: calc(11px * var(--main-text-scale)); }
.security-setting-card small { display: block; margin-top: 5px; color: var(--muted); font-size: calc(8px * var(--micro-text-scale)); line-height: 1.55; }
.security-setting-card .button { grid-column: 1 / -1; justify-self: start; }
.security-setting-icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; border: 1px solid color-mix(in srgb,var(--accent) 30%,var(--border)); background: color-mix(in srgb,var(--accent) 9%,var(--panel)); box-shadow: 0 0 18px color-mix(in srgb,var(--accent) 11%,transparent); font-size: 17px; }
.security-dialog { display: grid; gap: 12px; }
.security-dialog > p, .security-dialog > small { margin: 0; color: var(--text-2); line-height: 1.55; }
@media (max-width: 980px) { .security-settings-grid { grid-template-columns: 1fr; } }

/* Administrator · SMS gateway daily health */
.admin-sms-gateway-overview {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: 14px;
  align-items: center;
  margin: 0 0 18px;
  padding: 14px 16px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: var(--panel-alt);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.admin-sms-gateway-overview > div { min-width: 0; }
.admin-sms-gateway-overview small { display: block; margin-bottom: 3px; color: var(--muted); font-size: calc(7.5px * var(--micro-text-scale)); letter-spacing: .08em; }
.admin-sms-gateway-overview strong { display: block; font-size: calc(12px * var(--main-text-scale)); }
.admin-sms-gateway-overview p { margin: 4px 0 0; color: var(--muted); font-size: calc(8.5px * var(--micro-text-scale)); line-height: 1.45; }
.admin-sms-gateway-icon {
  display: grid;
  place-items: center;
  min-width: 42px;
  height: 42px;
  padding: 0 8px;
  border-radius: 12px;
  border: 1px solid var(--border);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  background: rgba(255,255,255,.035);
}
.admin-sms-gateway-overview.tone-ok { border-color: rgba(52,211,153,.34); }
.admin-sms-gateway-overview.tone-ok .admin-sms-gateway-icon { box-shadow: 0 0 18px rgba(52,211,153,.12); }
.admin-sms-gateway-overview.tone-low { border-color: rgba(248,113,113,.55); box-shadow: 0 0 24px rgba(248,113,113,.08), inset 0 1px 0 rgba(255,255,255,.04); }
.admin-sms-gateway-overview.tone-error { border-color: rgba(248,113,113,.38); }
.admin-sms-gateway-overview.tone-waiting { border-color: rgba(250,204,21,.30); }
.security-sms-gateway-card.tone-ok { border-color: rgba(52,211,153,.34); }
.security-sms-gateway-card.tone-low,
.security-sms-gateway-card.tone-error { border-color: rgba(248,113,113,.48); }
.security-sms-gateway-card.tone-waiting { border-color: rgba(250,204,21,.30); }
@media (max-width: 760px) {
  .admin-sms-gateway-overview { grid-template-columns: auto minmax(0,1fr); }
  .admin-sms-gateway-overview .button { grid-column: 1 / -1; justify-self: stretch; }
}

/* download center 2026-09-01 */
.download-center-panel .download-option {
  margin-top: 6px;
  border-bottom: 0;
}
.download-center-modal {
  display: grid;
  gap: 16px;
}
.download-center-intro {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}
.download-center-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.download-platform-card {
  position: relative;
  display: grid;
  gap: 14px;
  padding: 16px;
  border-radius: 20px;
  border: 1px solid color-mix(in srgb, var(--border) 78%, transparent);
  background: linear-gradient(180deg, color-mix(in srgb, var(--panel-2) 88%, rgba(255,255,255,0.04)) 0%, color-mix(in srgb, var(--panel) 92%, rgba(255,255,255,0.02)) 100%);
  box-shadow: 0 22px 38px rgba(5, 10, 22, 0.22), inset 0 1px 0 rgba(255,255,255,0.06);
  overflow: hidden;
}
.download-platform-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  opacity: 0.95;
}
.download-platform-card.apple::after {
  box-shadow: inset 0 0 0 1px rgba(214, 219, 226, 0.22), 0 0 28px rgba(184, 192, 205, 0.14);
}
.download-platform-card.android::after {
  box-shadow: inset 0 0 0 1px rgba(53, 224, 167, 0.24), 0 0 30px rgba(29, 168, 120, 0.16);
}
.download-platform-card.windows::after {
  box-shadow: inset 0 0 0 1px rgba(90, 149, 255, 0.22), 0 0 32px rgba(255, 213, 71, 0.12);
}
.download-platform-visual {
  position: relative;
  min-height: 150px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  padding: 16px;
  text-align: center;
  overflow: hidden;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06), 0 16px 32px rgba(7, 12, 24, 0.26);
}
.download-platform-visual.apple {
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,0.42), transparent 44%), linear-gradient(135deg, #f2f4f7 0%, #c8ced7 40%, #7f8894 100%);
  color: #1c2430;
}
.download-platform-visual.android {
  background: radial-gradient(circle at 30% 30%, rgba(137,255,224,0.22), transparent 38%), linear-gradient(135deg, #2ee59d 0%, #119d71 48%, #073f2f 100%);
  color: #ebfff8;
}
.download-platform-visual.windows {
  background: radial-gradient(circle at 70% 25%, rgba(255,255,255,0.18), transparent 34%), linear-gradient(135deg, #12203c 0%, #0b1223 100%);
  color: #f6fbff;
  grid-template-columns: repeat(2, 42px);
  grid-template-rows: repeat(2, 42px) auto;
  justify-content: center;
  align-content: center;
  gap: 8px;
}
.download-platform-symbol {
  font-size: 54px;
  font-weight: 900;
  line-height: 1;
  text-shadow: 0 10px 22px rgba(10, 17, 29, 0.22);
}
.download-platform-visual small {
  display: block;
  margin-top: 10px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.download-platform-copy {
  display: grid;
  gap: 7px;
}
.download-platform-copy h3 {
  margin: 0;
}
.download-platform-copy p:not(.eyebrow) {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}
.download-platform-button {
  width: 100%;
  justify-content: center;
  border-radius: 14px;
  min-height: 44px;
  font-weight: 800;
  letter-spacing: 0.02em;
  box-shadow: 0 14px 28px rgba(9, 14, 26, 0.18);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.download-platform-button:hover,
.download-platform-button:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 18px 34px rgba(9, 14, 26, 0.24), 0 0 0 1px rgba(255,255,255,0.08);
  filter: saturate(1.08) brightness(1.03);
}
.download-platform-button.apple {
  color: #f9fbff;
  background: linear-gradient(135deg, #d4d9e0 0%, #7c8795 48%, #3d4653 100%);
  border: 1px solid rgba(217, 222, 231, 0.26);
}
.download-platform-button.android {
  color: #f4fff9;
  background: linear-gradient(135deg, #3cf0ae 0%, #13aa7a 45%, #09503c 100%);
  border: 1px solid rgba(87, 255, 203, 0.26);
}
.download-platform-button.windows {
  color: #fffdf8;
  background: linear-gradient(90deg, #ef4444 0%, #22c55e 33%, #facc15 66%, #2563eb 100%);
  border: 1px solid rgba(255,255,255,0.18);
}
.windows-pane {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: block;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.24), 0 10px 18px rgba(0,0,0,0.22);
}
.windows-pane.pane-red { background: linear-gradient(135deg, #ff7373 0%, #d12e2e 100%); }
.windows-pane.pane-green { background: linear-gradient(135deg, #67ef91 0%, #169c42 100%); }
.windows-pane.pane-yellow { background: linear-gradient(135deg, #ffe78a 0%, #daa315 100%); }
.windows-pane.pane-blue { background: linear-gradient(135deg, #7fb7ff 0%, #1f5fdc 100%); }
.download-platform-visual.windows small {
  grid-column: 1 / -1;
  margin-top: 6px;
}
@media (max-width: 980px) {
  .download-center-grid { grid-template-columns: 1fr; }
  .download-platform-visual { min-height: 128px; }
}

/* K-Line final audit: whole FX card navigation + server-managed transport/report history */
.fx-dashboard-panel[data-view-link="rates"]{cursor:pointer}
.fx-dashboard-panel[data-view-link="rates"]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.transport-lifecycle-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.transport-lifecycle-panel{margin:14px 0;padding:14px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--panel) 94%,var(--accent) 6%)}
.transport-lifecycle-panel>p{margin:7px 0;color:var(--muted);line-height:1.5}
.transport-lifecycle-history{display:grid;gap:8px;margin-top:12px}
.transport-lifecycle-history>div{display:grid;gap:8px;margin-top:8px}
.transport-lifecycle-history article{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(110px,.7fr) minmax(0,1.6fr);gap:10px;align-items:center;padding:9px 10px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}
.transport-lifecycle-history strong,.transport-lifecycle-history small,.transport-lifecycle-history span{min-width:0}
@media(max-width:720px){.transport-lifecycle-history article{grid-template-columns:1fr;gap:3px}}


/* K-Line unified UI i18n: text generated by CSS pseudo-elements. */
:root {
  --i18n-on-dashboard: "Na Přehledu";
  --i18n-pinned: "PŘIPNUTO";
  --i18n-detail: "detail";
}
html[data-ui-language="en"] { --i18n-on-dashboard:"On dashboard"; --i18n-pinned:"PINNED"; --i18n-detail:"detail"; }
html[data-ui-language="de"] { --i18n-on-dashboard:"Auf der Übersicht"; --i18n-pinned:"ANGEHEFTET"; --i18n-detail:"Detail"; }
html[data-ui-language="pl"] { --i18n-on-dashboard:"Na pulpicie"; --i18n-pinned:"PRZYPIĘTE"; --i18n-detail:"szczegóły"; }
html[data-ui-language="sk"] { --i18n-on-dashboard:"Na Prehľade"; --i18n-pinned:"PRIPNUTÉ"; --i18n-detail:"detail"; }
html[data-ui-language="fr"] { --i18n-on-dashboard:"Sur le tableau de bord"; --i18n-pinned:"ÉPINGLÉ"; --i18n-detail:"détail"; }
html[data-ui-language="es"] { --i18n-on-dashboard:"En el panel"; --i18n-pinned:"FIJADO"; --i18n-detail:"detalle"; }
html[data-ui-language="it"] { --i18n-on-dashboard:"Nella panoramica"; --i18n-pinned:"FISSATO"; --i18n-detail:"dettaglio"; }
html[data-ui-language="uk"] { --i18n-on-dashboard:"На огляді"; --i18n-pinned:"ЗАКРІПЛЕНО"; --i18n-detail:"деталі"; }
html[data-ui-language="ro"] { --i18n-on-dashboard:"În prezentare"; --i18n-pinned:"FIXAT"; --i18n-detail:"detalii"; }

/* K-Line TOP / Zvýraznění + kredit */
.marketplace-promotion-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:11px 0 3px;padding-top:9px;border-top:1px dashed color-mix(in srgb,var(--border) 72%,transparent)}
.marketplace-promotion-actions .mini-button{min-height:30px}
.promotion-top-button{border-color:color-mix(in srgb,#c9a74c 48%,var(--border));background:color-mix(in srgb,var(--panel) 88%,#e3c766 12%)}
.promotion-highlight-button{border-color:color-mix(in srgb,#9aafc2 58%,var(--border));background:color-mix(in srgb,var(--panel) 90%,#aebdca 10%);box-shadow:inset 0 0 0 1px rgba(174,189,202,.045)}
.promotion-toggle-switch{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:5px 9px;border:1px solid color-mix(in srgb,#9aafc2 58%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--panel) 91%,#aebdca 9%);color:var(--text);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,transform .16s ease}
.promotion-toggle-switch:hover{border-color:color-mix(in srgb,#c5d2dd 76%,var(--border));box-shadow:0 0 18px rgba(174,189,202,.18),0 7px 18px rgba(31,49,66,.08)}
.promotion-toggle-switch.top{border-color:color-mix(in srgb,#c9a74c 55%,var(--border));background:color-mix(in srgb,var(--panel) 92%,#d9bc63 8%)}
.promotion-toggle-switch.top:hover{border-color:color-mix(in srgb,#e0c46f 72%,var(--border));box-shadow:0 0 18px rgba(214,182,86,.18),0 7px 18px rgba(52,42,17,.07)}
.promotion-toggle-switch.top.is-on .promotion-switch-track{background:linear-gradient(90deg,#b99a45,#e3c96e);box-shadow:inset 0 1px 3px rgba(0,0,0,.12),0 0 10px rgba(215,183,86,.25)}
.promotion-toggle-switch:active{transform:translateY(1px)}
.promotion-toggle-switch:disabled{opacity:.62;cursor:wait}
.promotion-switch-track{position:relative;width:34px;height:18px;flex:0 0 34px;border-radius:999px;background:color-mix(in srgb,var(--border) 78%,#778797 22%);box-shadow:inset 0 1px 3px rgba(0,0,0,.18);transition:background .22s ease,box-shadow .22s ease}
.promotion-switch-track i{position:absolute;left:2px;top:2px;width:14px;height:14px;border-radius:50%;background:#f5f7f9;box-shadow:0 1px 4px rgba(0,0,0,.28);transition:transform .22s ease,background .22s ease}
.promotion-toggle-switch.is-on .promotion-switch-track{background:linear-gradient(90deg,#8fa6b8,#c5d4df);box-shadow:inset 0 1px 3px rgba(0,0,0,.12),0 0 9px rgba(174,189,202,.22)}
.promotion-toggle-switch.is-on .promotion-switch-track i{transform:translateX(16px);background:#fff}
.promotion-toggle-switch.is-paused{border-style:dashed;opacity:.88}
.promotion-toggle-switch.is-paused .promotion-switch-track{background:color-mix(in srgb,var(--border) 84%,#9aafc2 16%)}
.promotion-switch-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1.05}
.promotion-switch-copy b{font-size:11px;letter-spacing:.035em}
.promotion-switch-copy small{margin-top:3px;font-size:9px;font-weight:700;opacity:.7}
.promotion-wallet-button{margin-left:auto;font-size:11px;white-space:nowrap}
.promotion-active-chip{display:inline-flex;align-items:center;min-height:29px;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;border:1px solid var(--border);background:var(--panel)}
.promotion-active-chip.top{border-color:color-mix(in srgb,#c9a74c 50%,var(--border));box-shadow:0 0 12px rgba(201,167,76,.09)}
.promotion-active-chip.highlight{border-color:color-mix(in srgb,#9aafc2 52%,var(--border))}
.offer-card.marketplace-highlighted,.vehicle-card.marketplace-highlighted{position:relative;overflow:hidden;border-color:color-mix(in srgb,#79d5ff 78%,var(--border));background:linear-gradient(158deg,color-mix(in srgb,var(--panel) 72%,#0b4f83 28%) 0%,color-mix(in srgb,var(--panel) 78%,#123d68 22%) 48%,color-mix(in srgb,var(--panel) 84%,#092c4d 16%) 100%);box-shadow:0 0 0 1px rgba(156,224,255,.34),0 0 28px rgba(65,181,255,.18),0 0 62px rgba(24,129,230,.10),0 20px 46px rgba(5,29,53,.24),inset 0 1px 0 rgba(245,252,255,.12),inset 0 0 30px rgba(75,180,255,.03);animation:klineMarketplaceHighlightPulse 12s cubic-bezier(.45,0,.55,1) infinite;will-change:box-shadow,filter}
.offer-card.marketplace-highlighted::before,.vehicle-card.marketplace-highlighted::before{content:"";position:absolute;inset:-16%;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 16% 13%,rgba(220,248,255,.30) 0%,rgba(167,225,255,.10) 22%,rgba(207,233,255,0) 44%),linear-gradient(118deg,transparent 23%,rgba(136,217,255,.14) 42%,rgba(227,250,255,.22) 49%,rgba(116,203,255,.08) 56%,transparent 74%);background-size:100% 100%,180% 180%;background-position:center,-38% 50%;opacity:.96;animation:klineMarketplaceHighlightSheen 12s cubic-bezier(.45,0,.55,1) infinite}
.offer-card.marketplace-highlighted .card-top h3,.vehicle-card.marketplace-highlighted .card-top h3{color:color-mix(in srgb,#f7fcff 94%,var(--text));text-shadow:0 0 14px rgba(168,226,255,.22)}
.offer-card.marketplace-highlighted .card-price,.vehicle-card.marketplace-highlighted .card-price{color:color-mix(in srgb,#ffe9a5 80%,var(--accent-2));text-shadow:0 0 18px rgba(252,216,120,.24)}
.offer-card.marketplace-highlighted .mini-route,.vehicle-card.marketplace-highlighted .mini-route{background:linear-gradient(180deg,color-mix(in srgb,var(--panel-alt) 66%,#13598c 34%),color-mix(in srgb,var(--panel-alt) 76%,#0d416d 24%));border-color:color-mix(in srgb,#7fd5ff 68%,var(--border));box-shadow:inset 0 0 0 1px rgba(222,247,255,.10),0 0 22px rgba(75,177,243,.20)}
.offer-card.marketplace-highlighted .detail-list span,.vehicle-card.marketplace-highlighted .detail-list span{background:linear-gradient(180deg,color-mix(in srgb,var(--panel-alt) 72%,#16557f 28%),color-mix(in srgb,var(--panel-alt) 84%,#103654 16%));border:1px solid color-mix(in srgb,#75c9f3 40%,transparent);box-shadow:0 0 16px rgba(83,170,227,.12)}
.offer-card.marketplace-highlighted .route-stop-country > .flag-code,.vehicle-card.marketplace-highlighted .route-stop-country > .flag-code{box-shadow:0 0 0 1px rgba(232,249,255,.22),0 0 16px rgba(87,193,255,.30)}
.offer-card.marketplace-highlighted .route-stop-country strong,.vehicle-card.marketplace-highlighted .route-stop-country strong{font-size:13.2px;font-weight:900;letter-spacing:.012em;color:#f7fcff;text-shadow:0 0 16px rgba(138,218,255,.22)}
.offer-card.marketplace-highlighted .route-stop-country .route-stop-city,.vehicle-card.marketplace-highlighted .route-stop-country .route-stop-city{font-size:12.6px;font-weight:880;color:#eefaff;text-shadow:0 0 14px rgba(124,206,255,.18)}
.offer-card.marketplace-highlighted .route-stop-country .route-stop-time,.vehicle-card.marketplace-highlighted .route-stop-country .route-stop-time{font-size:11.4px;font-weight:860;letter-spacing:.025em;color:#bfeaff;text-shadow:0 0 15px rgba(83,191,255,.28)}
.offer-card.marketplace-highlighted .route-arrow,.vehicle-card.marketplace-highlighted .route-arrow{color:#8edbff;text-shadow:0 0 14px rgba(92,193,255,.55)}
.offer-card.marketplace-highlighted .detail-list strong,.vehicle-card.marketplace-highlighted .detail-list strong{font-size:10.9px}
.offer-card.marketplace-highlighted .marketplace-promotion-actions,.vehicle-card.marketplace-highlighted .marketplace-promotion-actions{border-top-color:color-mix(in srgb,#8bd8ff 52%,transparent)}
@keyframes klineMarketplaceHighlightPulse{0%,100%{box-shadow:0 0 0 1px rgba(138,215,255,.28),0 0 26px rgba(57,174,247,.155),0 0 54px rgba(22,121,220,.075),0 20px 46px rgba(5,29,53,.22),inset 0 1px 0 rgba(245,252,255,.10),inset 0 0 28px rgba(75,180,255,.025);filter:brightness(1.035) saturate(1.08)}50%{box-shadow:0 0 0 1px rgba(202,242,255,.58),0 0 42px rgba(79,199,255,.26),0 0 88px rgba(27,145,246,.15),0 25px 54px rgba(5,29,53,.28),inset 0 1px 0 rgba(255,255,255,.20),inset 0 0 38px rgba(83,194,255,.05);filter:brightness(1.105) saturate(1.18)}}
@keyframes klineMarketplaceHighlightSheen{0%,100%{background-position:center,-38% 50%;opacity:.72}50%{background-position:center,-38% 50%;opacity:1}}
.promotion-wallet-dialog{display:grid;gap:14px}
.promotion-wallet-balance{display:grid;gap:4px;padding:16px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--panel) 93%,var(--accent) 7%)}
.promotion-wallet-balance small{font-size:10px;letter-spacing:.12em;color:var(--muted)}
.promotion-wallet-balance strong{font-size:28px;line-height:1.05}
.promotion-wallet-balance span{font-size:12px;color:var(--muted)}
.promotion-free-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.promotion-free-grid>span{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--border);border-radius:13px;background:var(--panel)}
.promotion-free-grid>span.available{border-color:color-mix(in srgb,#5abf8a 48%,var(--border));box-shadow:inset 0 0 16px rgba(90,191,138,.05)}
.promotion-free-grid small{color:var(--muted);font-size:11px}
.promotion-topup-actions{display:grid;gap:9px;padding-top:3px}
.promotion-topup-actions>div{display:flex;flex-wrap:wrap;gap:8px}
.promotion-topup-actions>small{color:var(--muted);line-height:1.45}
.promotion-pending-topups{display:grid;gap:8px;padding-top:10px;border-top:1px solid var(--border)}
.promotion-pending-topups article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}
.promotion-pending-topups article>span{font-weight:800;font-size:17px}
.promotion-pending-topups article>div{display:grid;gap:2px}.promotion-pending-topups small{color:var(--muted)}
.promotion-admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.promotion-admin-metrics>span{display:grid;gap:3px;padding:11px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.promotion-admin-metrics small{color:var(--muted)}
.marketplace-promotion-create-note{border-style:dashed}
.marketplace-promotion-create-switches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.marketplace-promotion-create-switches .switch-row{margin:0;min-height:58px}
@media(max-width:720px){.marketplace-promotion-create-switches{grid-template-columns:1fr}}
@media(max-width:720px){.promotion-wallet-button{margin-left:0}.promotion-free-grid,.promotion-admin-metrics{grid-template-columns:1fr}.marketplace-promotion-actions{align-items:stretch}.marketplace-promotion-actions>*{flex:1 1 auto;justify-content:center}}
@media(prefers-reduced-motion:reduce){.offer-card.marketplace-highlighted,.vehicle-card.marketplace-highlighted{animation:none;filter:none;box-shadow:0 0 0 1px rgba(215,233,248,.18),0 0 22px rgba(154,192,223,.18),0 18px 42px rgba(16,31,48,.16),inset 0 1px 0 rgba(240,247,255,.05)}}
.promotion-wallet-history{display:grid;gap:7px;padding-top:10px;border-top:1px solid var(--border)}
.promotion-wallet-history article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:9px 11px;border:1px solid var(--border);border-radius:11px;background:var(--panel)}
.promotion-wallet-history article>div{display:grid;gap:2px}.promotion-wallet-history small{color:var(--muted)}.promotion-wallet-history .debit{font-weight:800}.promotion-wallet-history .credit{font-weight:800;color:#2d9b66}.promotion-wallet-history .neutral{color:var(--muted)}
@media(max-width:620px){.promotion-wallet-history article{grid-template-columns:1fr auto}.promotion-wallet-history article>small{grid-column:1/-1}}
.promotion-low-credit{margin-top:5px;font-style:normal;font-size:11px;font-weight:750;color:color-mix(in srgb,#d28a35 78%,var(--text))}
.promotion-admin-pending{display:grid;gap:7px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
.promotion-admin-pending article{display:grid;grid-template-columns:minmax(120px,1fr) auto auto auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}
.promotion-admin-pending code{font-family:inherit;font-weight:800}.promotion-admin-pending small{color:var(--muted)}
@media(max-width:760px){.promotion-admin-pending article{grid-template-columns:1fr auto}.promotion-admin-pending code,.promotion-admin-pending small{grid-column:1/-1}}

/* Administrator · ruční darování K-Line kreditu */
.promotion-admin-grant{display:grid;grid-template-columns:minmax(190px,1.2fr) minmax(170px,1fr) minmax(110px,.45fr) minmax(210px,1.1fr) auto;gap:9px;align-items:end;margin-top:13px;padding:13px;border:1px solid color-mix(in srgb,#43c995 28%,var(--border));border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--panel) 94%,#0c6a4b 6%),var(--panel));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.promotion-admin-grant>div{align-self:center;display:grid;gap:3px}.promotion-admin-grant>div strong{font-size:12px}.promotion-admin-grant>div small{color:var(--muted);font-size:8.5px;line-height:1.45}
.promotion-admin-grant label{display:grid;gap:5px}.promotion-admin-grant label>span{color:var(--muted);font-size:8px;font-weight:800;letter-spacing:.03em}.promotion-admin-grant select,.promotion-admin-grant input{width:100%;min-height:37px;box-sizing:border-box;border:1px solid var(--border);border-radius:9px;background:var(--panel-alt);color:var(--text);padding:0 10px;font:inherit;font-size:9.5px;outline:none}.promotion-admin-grant select:focus,.promotion-admin-grant input:focus{border-color:color-mix(in srgb,#46d69d 55%,var(--border));box-shadow:0 0 0 3px rgba(70,214,157,.09)}
.promotion-admin-grant .button{min-height:37px;white-space:nowrap}
@media(max-width:1120px){.promotion-admin-grant{grid-template-columns:1fr 1fr}.promotion-admin-grant>div,.promotion-admin-grant-note{grid-column:1/-1}.promotion-admin-grant .button{width:100%}}
@media(max-width:640px){.promotion-admin-grant{grid-template-columns:1fr}.promotion-admin-grant>div,.promotion-admin-grant-note{grid-column:auto}}

/* K-Line kredit · centrální informační tabule */
html.marketplace-credit-notice-open{overflow:hidden}
.marketplace-credit-notice-layer{position:fixed;z-index:9999;inset:0;display:grid;place-items:center;padding:22px;background:rgba(2,10,14,.48);backdrop-filter:blur(7px);animation:kline-credit-layer-in .24s ease both}
.marketplace-credit-notice-card{position:relative;isolation:isolate;display:grid;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:26px;width:min(720px,calc(100vw - 40px));min-height:238px;box-sizing:border-box;padding:30px 42px 30px 34px;border:1px solid rgba(132,255,211,.82);border-radius:27px;background:radial-gradient(circle at 16% 45%,rgba(8,118,92,.29),transparent 33%),linear-gradient(145deg,rgba(3,35,38,.985),rgba(4,50,48,.97) 56%,rgba(2,30,35,.985));color:#effff9;box-shadow:0 40px 105px rgba(0,0,0,.62),0 0 34px rgba(63,255,190,.32),0 0 82px rgba(0,208,160,.20),inset 0 1px 0 rgba(231,255,248,.18),inset 0 0 42px rgba(0,255,184,.055);animation:kline-credit-card-in .34s cubic-bezier(.2,.8,.2,1) both}
.marketplace-credit-notice-card::before{content:"";position:absolute;z-index:-2;inset:-4px;padding:4px;border-radius:31px;background:conic-gradient(from 0deg,transparent 0 12%,#55ffc5 17%,#d7fff1 21%,#29e6b0 27%,transparent 35% 58%,#49f8c0 65%,#e4fff5 70%,#22d9a6 75%,transparent 83% 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:kline-credit-border-run 4.8s linear infinite;filter:drop-shadow(0 0 8px rgba(56,255,192,.74));pointer-events:none}
.marketplace-credit-notice-card::after{content:"";position:absolute;z-index:-3;inset:-16px;border:2px solid rgba(84,255,201,.20);border-radius:39px;box-shadow:0 0 24px rgba(42,255,188,.46),0 0 58px rgba(0,219,167,.24);animation:kline-credit-glow-pulse 2.1s ease-in-out infinite;pointer-events:none}
.marketplace-credit-notice-close{position:absolute;z-index:5;right:17px;top:14px;width:34px;height:34px;border:0;border-radius:10px;background:transparent;color:rgba(236,255,249,.88);font-size:25px;line-height:1;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}.marketplace-credit-notice-close:hover{background:rgba(112,255,210,.10);color:#fff;transform:scale(1.06)}
.marketplace-credit-notice-emblem{position:relative;display:grid;place-items:center;width:126px;height:126px}.marketplace-credit-notice-emblem::before,.marketplace-credit-notice-emblem::after{content:"";position:absolute;border-radius:50%;pointer-events:none}.marketplace-credit-notice-emblem::before{inset:-8px;background:conic-gradient(from 10deg,transparent 0 8%,#45ffc2 12%,transparent 16% 25%,#c9ff75 29%,transparent 34% 47%,#22dba5 52%,transparent 57% 72%,#f0ff9e 77%,transparent 82% 100%);filter:blur(.2px) drop-shadow(0 0 8px rgba(36,255,187,.58));animation:kline-credit-orbit 8s linear infinite}.marketplace-credit-notice-emblem::after{inset:8px;background:radial-gradient(circle,rgba(73,255,200,.20),rgba(16,151,117,.06) 53%,transparent 70%);box-shadow:0 0 34px rgba(34,255,187,.25);animation:kline-credit-emblem-pulse 2.4s ease-in-out infinite}
.marketplace-credit-notice-emblem>div{position:relative;z-index:2;display:grid;place-items:center;width:86px;height:86px;clip-path:polygon(25% 6%,75% 6%,100% 50%,75% 94%,25% 94%,0 50%);background:linear-gradient(145deg,#29f5b5,#0aa97e 52%,#063f43);box-shadow:0 0 0 6px rgba(76,255,202,.11),0 0 28px rgba(31,255,184,.48)}
.marketplace-credit-notice-emblem>div::before{content:"";position:absolute;inset:7px;clip-path:inherit;background:linear-gradient(145deg,#073b42,#0d5e56);box-shadow:inset 0 0 18px rgba(87,255,210,.16)}
.marketplace-credit-notice-emblem span{position:relative;z-index:2;color:#37efc2;font-size:48px;font-weight:1000;font-style:italic;letter-spacing:-.12em;text-shadow:0 0 12px rgba(55,255,205,.78),0 0 26px rgba(35,235,187,.42);transform:translateX(-2px)}
.marketplace-credit-notice-copy{position:relative;z-index:2;min-width:0}.marketplace-credit-notice-copy .eyebrow{margin:0 0 3px;color:#7bffd1;font-size:9px;font-weight:950;letter-spacing:.17em}.marketplace-credit-notice-copy h2{margin:0;color:#f5fffb;font-size:25px;line-height:1.1}.marketplace-credit-notice-copy>strong{display:block;margin:5px 0 7px;color:#42f2b7;font-size:48px;line-height:1;font-weight:950;letter-spacing:-.035em;text-shadow:0 0 17px rgba(54,255,190,.48),0 0 34px rgba(24,216,161,.20)}
.marketplace-credit-notice-source{margin:0;color:#ecfff8;font-size:13px;font-weight:780;line-height:1.4}.marketplace-credit-notice-note{margin:10px 0 0;color:#a9cfc4;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.marketplace-credit-notice-note span{color:#e5fff6;font-weight:800}.marketplace-credit-notice-glowbar{position:absolute;left:50%;bottom:7px;width:150px;height:5px;border-radius:999px;background:rgba(60,255,192,.12);overflow:hidden;transform:translateX(-50%);box-shadow:0 0 12px rgba(65,255,197,.22)}.marketplace-credit-notice-glowbar i{display:block;width:44%;height:100%;border-radius:inherit;background:linear-gradient(90deg,transparent,#4cffc5,#c4ff74,#4cffc5,transparent);box-shadow:0 0 12px rgba(64,255,197,.80);animation:kline-credit-bar 2.8s ease-in-out infinite}
.marketplace-credit-notice-sparks{position:absolute;z-index:1;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none}.marketplace-credit-notice-sparks i{position:absolute;width:4px;height:14px;border-radius:999px;background:#62ffc7;box-shadow:0 0 9px currentColor;opacity:.75;animation:kline-credit-spark 3.8s ease-in-out infinite}.marketplace-credit-notice-sparks i:nth-child(1){left:8%;top:18%;transform:rotate(-28deg)}.marketplace-credit-notice-sparks i:nth-child(2){left:17%;top:10%;height:7px;color:#d8ff78;animation-delay:.5s}.marketplace-credit-notice-sparks i:nth-child(3){left:25%;top:25%;height:6px;animation-delay:1.2s}.marketplace-credit-notice-sparks i:nth-child(4){right:13%;top:16%;height:7px;color:#d8ff78;animation-delay:.8s}.marketplace-credit-notice-sparks i:nth-child(5){right:7%;top:44%;height:5px;animation-delay:1.4s}.marketplace-credit-notice-sparks i:nth-child(6){left:11%;bottom:16%;height:6px;color:#d8ff78;animation-delay:2s}.marketplace-credit-notice-sparks i:nth-child(7){right:24%;bottom:12%;height:8px;animation-delay:2.3s}.marketplace-credit-notice-sparks i:nth-child(8){right:38%;top:8%;height:5px;color:#d8ff78;animation-delay:1.7s}
@keyframes kline-credit-layer-in{from{opacity:0}to{opacity:1}}@keyframes kline-credit-card-in{from{opacity:0;transform:translateY(18px) scale(.965)}to{opacity:1;transform:none}}@keyframes kline-credit-border-run{to{transform:rotate(360deg)}}@keyframes kline-credit-glow-pulse{0%,100%{opacity:.55;transform:scale(.995)}50%{opacity:1;transform:scale(1.01)}}@keyframes kline-credit-orbit{to{transform:rotate(360deg)}}@keyframes kline-credit-emblem-pulse{0%,100%{opacity:.65;transform:scale(.96)}50%{opacity:1;transform:scale(1.06)}}@keyframes kline-credit-bar{0%,100%{transform:translateX(-20%);opacity:.45}50%{transform:translateX(150%);opacity:1}}@keyframes kline-credit-spark{0%,100%{opacity:.25;filter:brightness(.9)}50%{opacity:1;filter:brightness(1.4)}}
@media(max-width:680px){.marketplace-credit-notice-layer{padding:14px}.marketplace-credit-notice-card{grid-template-columns:1fr;justify-items:center;gap:8px;width:min(520px,calc(100vw - 28px));min-height:0;padding:28px 22px 31px;text-align:center}.marketplace-credit-notice-emblem{width:94px;height:94px}.marketplace-credit-notice-emblem>div{width:66px;height:66px}.marketplace-credit-notice-emblem span{font-size:38px}.marketplace-credit-notice-copy>strong{font-size:39px}.marketplace-credit-notice-copy h2{font-size:22px}.marketplace-credit-notice-source{font-size:11px}.marketplace-credit-notice-note{font-size:10px}}
@media(prefers-reduced-motion:reduce){.marketplace-credit-notice-card,.marketplace-credit-notice-card::before,.marketplace-credit-notice-card::after,.marketplace-credit-notice-emblem::before,.marketplace-credit-notice-emblem::after,.marketplace-credit-notice-glowbar i,.marketplace-credit-notice-sparks i{animation:none!important}.offer-card.marketplace-highlighted::before,.vehicle-card.marketplace-highlighted::before{animation:none!important}}

/* Komunikace · rychlé ovládání upozornění */
.conversation-list-head {
  min-height: 48px;
  padding: 8px 9px;
  border-bottom: 1px solid var(--border);
  background: linear-gradient(180deg, color-mix(in srgb,var(--panel-solid) 96%,white 4%), color-mix(in srgb,var(--panel) 98%,black 2%));
}
.conversation-list-head .conversation-new-button {
  flex: 0 0 auto;
  min-height: 28px;
  padding: 5px 7px;
  font-size: 8px;
}
.communication-quick-controls {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  flex: 1 1 auto;
}
.communication-quick-button {
  position: relative;
  isolation: isolate;
  display: grid;
  place-items: center;
  flex: 0 0 25px;
  width: 25px;
  height: 25px;
  padding: 0;
  overflow: hidden;
  border: 1px solid color-mix(in srgb,var(--border-strong) 76%,transparent);
  border-radius: 8px;
  background: linear-gradient(180deg,color-mix(in srgb,var(--panel-alt) 96%,white 4%),color-mix(in srgb,var(--panel-alt) 94%,black 6%));
  color: color-mix(in srgb,#d7b65b 78%,var(--text));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055), 0 4px 11px rgba(0,0,0,.09);
  cursor: pointer;
  transition: transform 160ms ease, color 170ms ease, border-color 170ms ease, box-shadow 190ms ease, background 180ms ease, opacity 160ms ease;
}
.communication-quick-button::before {
  content: "";
  position: absolute;
  inset: 1px 1px auto;
  height: 43%;
  border-radius: 7px 7px 5px 5px;
  background: linear-gradient(180deg,rgba(255,255,255,.075),transparent);
  pointer-events: none;
}
.communication-quick-button::after {
  content: "";
  position: absolute;
  z-index: 3;
  left: 4px;
  top: 11px;
  width: 17px;
  height: 1.5px;
  border-radius: 99px;
  background: color-mix(in srgb,#b7bec8 86%,var(--muted));
  box-shadow: 0 0 5px rgba(0,0,0,.22);
  opacity: 0;
  transform: rotate(-43deg) scaleX(.72);
  transition: opacity 160ms ease, transform 180ms ease, background 160ms ease;
  pointer-events: none;
}
.communication-quick-button:hover:not(:disabled) {
  transform: translateY(-1px);
  color: #efd477;
  border-color: color-mix(in srgb,#d8b658 55%,var(--border-strong));
  background: linear-gradient(180deg,color-mix(in srgb,#d8b658 11%,var(--panel-alt)),color-mix(in srgb,#d8b658 4%,var(--panel-alt)));
  box-shadow: 0 7px 16px rgba(0,0,0,.13), 0 0 15px rgba(221,184,83,.20), inset 0 1px 0 rgba(255,255,255,.07);
}
.communication-quick-button.active {
  color: #d9b858;
  border-color: color-mix(in srgb,#d6b456 38%,var(--border));
  text-shadow: 0 0 9px rgba(218,184,88,.22);
}
.communication-quick-button.off {
  color: color-mix(in srgb,var(--muted) 82%,#9da4ae);
  border-color: color-mix(in srgb,var(--border) 88%,transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 3px 8px rgba(0,0,0,.07);
}
.communication-quick-button.off::after {
  opacity: .9;
  transform: rotate(-43deg) scaleX(1);
}
.communication-quick-button.off:hover:not(:disabled)::after {
  background: #e0bf64;
}
.communication-quick-button.unavailable {
  opacity: .34;
  cursor: default;
  filter: saturate(.35);
}
.communication-quick-svg {
  position: relative;
  z-index: 2;
  width: 15px;
  height: 15px;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,.22));
}
.communication-quick-button.active:hover .communication-quick-svg {
  filter: drop-shadow(0 0 5px rgba(239,212,119,.42));
}
.communication-volume-control {
  position: relative;
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 1 1 62px;
  min-width: 46px;
  max-width: 92px;
  height: 25px;
  padding: 0 3px 0 5px;
  border: 1px solid color-mix(in srgb,var(--border) 82%,transparent);
  border-radius: 9px;
  background: color-mix(in srgb,var(--panel-alt) 92%,transparent);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}
.communication-volume-control input[type="range"] {
  --communication-volume: 72%;
  width: 100%;
  min-width: 0;
  height: 16px;
  margin: 0;
  padding: 0;
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  outline: 0;
  background: transparent;
  cursor: pointer;
}
.communication-volume-control input[type="range"]::-webkit-slider-runnable-track {
  height: 4px;
  border-radius: 99px;
  background: linear-gradient(90deg, color-mix(in srgb,#d5b55b 76%,var(--accent)) 0 var(--communication-volume), color-mix(in srgb,var(--border-strong) 72%,transparent) var(--communication-volume) 100%);
  box-shadow: inset 0 1px 2px rgba(0,0,0,.22);
}
.communication-volume-control input[type="range"]::-webkit-slider-thumb {
  width: 12px;
  height: 12px;
  margin-top: -4px;
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid color-mix(in srgb,#e5c866 72%,#7d6a32);
  border-radius: 50%;
  background: linear-gradient(145deg,#f2d878,#b89438);
  box-shadow: 0 2px 5px rgba(0,0,0,.25), 0 0 8px rgba(218,184,88,.18);
  transition: transform 150ms ease, box-shadow 170ms ease;
}
.communication-volume-control input[type="range"]:hover::-webkit-slider-thumb,
.communication-volume-control input[type="range"]:focus-visible::-webkit-slider-thumb {
  transform: scale(1.12);
  box-shadow: 0 2px 6px rgba(0,0,0,.28), 0 0 12px rgba(230,198,99,.34);
}
.communication-volume-control input[type="range"]::-moz-range-track {
  height: 4px;
  border: 0;
  border-radius: 99px;
  background: color-mix(in srgb,var(--border-strong) 72%,transparent);
}
.communication-volume-control input[type="range"]::-moz-range-progress {
  height: 4px;
  border-radius: 99px;
  background: color-mix(in srgb,#d5b55b 76%,var(--accent));
}
.communication-volume-control input[type="range"]::-moz-range-thumb {
  width: 11px;
  height: 11px;
  border: 1px solid color-mix(in srgb,#e5c866 72%,#7d6a32);
  border-radius: 50%;
  background: #d7b653;
  box-shadow: 0 2px 5px rgba(0,0,0,.25), 0 0 8px rgba(218,184,88,.18);
}
.communication-volume-control output {
  flex: 0 0 18px;
  color: color-mix(in srgb,#d5b55b 72%,var(--muted));
  font-size: 6.5px;
  font-weight: 850;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
@media (max-width: 1280px) {
  .communication-volume-control { max-width: 68px; }
  .communication-volume-control output { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .communication-quick-button,
  .communication-quick-button::after,
  .communication-volume-control input[type="range"]::-webkit-slider-thumb { transition: none; }
  .communication-quick-button:hover:not(:disabled) { transform: none; }
}

/* Kira · rychlá kontextová nápověda po stisku kolečka myši */
.kira-context-help-target {
  position: relative;
  outline: 1px solid color-mix(in srgb, #d8b95e 68%, var(--accent));
  outline-offset: 3px;
  border-radius: inherit;
  animation: kira-context-help-flash .82s ease-out both;
}
@keyframes kira-context-help-flash {
  0% { box-shadow: 0 0 0 rgba(216,185,94,0); filter: brightness(1); }
  34% { box-shadow: 0 0 0 4px rgba(216,185,94,.10), 0 0 18px rgba(216,185,94,.18); filter: brightness(1.035); }
  100% { box-shadow: 0 0 0 rgba(216,185,94,0); filter: brightness(1); }
}
@media (prefers-reduced-motion: reduce) {
  .kira-context-help-target { animation: none; }
}

@media (max-width:1050px){.topbar-credit{font-size:9.5px;padding-inline:3px}.topbar-credit-label{font-size:9.5px}.topbar-credit-balance{font-size:8.5px;max-width:66px}}
@media (max-width:720px){.topbar-credit{display:none}}

/* Komunikace · rychlé tlačítko Kiry pouze pro Gold+ */
.communication-kira-button {
  position: relative;
  isolation: isolate;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: 48px;
  height: 28px;
  padding: 0 8px;
  flex: 0 0 auto;
  border: 1px solid rgba(78, 169, 255, .68);
  border-radius: 9px;
  background: linear-gradient(180deg, rgba(36,132,255,.29), rgba(17,72,185,.18));
  color: #dff2ff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 0 12px rgba(43,145,255,.24), 0 5px 13px rgba(8,53,128,.18);
  text-shadow: 0 0 8px rgba(109,196,255,.72);
  cursor: pointer;
  transition: transform 160ms ease, border-color 180ms ease, box-shadow 190ms ease, background 180ms ease, opacity 160ms ease;
}
.communication-kira-button::before {
  content: "";
  position: absolute;
  inset: 1px 1px auto;
  height: 44%;
  border-radius: 8px 8px 5px 5px;
  background: linear-gradient(180deg, rgba(255,255,255,.16), transparent);
  pointer-events: none;
}
.communication-kira-button > span,
.communication-kira-button > b { position: relative; z-index: 1; }
.communication-kira-button > span { font-size: 12px; color: #8dd5ff; filter: drop-shadow(0 0 5px rgba(65,170,255,.88)); }
.communication-kira-button > b { font-size: 8px; letter-spacing: .08em; font-weight: 950; }
.communication-kira-button.active:hover {
  transform: translateY(-1px);
  border-color: rgba(117,205,255,.95);
  background: linear-gradient(180deg, rgba(46,154,255,.40), rgba(24,91,219,.25));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.20), 0 0 22px rgba(45,161,255,.50), 0 8px 18px rgba(7,58,148,.24);
}
.communication-kira-button.off {
  opacity: .56;
  filter: saturate(.18);
  border-color: rgba(121,139,157,.42);
  background: linear-gradient(180deg, rgba(91,108,126,.13), rgba(44,57,72,.10));
  color: rgba(194,207,219,.72);
  text-shadow: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 3px 9px rgba(0,0,0,.10);
}
.communication-kira-button.off > span { color: rgba(172,190,205,.72); filter: none; }
.communication-kira-button.off::after {
  content: "";
  position: absolute;
  z-index: 3;
  width: 58%;
  height: 1.5px;
  border-radius: 999px;
  background: rgba(218,229,238,.88);
  box-shadow: 0 0 4px rgba(210,226,238,.25);
  transform: rotate(-42deg);
  pointer-events: none;
}
.communication-kira-button.off:hover { opacity: .72; }
@media (max-width: 760px) {
  .communication-kira-button { min-width: 34px; width: 34px; padding: 0; }
  .communication-kira-button > b { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .communication-kira-button { transition: none; }
  .communication-kira-button.active:hover { transform: none; }
}

/* Komunikace – běžné konverzace mají stejně čistou hlavičku jako Kira.
   Vnější rám celé karty zůstává; horní klikací část už nevytváří druhý rámeček kolem jména. */
.conversation-record:not(.ai-support-conversation-record) > .conversation,
.conversation-record:not(.ai-support-conversation-record) > .conversation:hover,
.conversation-record:not(.ai-support-conversation-record) > .conversation:focus,
.conversation-record:not(.ai-support-conversation-record) > .conversation:focus-visible,
.conversation-record:not(.ai-support-conversation-record).active > .conversation {
  -webkit-appearance: none !important;
  appearance: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.conversation-record:not(.ai-support-conversation-record) > .conversation::before,
.conversation-record:not(.ai-support-conversation-record) > .conversation::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
  animation: none !important;
}

/* K-Line kreditní dary — samostatná administrátorská sekce, mimo účetnictví. */
.promotion-admin-grant{grid-template-columns:minmax(0,1fr) auto;align-items:center}
.promotion-admin-grant>.button{justify-self:end}
.marketplace-credit-notice-conversion{margin:7px 0 0;color:#80bfae;font-size:9.5px;line-height:1.45}
.promotion-wallet-conversion-note{display:block;margin-top:2px;color:var(--muted);font-size:8.5px;line-height:1.45;text-transform:none;letter-spacing:0}
.credit-gift-policy{position:relative;isolation:isolate;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:14px;padding:15px 17px;overflow:hidden;border:1px solid color-mix(in srgb,#55e2ad 34%,var(--border));border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--panel) 93%,#0d7458 7%),color-mix(in srgb,var(--panel-alt) 97%,#0b493b 3%));box-shadow:0 15px 38px rgba(0,0,0,.14),0 0 24px rgba(68,213,162,.08),inset 0 1px 0 rgba(255,255,255,.05)}
.credit-gift-policy::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 0 50%,rgba(80,236,184,.10),transparent 26%),linear-gradient(115deg,rgba(255,255,255,.035),transparent 36%);pointer-events:none}
.credit-gift-policy-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(83,229,174,.32);border-radius:14px;background:linear-gradient(145deg,rgba(73,222,168,.18),rgba(40,162,127,.05));color:#62e9ba;font-size:21px;text-shadow:0 0 15px rgba(83,235,181,.48);box-shadow:0 0 20px rgba(58,207,155,.10),inset 0 1px 0 rgba(255,255,255,.08)}
.credit-gift-policy>div{display:grid;gap:4px;min-width:0}.credit-gift-policy>div strong{font-size:13px}.credit-gift-policy>div p{margin:0;color:var(--text-2);font-size:9.5px;line-height:1.55}.credit-gift-policy>div p b{color:color-mix(in srgb,#7af0c5 70%,var(--text))}
.credit-gift-policy-flags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.credit-gift-policy-flags em{padding:5px 7px;border:1px solid rgba(90,220,170,.22);border-radius:999px;background:rgba(67,195,147,.07);color:#7de7bd;font-size:7px;font-style:normal;font-weight:900;letter-spacing:.055em;white-space:nowrap}
.credit-gift-layout{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(420px,1.18fr);gap:14px;align-items:start}
.credit-gift-layout>.panel{min-width:0}
.credit-gift-directory .panel-head>span,.credit-gift-history .panel-head>span{color:var(--muted);font-size:8px}
.credit-gift-search{display:flex;align-items:center;gap:8px;height:42px;margin-bottom:10px;padding:0 11px;border:1px solid var(--border);border-radius:11px;background:var(--input);color:var(--muted);transition:border-color .16s ease,box-shadow .16s ease}
.credit-gift-search:focus-within{border-color:color-mix(in srgb,var(--accent) 54%,var(--border));box-shadow:0 0 0 3px var(--accent-soft),0 0 18px color-mix(in srgb,var(--accent-glow) 28%,transparent)}
.credit-gift-search svg{width:15px;height:15px;flex:0 0 auto}.credit-gift-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:10px}.credit-gift-search input::placeholder{color:var(--muted)}
.credit-gift-results{display:grid;gap:7px;max-height:560px;overflow:auto;padding-right:3px}
.credit-gift-account-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:62px;padding:9px 10px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--panel-alt) 94%,transparent);color:var(--text);text-align:left;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.025);transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .16s ease}
.credit-gift-account-row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:color-mix(in srgb,var(--panel-alt) 92%,var(--accent) 8%);box-shadow:0 9px 22px rgba(0,0,0,.12),0 0 16px color-mix(in srgb,var(--accent-glow) 25%,transparent)}
.credit-gift-account-row.selected{border-color:color-mix(in srgb,#58dfb1 52%,var(--accent));background:linear-gradient(135deg,color-mix(in srgb,var(--panel-alt) 88%,#0e8061 12%),color-mix(in srgb,var(--panel) 95%,var(--accent) 5%));box-shadow:0 0 0 1px rgba(83,225,176,.10),0 0 20px rgba(71,214,164,.11),inset 3px 0 0 #55dbaa}
.credit-gift-account-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--accent-soft);font-size:17px}
.credit-gift-account-copy{display:grid;gap:3px;min-width:0}.credit-gift-account-copy strong{display:flex;align-items:center;gap:5px;min-width:0;overflow:hidden;color:var(--text);font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.credit-gift-account-copy small{overflow:hidden;color:var(--muted);font-size:7.8px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.credit-gift-badge{display:inline-flex;align-items:center;padding:2px 5px;border:1px solid rgba(85,220,173,.24);border-radius:999px;background:rgba(74,202,156,.08);color:#72e4bd;font-size:6.5px;font-style:normal;font-weight:900;letter-spacing:.04em}.credit-gift-badge.demo{border-color:rgba(88,167,255,.25);background:rgba(68,136,238,.09);color:#91c2ff}
.credit-gift-account-balance{display:grid;justify-items:end;gap:2px;white-space:nowrap}.credit-gift-account-balance small{color:var(--muted);font-size:7px}.credit-gift-account-balance b{font-size:10px;color:var(--accent-2)}
.credit-gift-empty{display:grid;justify-items:center;gap:5px;padding:32px 15px;border:1px dashed var(--border);border-radius:12px;color:var(--muted);text-align:center}.credit-gift-empty>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--accent-soft);color:var(--accent-2)}.credit-gift-empty strong{color:var(--text-2);font-size:10px}.credit-gift-empty small{max-width:330px;font-size:8px;line-height:1.5}
.credit-gift-role-chip{padding:5px 8px;border:1px solid var(--border);border-radius:999px;background:var(--panel-alt);color:var(--text-2);font-size:7.5px;font-weight:850}
.credit-gift-selected-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:12px}.credit-gift-selected-meta>span{display:grid;gap:3px;min-width:0;padding:9px;border:1px solid var(--border);border-radius:10px;background:var(--panel-alt)}.credit-gift-selected-meta small{color:var(--muted);font-size:7px}.credit-gift-selected-meta strong{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.credit-gift-selected-meta>em{grid-column:1/-1;padding:6px 8px;border:1px solid rgba(80,167,255,.22);border-radius:8px;background:rgba(67,139,242,.07);color:#89bbff;font-size:7.5px;font-style:normal;font-weight:850;text-align:center}
.credit-gift-form{display:grid;gap:11px}.credit-gift-form>label{display:grid;gap:5px}.credit-gift-form>label>span{color:var(--text-2);font-size:8.5px;font-weight:800}.credit-gift-form>label>span small{margin-left:5px;color:var(--muted);font-size:7px;font-weight:650}.credit-gift-form input,.credit-gift-form textarea{width:100%;border:1px solid var(--border);border-radius:10px;outline:0;background:var(--input);color:var(--text);font:inherit;font-size:10px;transition:border-color .16s ease,box-shadow .16s ease}.credit-gift-form input{min-height:42px;padding:0 11px}.credit-gift-form textarea{min-height:78px;padding:10px 11px;resize:vertical}.credit-gift-form input:focus,.credit-gift-form textarea:focus{border-color:color-mix(in srgb,#57dcae 45%,var(--accent));box-shadow:0 0 0 3px rgba(75,217,166,.08),0 0 18px rgba(50,178,134,.06)}.credit-gift-form>label>small{justify-self:end;color:var(--muted);font-size:7px}
.credit-gift-amount{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid var(--border);border-radius:10px;background:var(--input);overflow:hidden}.credit-gift-amount:focus-within{border-color:color-mix(in srgb,#57dcae 45%,var(--accent));box-shadow:0 0 0 3px rgba(75,217,166,.08)}.credit-gift-amount input{border:0!important;border-radius:0;box-shadow:none!important}.credit-gift-amount b{padding:0 12px;border-left:1px solid var(--border);color:#71e5bd;font-size:10px}
.credit-gift-preview{display:grid;gap:4px;padding:13px 14px;border:1px solid color-mix(in srgb,#55dfaf 30%,var(--border));border-radius:13px;background:linear-gradient(135deg,color-mix(in srgb,var(--panel-alt) 90%,#0d795b 10%),var(--panel-alt));box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 0 18px rgba(68,206,155,.06)}.credit-gift-preview>span{color:var(--muted);font-size:7.5px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.credit-gift-preview>strong{color:#65e5b9;font-size:25px;line-height:1.05;text-shadow:0 0 14px rgba(81,224,175,.14)}.credit-gift-preview>small{color:var(--text-2);font-size:8px;line-height:1.5}.credit-gift-preview.muted{border-color:var(--border);background:var(--panel-alt)}.credit-gift-preview.muted>strong{color:var(--text-2);font-size:11px;text-shadow:none}.credit-gift-preview.warning{border-color:color-mix(in srgb,var(--warning) 38%,var(--border));background:color-mix(in srgb,var(--panel-alt) 93%,var(--warning) 7%)}.credit-gift-preview.warning>strong{color:var(--warning);font-size:18px}
.credit-gift-submit{min-height:44px;box-shadow:0 10px 26px color-mix(in srgb,#43cf9a 16%,var(--accent-glow)),inset 0 1px 0 rgba(255,255,255,.14)}.credit-gift-submit-note{margin:0;color:var(--muted);font-size:7.5px;line-height:1.5;text-align:center}
.credit-gift-no-selection{display:grid;justify-items:center;gap:6px;padding:68px 20px;color:var(--muted);text-align:center}.credit-gift-no-selection>span{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--border);border-radius:14px;background:var(--panel-alt);color:var(--accent-2);font-size:24px;box-shadow:0 0 18px var(--accent-soft)}.credit-gift-no-selection strong{color:var(--text-2);font-size:11px}.credit-gift-no-selection small{max-width:330px;font-size:8px;line-height:1.5}
.credit-gift-history{margin-top:14px}.credit-gift-history-list{display:grid;gap:7px}.credit-gift-history-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--border);border-radius:11px;background:var(--panel-alt)}.credit-gift-history-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:rgba(68,205,155,.08);color:#6be1b8;font-size:15px}.credit-gift-history-list article>div{display:grid;gap:2px;min-width:0}.credit-gift-history-list strong{overflow:hidden;font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.credit-gift-history-list small{color:var(--muted);font-size:7px}.credit-gift-history-list p{margin:2px 0 0;color:var(--text-2);font-size:8px;line-height:1.4}.credit-gift-history-list article>b{color:#65e2b6;font-size:10px;white-space:nowrap}.credit-gift-history-empty{padding:20px;border:1px dashed var(--border);border-radius:11px;color:var(--muted);font-size:8.5px;text-align:center}
html[data-theme="ultra"] .credit-gift-policy{border-color:rgba(87,240,211,.34);background:linear-gradient(135deg,rgba(7,55,57,.72),rgba(6,28,47,.94));box-shadow:0 18px 42px rgba(0,0,0,.2),0 0 28px rgba(87,240,211,.10),inset 0 1px 0 rgba(255,255,255,.05)}
html[data-theme="ultra"] .credit-gift-account-row,html[data-theme="ultra"] .credit-gift-selected-meta>span,html[data-theme="ultra"] .credit-gift-history-list article,html[data-theme="ultra"] .credit-gift-preview,html[data-theme="ultra"] .credit-gift-search,html[data-theme="ultra"] .credit-gift-amount{background:linear-gradient(180deg,rgba(11,31,54,.92),rgba(6,21,39,.96));border-color:rgba(104,164,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 10px 24px rgba(1,10,20,.10)}
html[data-theme="ultra"] .credit-gift-account-row.selected{border-color:rgba(87,240,211,.42);background:linear-gradient(135deg,rgba(10,67,72,.62),rgba(8,28,51,.96));box-shadow:0 0 0 1px rgba(87,240,211,.08),0 0 23px rgba(87,240,211,.10),inset 3px 0 0 #57f0d3}
html[data-theme="ultra"] .credit-gift-preview>strong,html[data-theme="ultra"] .credit-gift-account-balance b,html[data-theme="ultra"] .credit-gift-history-list article>b{color:#57f0d3}
@media(max-width:1120px){.credit-gift-layout{grid-template-columns:1fr}.credit-gift-results{max-height:390px}.credit-gift-policy{grid-template-columns:auto 1fr}.credit-gift-policy-flags{grid-column:1/-1;justify-content:flex-start}.promotion-admin-grant{grid-template-columns:1fr auto}.promotion-admin-grant>div{grid-column:auto}}
@media(max-width:720px){.credit-gift-policy{grid-template-columns:1fr;justify-items:start}.credit-gift-policy-flags{grid-column:auto}.credit-gift-selected-meta{grid-template-columns:1fr 1fr}.credit-gift-layout{grid-template-columns:minmax(0,1fr)}.credit-gift-account-row{grid-template-columns:auto minmax(0,1fr)}.credit-gift-account-balance{grid-column:2;justify-items:start}.promotion-admin-grant{grid-template-columns:1fr}.promotion-admin-grant>.button{justify-self:stretch}.marketplace-credit-notice-conversion{font-size:9px}}

/* Statistiky účtu · finanční přehled akceptovaných přeprav */
.analytics-finance-section { margin-top: 16px; display: grid; gap: 14px; }
.analytics-finance-title { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px 20px; border: 1px solid var(--border); border-radius: var(--radius-md); background: linear-gradient(145deg, color-mix(in srgb, var(--panel) 96%, transparent), color-mix(in srgb, var(--accent-soft) 24%, var(--panel))); box-shadow: var(--shadow); }
.analytics-finance-title h3 { margin: 3px 0 5px; font-size: 16px; }
.analytics-finance-title p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.analytics-finance-title p strong { color: var(--text); }
.analytics-finance-currency { flex: 0 0 auto; min-width: 62px; padding: 10px 13px; border: 1px solid color-mix(in srgb, var(--accent) 45%, var(--border)); border-radius: 13px; background: var(--accent-soft); color: var(--accent-2); box-shadow: 0 0 24px color-mix(in srgb, var(--accent-glow) 48%, transparent); text-align: center; font-size: 12px; font-weight: 900; letter-spacing: .08em; }
.analytics-finance-period-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.analytics-finance-period { position: relative; overflow: hidden; min-width: 0; padding: 15px; border: 1px solid var(--border); border-radius: var(--radius-md); background: linear-gradient(155deg, color-mix(in srgb, var(--panel-solid) 96%, transparent), color-mix(in srgb, var(--panel-alt) 92%, transparent)); box-shadow: var(--shadow); }
.analytics-finance-period::before { content: ""; position: absolute; inset: 0 0 auto; height: 2px; background: linear-gradient(90deg, transparent, var(--accent), var(--accent-2), transparent); opacity: .72; }
.analytics-finance-period header { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 9px; }
.analytics-finance-period header small { color: var(--muted); font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.analytics-finance-period header span { padding: 4px 7px; border: 1px solid var(--border); border-radius: 999px; color: var(--text-2); background: color-mix(in srgb, var(--panel-alt) 82%, transparent); font-size: 8px; white-space: nowrap; }
.analytics-finance-period > strong { display: block; overflow: hidden; color: var(--text); font-size: clamp(18px, 1.7vw, 25px); line-height: 1.1; text-overflow: ellipsis; white-space: nowrap; }
.analytics-finance-period > p { min-height: 28px; margin: 5px 0 11px; color: var(--muted); font-size: 9px; line-height: 1.45; }
.analytics-finance-period footer { display: flex; align-items: end; justify-content: space-between; gap: 8px; padding-top: 10px; border-top: 1px solid var(--border); }
.analytics-finance-period footer span { min-width: 0; display: grid; gap: 3px; }
.analytics-finance-period footer small { color: var(--muted); font-size: 7.5px; }
.analytics-finance-period footer b { overflow: hidden; color: var(--success); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.analytics-finance-period footer em { color: var(--muted); font-size: 7.5px; font-style: normal; white-space: nowrap; }
.analytics-subscription-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.analytics-subscription-grid article { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 11px; align-items: center; padding: 14px 15px; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--panel); box-shadow: var(--shadow); }
.analytics-subscription-grid article > span { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid color-mix(in srgb, var(--accent) 35%, var(--border)); border-radius: 12px; background: var(--accent-soft); color: var(--accent-2); }
.analytics-subscription-grid article > span svg { width: 18px; height: 18px; }
.analytics-subscription-grid small { display: block; color: var(--muted); font-size: 8.5px; font-weight: 800; }
.analytics-subscription-grid strong { display: block; margin: 2px 0; overflow: hidden; color: var(--text); font-size: 18px; text-overflow: ellipsis; white-space: nowrap; }
.analytics-subscription-grid p { margin: 0; color: var(--muted); font-size: 8px; line-height: 1.4; }
.analytics-finance-chart-card { overflow: hidden; padding: 18px; border: 1px solid var(--border); border-radius: var(--radius-md); background: linear-gradient(155deg, color-mix(in srgb, var(--panel) 97%, transparent), color-mix(in srgb, var(--accent-soft) 14%, var(--panel))); box-shadow: var(--shadow); }
.analytics-finance-chart-head { display: flex; align-items: start; justify-content: space-between; gap: 14px; margin-bottom: 10px; }
.analytics-finance-chart-head h3 { margin: 3px 0 4px; font-size: 14px; }
.analytics-finance-chart-head p { margin: 0; color: var(--muted); font-size: 9px; line-height: 1.45; }
.analytics-finance-chart-head > span { padding: 6px 9px; border: 1px solid var(--border); border-radius: 9px; color: var(--accent-2); background: var(--accent-soft); font-size: 9px; font-weight: 900; }
.analytics-finance-chart-stage { position: relative; height: 220px; margin-top: 4px; border-bottom: 1px solid var(--border); background-image: linear-gradient(to top, var(--border) 1px, transparent 1px); background-size: 100% 44px; }
.analytics-finance-bars { position: absolute; inset: 16px 22px 27px; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: clamp(3px, .65vw, 9px); align-items: end; }
.analytics-finance-bar-slot { position: relative; height: 100%; display: flex; align-items: end; justify-content: center; }
.analytics-finance-bar-slot > i { position: relative; width: min(74%, 36px); height: var(--finance-bar); min-height: 2px; border-radius: 7px 7px 2px 2px; background: linear-gradient(to top, var(--accent-strong), var(--accent-2)); box-shadow: 0 0 18px color-mix(in srgb, var(--accent-glow) 58%, transparent); opacity: .82; transition: opacity .18s ease, filter .18s ease; }
.analytics-finance-bar-slot > i:hover { opacity: 1; filter: brightness(1.08); }
.analytics-finance-bar-slot > i b { position: absolute; left: 50%; bottom: calc(100% + 7px); z-index: 4; display: none; width: max-content; max-width: 145px; padding: 5px 7px; border: 1px solid var(--border-strong); border-radius: 8px; background: var(--panel-solid); color: var(--text); box-shadow: var(--shadow); font-size: 8px; font-style: normal; transform: translateX(-50%); }
.analytics-finance-bar-slot > i:hover b { display: block; }
.analytics-finance-bar-slot > small { position: absolute; left: 50%; bottom: -22px; color: var(--muted); font-size: 7.5px; transform: translateX(-50%); white-space: nowrap; }
.analytics-finance-line { position: absolute; inset: 0; width: 100%; height: calc(100% - 12px); overflow: visible; pointer-events: none; }
.analytics-finance-line polyline { fill: none; stroke: var(--success); stroke-width: 3; vector-effect: non-scaling-stroke; filter: drop-shadow(0 0 5px color-mix(in srgb, var(--success) 55%, transparent)); }
.analytics-finance-line circle { fill: var(--panel-solid); stroke: var(--success); stroke-width: 2.2; vector-effect: non-scaling-stroke; }
.analytics-finance-legend { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 13px; color: var(--muted); font-size: 8.5px; }
.analytics-finance-legend span { display: inline-flex; align-items: center; gap: 6px; }
.analytics-finance-legend i { width: 18px; height: 3px; border-radius: 99px; background: linear-gradient(90deg, var(--accent-strong), var(--accent-2)); }
.analytics-finance-legend .benefit i { background: var(--success); box-shadow: 0 0 7px color-mix(in srgb, var(--success) 45%, transparent); }
.analytics-finance-chart-empty { min-height: 190px; display: grid; place-items: center; align-content: center; gap: 6px; color: var(--muted); text-align: center; }
.analytics-finance-chart-empty > span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; background: var(--accent-soft); color: var(--accent-2); }
.analytics-finance-chart-empty > span svg { width: 20px; height: 20px; }
.analytics-finance-chart-empty strong { color: var(--text-2); font-size: 11px; }
.analytics-finance-chart-empty small { font-size: 8.5px; }
.analytics-finance-method { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 10px; align-items: start; padding: 13px 15px; border: 1px solid color-mix(in srgb, var(--success) 28%, var(--border)); border-radius: var(--radius-md); background: color-mix(in srgb, var(--success) 5%, var(--panel)); }
.analytics-finance-method > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; background: color-mix(in srgb, var(--success) 12%, var(--panel-alt)); color: var(--success); }
.analytics-finance-method > span svg { width: 16px; height: 16px; }
.analytics-finance-method p { margin: 0; color: var(--muted); font-size: 9px; line-height: 1.58; }
.analytics-finance-method strong { color: var(--text-2); }

@media (max-width: 1120px) {
  .analytics-finance-period-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .analytics-finance-title, .analytics-finance-chart-head { align-items: flex-start; flex-direction: column; }
  .analytics-finance-period-grid, .analytics-subscription-grid { grid-template-columns: 1fr; }
  .analytics-finance-chart-stage { height: 200px; overflow-x: auto; overflow-y: hidden; }
  .analytics-finance-bars { min-width: 650px; }
  .analytics-finance-line { min-width: 650px; }
}

/* Administrátor · TEST/DEMO log přihlášení. Izolované styly pouze pro tuto funkci. */
.approval-card-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  min-width: 0;
}
.approval-card-actions .button { white-space: nowrap; }
.approval-login-log-button { min-width: 54px; }

.test-login-log-dialog { width: min(1120px, calc(100vw - 28px)); }
.test-login-log-dialog > form { max-height: min(90vh, 920px); }
.test-login-log-content { display: grid; gap: 12px; }
.test-login-log-stats { margin-bottom: 0; }
.test-login-log-note {
  display: grid;
  gap: 4px;
  padding: 11px 13px;
  border: 1px solid color-mix(in srgb, var(--accent) 26%, var(--border));
  border-radius: 12px;
  background: color-mix(in srgb, var(--accent-soft) 45%, var(--panel));
}
.test-login-log-note strong { font-size: 10px; color: var(--text); }
.test-login-log-note span { color: var(--muted); font-size: 9px; line-height: 1.55; }
.test-login-log-list { display: grid; gap: 8px; }
.test-login-log-row {
  display: grid;
  grid-template-columns: minmax(190px, 1.25fr) minmax(210px, 1.5fr) minmax(170px, 1.2fr) minmax(130px, .8fr);
  gap: 12px;
  align-items: center;
  padding: 12px 13px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel-alt);
}
.test-login-log-row.active {
  border-color: color-mix(in srgb, var(--success) 36%, var(--border));
  box-shadow: inset 3px 0 0 color-mix(in srgb, var(--success) 72%, transparent);
}
.test-login-log-row > div { display: grid; gap: 3px; min-width: 0; }
.test-login-log-row > div > small { color: var(--muted); font-size: 8px; }
.test-login-log-row > div > strong { overflow: hidden; color: var(--text); font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
.test-login-log-row > div > span:not(.status-pill) { overflow: hidden; color: var(--text-2); font-size: 8.5px; text-overflow: ellipsis; white-space: nowrap; }
.test-login-log-primary .status-pill { width: max-content; margin-bottom: 2px; }
.test-login-log-row details { grid-column: 1 / -1; border-top: 1px solid var(--border); padding-top: 6px; }
.test-login-log-row details summary { color: var(--muted); font-size: 8px; cursor: pointer; }
.test-login-log-row details code { display: block; overflow-wrap: anywhere; margin-top: 6px; color: var(--text-2); font-size: 8px; line-height: 1.45; }
.test-login-log-empty,
.test-login-log-loading { padding: 22px; border: 1px dashed var(--border-strong); border-radius: 12px; color: var(--muted); text-align: center; font-size: 10px; }

@media (max-width: 1040px) {
  .approval-summary > .approval-card-actions { grid-column: 2 / -1; justify-self: end; }
  .test-login-log-row { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
  .approval-summary > .approval-card-actions { grid-column: 2 / -1; justify-self: end; }
}
@media (max-width: 600px) {
  .test-login-log-row { grid-template-columns: 1fr; }
  .test-login-log-row details { grid-column: auto; }
}
@media (max-width: 500px) {
  .approval-summary > .approval-card-actions { grid-column: 2; justify-self: start; flex-wrap: wrap; }
}

@media (max-width: 1180px) {
  .language-switch-enhanced { min-width: 162px; }
  .language-switch-menu { width: min(250px, calc(100vw - 24px)); }
}

/* K-Line platební QR · CZK + EUR/SEPA */
.subscription-payment-card-wide{min-width:0;position:static}
.subscription-payment-method-list{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px}
.subscription-payment-method{padding:14px;border:1px solid var(--border);border-radius:15px;background:color-mix(in srgb,var(--panel-alt) 72%,transparent)}
.subscription-payment-method-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}
.subscription-payment-method-head>div{min-width:0}
.subscription-payment-method h4{margin:3px 0 0;font-size:13px}
.subscription-payment-currency{display:inline-flex;padding:3px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:8px;font-weight:900;letter-spacing:.05em}
.subscription-payment-method .payment-qr{width:min(190px,100%);height:auto;aspect-ratio:1/1;margin:12px auto;padding:9px;border:1px solid rgba(0,0,0,.08);box-shadow:0 10px 24px rgba(0,0,0,.10)}
.subscription-payment-method .bank-details{margin:8px 0 0}
.subscription-payment-method .bank-details div{grid-template-columns:105px minmax(0,1fr)}
.subscription-payment-method .bank-details dd{overflow-wrap:anywhere}
.subscription-payment-rate-note{display:block;margin-top:10px;color:var(--muted);font-size:8px;line-height:1.5}
.subscription-qr-unavailable{display:grid;gap:5px;margin:12px 0;padding:12px;border:1px dashed var(--border);border-radius:13px;background:var(--panel)}
.subscription-qr-unavailable strong{font-size:9px}.subscription-qr-unavailable span{color:var(--muted);font-size:8px;line-height:1.45}
@media(min-width:1480px){.subscription-user-layout{grid-template-columns:minmax(0,1.3fr) minmax(560px,.9fr)}.subscription-payment-method-list{grid-template-columns:1fr 1fr}.subscription-payment-card-wide{width:100%}}
@media(max-width:760px){.subscription-payment-method-head{align-items:flex-start;flex-direction:column}.subscription-payment-method-head .mini-button{width:100%}.subscription-payment-method .bank-details div{grid-template-columns:92px minmax(0,1fr)}}


/* K-Line kredit: hlavní obrazovka zůstává čistá, detail je pouze v dialogu Kredit. */
.subscription-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.subscription-credit-button{min-width:92px;font-weight:850}

/* Fakturační preference u QR plateb. */
.subscription-currency-notice{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:10px 0 13px;padding:12px 13px;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 9%,var(--panel-alt)),var(--panel-alt));box-shadow:0 8px 22px rgba(0,0,0,.06)}
.subscription-currency-notice>div{display:grid;grid-template-columns:auto 1fr;gap:3px 9px;align-items:baseline;min-width:0}
.subscription-currency-notice small{grid-column:1/-1;color:var(--accent);font-size:8px;font-weight:900;letter-spacing:.06em}
.subscription-currency-notice strong{font-size:17px;line-height:1}
.subscription-currency-notice span{color:var(--text-2);font-size:8.5px;line-height:1.5}
.subscription-currency-notice span b{color:var(--text);font-weight:900}
.subscription-currency-notice.warning{border-color:color-mix(in srgb,var(--warning) 55%,var(--border));background:color-mix(in srgb,var(--warning) 8%,var(--panel-alt))}
.subscription-currency-notice.warning small{color:var(--warning)}
.preferred-currency-setting small{display:block;margin-top:6px;color:var(--muted);font-size:8px;line-height:1.45}
.field.settings-target-highlight{border-radius:12px;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 32%,transparent);background:color-mix(in srgb,var(--accent) 7%,transparent);transition:box-shadow 180ms ease,background 180ms ease}
@media(max-width:760px){.subscription-currency-notice{grid-template-columns:1fr}.subscription-currency-notice .button{width:100%}.subscription-currency-notice>div{grid-template-columns:1fr}.subscription-heading-actions{justify-content:flex-start}}
.subscription-payment-prepared-note{display:grid;gap:4px;margin:10px 0 13px;padding:11px 12px;border:1px dashed var(--border);border-radius:13px;background:var(--panel-alt)}
.subscription-payment-prepared-note strong{font-size:9px}.subscription-payment-prepared-note span{color:var(--muted);font-size:8.5px;line-height:1.5}

/* K-Line předplatné: ověřování plateb, měna fakturace a archiv dokladů */
.subscription-payment-method.primary{border-color:color-mix(in srgb,var(--accent) 62%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 11%,transparent),0 14px 34px rgba(0,0,0,.08)}
.subscription-payment-method.primary .subscription-payment-currency{font-weight:900;color:var(--accent-2)}
.subscription-payment-proof-banner,.subscription-proof-upload-help,.subscription-export-explainer{display:grid;gap:4px;margin:10px 0;padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--panel-alt);font-size:9px;line-height:1.5}
.subscription-payment-proof-banner.pending,.subscription-proof-upload-help{border-color:color-mix(in srgb,var(--warning) 36%,var(--border));background:color-mix(in srgb,var(--warning) 7%,var(--panel-alt))}
.subscription-payment-proof-banner.rejected{border-color:color-mix(in srgb,var(--danger) 38%,var(--border));background:color-mix(in srgb,var(--danger) 7%,var(--panel-alt))}
.subscription-proof-status{display:inline-flex;width:max-content;align-items:center;margin-top:4px;padding:3px 7px;border:1px solid var(--border);border-radius:999px;font-size:7.8px;font-weight:850;letter-spacing:.02em}
.subscription-proof-status.pending{border-color:color-mix(in srgb,var(--warning) 42%,var(--border));background:color-mix(in srgb,var(--warning) 10%,var(--panel));color:color-mix(in srgb,var(--warning) 72%,var(--text))}
.subscription-proof-status.verified{border-color:color-mix(in srgb,var(--success) 42%,var(--border));background:color-mix(in srgb,var(--success) 9%,var(--panel));color:color-mix(in srgb,var(--success) 72%,var(--text))}
.subscription-proof-status.rejected{border-color:color-mix(in srgb,var(--danger) 42%,var(--border));background:color-mix(in srgb,var(--danger) 9%,var(--panel));color:color-mix(in srgb,var(--danger) 72%,var(--text))}
.subscription-document-review-note{display:block;margin-top:3px;color:var(--muted);font-size:8px}
.subscription-proof-review-list{display:grid;gap:9px}.subscription-proof-review-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px;border:1px solid color-mix(in srgb,var(--warning) 30%,var(--border));border-radius:13px;background:color-mix(in srgb,var(--warning) 5%,var(--panel-alt))}.subscription-proof-review-card>div:first-child{display:grid;gap:4px}.subscription-proof-review-card>div:first-child strong{font-size:11px}.subscription-proof-review-card>div:first-child small{color:var(--muted);font-size:8.5px}.subscription-proof-review-card>div:first-child b{font-size:13px}.subscription-proof-review-actions{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:7px}.subscription-proof-review-actions .button{min-height:36px;justify-content:center}.subscription-proof-review-actions .danger{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));color:var(--danger)}
.subscription-export-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:8px 0 12px}.subscription-export-filters label{display:grid;gap:5px}.subscription-export-filters label>span{font-size:8.5px;font-weight:800}.subscription-export-filters input,.subscription-export-filters select{width:100%;min-height:37px;padding:8px 10px;border:1px solid var(--border);border-radius:9px;background:var(--panel-alt);color:var(--text)}
.subscription-billing-currency-setting{margin-top:10px;padding:12px;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--accent) 5%,var(--panel-alt))}.subscription-billing-currency-setting small{line-height:1.5}
@media(max-width:900px){.subscription-proof-review-card{grid-template-columns:1fr}.subscription-proof-review-actions{grid-template-columns:1fr 1fr}.subscription-export-filters{grid-template-columns:1fr}}
@media(max-width:600px){.subscription-proof-review-actions{grid-template-columns:1fr}}

/* ================================================================
   K-Line · oprava vrstev hlavního hledání a jednorázových tipů
   ================================================================ */

/* Hlavní vyhledávání musí být nad obsahem stránky a kartami. */
.topbar {
  z-index: 900 !important;
  overflow: visible !important;
}
.topbar-center {
  position: relative;
  z-index: 940;
  overflow: visible;
}
.global-search-results {
  z-index: 960 !important;
}

/* ===== Jednorázový tip po prvním přihlášení: klávesnice + rychlá nápověda Kira ===== */
html.kline-control-tips-open { overflow: hidden; }
.kline-control-tips-layer {
  position: fixed;
  z-index: 12100;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  background:
    radial-gradient(circle at 50% 35%, color-mix(in srgb,var(--accent) 16%,transparent), transparent 34rem),
    rgba(2, 7, 15, .78);
  backdrop-filter: blur(11px) saturate(1.08);
  -webkit-backdrop-filter: blur(11px) saturate(1.08);
  animation: kline-control-tips-in .28s ease both;
  overflow: auto;
}
.kline-control-tips-layer.is-leaving { animation: kline-control-tips-out .24s ease both; pointer-events: none; }
.kline-control-tips-card {
  position: relative;
  width: min(880px, calc(100vw - 38px));
  overflow: hidden;
  border: 1px solid color-mix(in srgb,var(--accent) 38%,var(--border-strong));
  border-radius: 28px;
  background:
    linear-gradient(145deg, color-mix(in srgb,var(--panel-solid) 94%,var(--accent) 6%), color-mix(in srgb,var(--panel-solid) 98%,#000 2%));
  box-shadow:
    0 34px 90px rgba(0,0,0,.48),
    0 0 0 1px rgba(255,255,255,.035) inset,
    0 0 48px color-mix(in srgb,var(--accent-glow) 72%,transparent);
  padding: 28px;
  isolation: isolate;
  animation: kline-control-tips-card-in .42s cubic-bezier(.2,.9,.25,1.08) both;
}
.kline-control-tips-card::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    linear-gradient(110deg, transparent 18%, rgba(255,255,255,.055) 42%, transparent 59%),
    radial-gradient(circle at 9% 0%, color-mix(in srgb,var(--accent) 18%,transparent), transparent 23rem);
  pointer-events: none;
}
.kline-control-tips-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: inset 0 1px rgba(255,255,255,.09), inset 0 -1px rgba(0,0,0,.28);
}
.kline-control-tips-orbit { position: absolute; z-index: -1; border: 1px solid color-mix(in srgb,var(--accent) 22%,transparent); border-radius: 50%; pointer-events: none; }
.kline-control-tips-orbit.orbit-a { width: 260px; height: 260px; right: -132px; top: -138px; box-shadow: 0 0 44px color-mix(in srgb,var(--accent-glow) 45%,transparent); }
.kline-control-tips-orbit.orbit-b { width: 120px; height: 120px; left: -66px; bottom: -66px; opacity: .62; }
.kline-control-tips-head { display: grid; grid-template-columns: 54px minmax(0,1fr) auto; gap: 15px; align-items: start; }
.kline-control-tips-brand {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border: 1px solid color-mix(in srgb,var(--accent) 64%,white 10%);
  border-radius: 18px;
  background: linear-gradient(145deg,var(--accent),color-mix(in srgb,var(--accent-strong) 74%,#061326));
  color: #fff;
  font-size: 27px;
  font-weight: 950;
  font-style: italic;
  box-shadow: 0 12px 28px rgba(0,0,0,.25),0 0 28px var(--accent-glow),inset 0 1px rgba(255,255,255,.28);
}
.kline-control-tips-heading { min-width: 0; }
.kline-control-tips-heading .eyebrow { margin: 1px 0 4px; color: var(--accent-2); font-size: 10px; font-weight: 850; letter-spacing: .14em; }
.kline-control-tips-heading h2 { margin: 0; color: var(--text); font-size: clamp(21px,2.5vw,30px); line-height: 1.14; letter-spacing: -.025em; }
.kline-control-tips-heading > p:last-child { max-width: 650px; margin: 8px 0 0; color: var(--text-2); font-size: 13px; line-height: 1.58; }
.kline-control-tips-once {
  align-self: start;
  padding: 7px 10px;
  border: 1px solid color-mix(in srgb,var(--accent) 26%,var(--border));
  border-radius: 999px;
  background: color-mix(in srgb,var(--accent-soft) 58%,var(--panel-solid));
  color: var(--text-2);
  font-size: 8.5px;
  font-weight: 850;
  letter-spacing: .09em;
  white-space: nowrap;
}
.kline-control-tips-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-top: 22px; }
.kline-control-tip-card {
  position: relative;
  overflow: hidden;
  min-height: 315px;
  border: 1px solid color-mix(in srgb,var(--border-strong) 82%,var(--accent) 18%);
  border-radius: 22px;
  background: linear-gradient(160deg,color-mix(in srgb,var(--panel-alt) 82%,var(--accent) 8%),color-mix(in srgb,var(--panel-solid) 96%,#000 4%));
  box-shadow: 0 16px 38px rgba(0,0,0,.18), inset 0 1px rgba(255,255,255,.04);
}
.kline-control-tip-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(115deg,transparent 25%,rgba(255,255,255,.045) 46%,transparent 64%);
  transform: translateX(-105%);
  animation: kline-control-tip-sweep 6.5s ease-in-out infinite;
}
.kline-control-tip-visual { position: relative; display: grid; place-items: center; height: 164px; border-bottom: 1px solid var(--border); background: radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 68%); }
.kline-control-tip-copy { padding: 17px 18px 19px; }
.kline-control-tip-label { display: flex; align-items: center; gap: 8px; margin-bottom: 7px; }
.kline-control-tip-label span { display: grid; place-items: center; width: 27px; height: 21px; border-radius: 8px; background: color-mix(in srgb,var(--accent) 16%,var(--panel-solid)); color: var(--accent-2); font-size: 9px; font-weight: 900; }
.kline-control-tip-label b { color: var(--muted); font-size: 8.5px; letter-spacing: .1em; }
.kline-control-tip-copy h3 { margin: 0; color: var(--text); font-size: 17px; line-height: 1.2; }
.kline-control-tip-copy p { margin: 8px 0 0; color: var(--text-2); font-size: 11.7px; line-height: 1.58; }
.kline-control-tip-copy p strong { color: var(--text); }
.keyboard-visual { grid-template-columns: auto 34px auto; align-content: center; }
.keyboard-key {
  position: relative;
  display: grid;
  place-items: center;
  width: 94px;
  height: 86px;
  border: 1px solid color-mix(in srgb,var(--accent) 45%,var(--border-strong));
  border-bottom-width: 5px;
  border-radius: 17px;
  background: linear-gradient(155deg,color-mix(in srgb,var(--panel-solid) 74%,white 6%),color-mix(in srgb,var(--panel-alt) 92%,#000 8%));
  color: var(--text);
  box-shadow: 0 14px 24px rgba(0,0,0,.27),0 0 22px color-mix(in srgb,var(--accent-glow) 28%,transparent),inset 0 1px rgba(255,255,255,.08);
  transform: perspective(260px) rotateX(8deg);
}
.keyboard-key i { font-style: normal; font-size: 30px; font-weight: 900; line-height: 1; text-shadow: 0 0 14px var(--accent-glow); }
.keyboard-key small { margin-top: 6px; color: var(--muted); font-size: 8.5px; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
.keyboard-key-enter { width: 110px; }
.keyboard-flow { color: var(--accent-2); font-size: 22px; font-weight: 900; text-shadow: 0 0 13px var(--accent-glow); animation: kline-control-tip-arrow 1.7s ease-in-out infinite; }
.keyboard-shine { position: absolute; left: 16%; right: 16%; bottom: 20px; height: 1px; background: linear-gradient(90deg,transparent,var(--accent),transparent); box-shadow: 0 0 13px var(--accent); opacity: .5; }
.mouse-visual { color: var(--accent-2); }
.mouse-visual svg { width: 154px; height: 132px; overflow: visible; }
.mouse-outline,.mouse-split { fill: none; stroke: currentColor; stroke-width: 2.2; opacity: .84; }
.mouse-wheel { fill: var(--accent-2); stroke: rgba(255,255,255,.8); stroke-width: 1.2; transform-origin: 90px 45px; animation: kline-control-tip-wheel 1.65s ease-in-out infinite; }
.mouse-wheel-mark { fill: none; stroke: #fff; stroke-width: 1.8; stroke-linecap: round; }
.mouse-click-ring { fill: none; stroke: currentColor; stroke-width: 1.4; transform-origin: 90px 45px; opacity: 0; animation: kline-control-tip-ring 1.65s ease-out infinite; }
.mouse-click-ring.ring-two { animation-delay: .2s; }
.mouse-middle-label { position: absolute; bottom: 12px; display: inline-flex; align-items: center; gap: 7px; padding: 6px 9px; border: 1px solid color-mix(in srgb,var(--accent) 28%,var(--border)); border-radius: 999px; background: color-mix(in srgb,var(--panel-solid) 86%,transparent); color: var(--text-2); font-size: 8.5px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; box-shadow: 0 7px 16px rgba(0,0,0,.18); }
.mouse-middle-label i { width: 7px; height: 11px; border-radius: 5px; background: var(--accent-2); box-shadow: 0 0 10px var(--accent); }
.mouse-tip.tone-locked .kline-control-tip-label b { color: var(--warning); }
.mouse-tip.tone-available .kline-control-tip-label b { color: var(--accent-2); }
.mouse-tip.tone-ready .kline-control-tip-label b { color: var(--success); }
.kline-control-tips-footer { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 18px; padding-top: 17px; border-top: 1px solid var(--border); }
.kline-control-tips-note { display: flex; align-items: center; gap: 10px; min-width: 0; color: var(--text-2); }
.kline-control-tips-note > span { display: grid; place-items: center; flex: 0 0 auto; width: 30px; height: 30px; border-radius: 10px; background: color-mix(in srgb,var(--success) 14%,var(--panel-solid)); color: var(--success); font-size: 14px; font-weight: 900; box-shadow: 0 0 16px color-mix(in srgb,var(--success) 18%,transparent); }
.kline-control-tips-note p { display: grid; gap: 2px; margin: 0; }
.kline-control-tips-note strong { color: var(--text); font-size: 10.5px; }
.kline-control-tips-note small { color: var(--muted); font-size: 9px; line-height: 1.4; }
.kline-control-tips-ok { min-width: 150px; min-height: 42px; border-radius: 13px; box-shadow: 0 10px 24px var(--accent-glow), inset 0 1px rgba(255,255,255,.18); }
.kline-control-tips-ok:focus-visible { outline: 2px solid var(--accent-2); outline-offset: 3px; }
@keyframes kline-control-tips-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes kline-control-tips-out { to { opacity: 0; } }
@keyframes kline-control-tips-card-in { from { opacity: 0; transform: translateY(18px) scale(.975); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes kline-control-tip-sweep { 0%,58% { transform: translateX(-110%); opacity: 0; } 65% { opacity: 1; } 79%,100% { transform: translateX(110%); opacity: 0; } }
@keyframes kline-control-tip-arrow { 0%,100% { transform: translateX(-3px); opacity: .58; } 50% { transform: translateX(3px); opacity: 1; } }
@keyframes kline-control-tip-wheel { 0%,100% { transform: translateY(0) scale(1); } 42% { transform: translateY(2px) scale(.88); } 62% { transform: translateY(0) scale(1.06); } }
@keyframes kline-control-tip-ring { 0%,30% { opacity: 0; transform: scale(.6); } 46% { opacity: .68; } 100% { opacity: 0; transform: scale(1.35); } }
@media (max-width: 760px) {
  .kline-control-tips-layer { padding: 14px; align-items: center; }
  .kline-control-tips-card { width: min(620px,calc(100vw - 20px)); max-height: calc(100vh - 24px); overflow-y: auto; padding: 20px; border-radius: 23px; }
  .kline-control-tips-head { grid-template-columns: 46px 1fr; gap: 12px; }
  .kline-control-tips-brand { width: 46px; height: 46px; border-radius: 15px; font-size: 23px; }
  .kline-control-tips-once { grid-column: 2; justify-self: start; margin-top: 3px; }
  .kline-control-tips-grid { grid-template-columns: 1fr; }
  .kline-control-tip-card { min-height: 0; }
  .kline-control-tip-visual { height: 145px; }
  .kline-control-tips-footer { align-items: stretch; flex-direction: column; }
  .kline-control-tips-ok { width: 100%; }
}
@media (max-width: 430px) {
  .kline-control-tips-layer { padding: 8px; }
  .kline-control-tips-card { width: calc(100vw - 12px); max-height: calc(100vh - 12px); padding: 16px; border-radius: 20px; }
  .kline-control-tips-heading h2 { font-size: 20px; }
  .kline-control-tips-heading > p:last-child { font-size: 11.5px; }
  .keyboard-key { width: 78px; height: 74px; }
  .keyboard-key-enter { width: 93px; }
  .keyboard-key i { font-size: 25px; }
  .kline-control-tip-copy { padding: 14px 15px 16px; }
}


/* ===== Návazná jednorázová novinka: Kira umí trasu už ze dvou měst ===== */
.kline-kira-route-card { width: min(780px,calc(100vw - 38px)); }
.kline-kira-route-brand {
  width: 58px;
  padding-top: 1px;
  font-size: 18px;
  letter-spacing: -.04em;
  background: linear-gradient(145deg,color-mix(in srgb,var(--accent) 82%,#56dfff),color-mix(in srgb,var(--accent-strong) 72%,#5b55ff));
}
.kline-kira-route-card.tone-ready .kline-control-tips-once { color: var(--success); border-color: color-mix(in srgb,var(--success) 38%,var(--border)); }
.kline-kira-route-card.tone-available .kline-control-tips-once { color: var(--accent-2); }
.kline-kira-route-card.tone-locked .kline-control-tips-once { color: var(--warning); border-color: color-mix(in srgb,var(--warning) 34%,var(--border)); }
.kline-kira-route-showcase {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0,.82fr) minmax(250px,1.18fr);
  grid-template-rows: auto auto;
  gap: 16px 22px;
  margin-top: 22px;
  padding: 22px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb,var(--accent) 32%,var(--border-strong));
  border-radius: 24px;
  background:
    radial-gradient(circle at 78% 15%,color-mix(in srgb,var(--accent) 17%,transparent),transparent 18rem),
    linear-gradient(150deg,color-mix(in srgb,var(--panel-alt) 86%,var(--accent) 5%),color-mix(in srgb,var(--panel-solid) 97%,#000 3%));
  box-shadow: 0 18px 42px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.045);
}
.kline-kira-route-showcase::after {
  content: "";
  position: absolute;
  top: -55%;
  bottom: -55%;
  left: -28%;
  width: 18%;
  pointer-events: none;
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.065),transparent);
  transform: skewX(-18deg);
  animation: kline-kira-route-sweep 6.8s ease-in-out infinite;
}
.kline-kira-route-input {
  position: relative;
  align-self: center;
  justify-self: stretch;
  display: grid;
  gap: 7px;
  padding: 15px 17px;
  border: 1px solid color-mix(in srgb,var(--accent) 34%,var(--border));
  border-radius: 18px 18px 6px 18px;
  background: linear-gradient(135deg,color-mix(in srgb,var(--accent) 76%,#3c9dff),var(--accent-strong));
  color: #fff;
  box-shadow: 0 12px 28px color-mix(in srgb,var(--accent-glow) 58%,transparent),inset 0 1px rgba(255,255,255,.2);
}
.kline-kira-route-input::after {
  content: "";
  position: absolute;
  right: -1px;
  bottom: -7px;
  width: 14px;
  height: 14px;
  background: var(--accent-strong);
  clip-path: polygon(0 0,100% 0,100% 100%);
}
.kline-kira-route-input span { font-size: 8px; font-weight: 900; letter-spacing: .13em; opacity: .72; }
.kline-kira-route-input strong { font-size: 21px; line-height: 1.1; letter-spacing: -.025em; }
.kline-kira-route-track {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(80px,1fr) auto;
  align-items: center;
  min-height: 82px;
  padding: 0 8px;
}
.kline-kira-route-city { display: grid; justify-items: center; gap: 7px; position: relative; z-index: 2; color: var(--text-2); }
.kline-kira-route-city i {
  display: block;
  width: 20px;
  height: 20px;
  border: 5px solid color-mix(in srgb,var(--panel-solid) 86%,transparent);
  border-radius: 50%;
  background: var(--accent-2);
  box-shadow: 0 0 0 1px color-mix(in srgb,var(--accent-2) 65%,white 12%),0 0 20px color-mix(in srgb,var(--accent) 68%,transparent);
}
.kline-kira-route-city.city-end i { background: var(--success); box-shadow: 0 0 0 1px color-mix(in srgb,var(--success) 65%,white 12%),0 0 20px color-mix(in srgb,var(--success) 54%,transparent); }
.kline-kira-route-city b { font-size: 11px; }
.kline-kira-route-road {
  position: relative;
  display: block;
  height: 3px;
  margin: 0 10px 22px;
  overflow: visible;
  border-radius: 999px;
  background: linear-gradient(90deg,var(--accent-2),var(--accent),var(--success));
  box-shadow: 0 0 14px color-mix(in srgb,var(--accent) 45%,transparent);
}
.kline-kira-route-road::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 12px var(--accent);
  animation: kline-kira-route-dot 2.4s ease-in-out infinite;
}
.kline-kira-route-road i { display: block; position: absolute; inset: -9px 0; border-top: 1px dashed color-mix(in srgb,var(--text-2) 30%,transparent); opacity: .45; }
.kline-kira-route-result {
  grid-column: 1 / -1;
  display: grid;
  gap: 14px;
  padding: 17px 18px;
  border: 1px solid color-mix(in srgb,var(--accent) 23%,var(--border));
  border-radius: 19px;
  background: color-mix(in srgb,var(--panel-solid) 90%,var(--accent) 5%);
  box-shadow: inset 0 1px rgba(255,255,255,.045),0 10px 26px rgba(0,0,0,.14);
}
.kline-kira-route-result-head { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 12px; }
.kline-kira-route-result-head > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: linear-gradient(145deg,var(--accent),color-mix(in srgb,var(--accent-strong) 74%,#675cff));
  color: #fff;
  font-size: 12px;
  font-weight: 950;
  box-shadow: 0 7px 20px var(--accent-glow),inset 0 1px rgba(255,255,255,.2);
}
.kline-kira-route-result-head div { display: grid; gap: 2px; min-width: 0; }
.kline-kira-route-result-head small { color: var(--accent-2); font-size: 7.7px; font-weight: 900; letter-spacing: .11em; }
.kline-kira-route-result-head strong { overflow: hidden; color: var(--text); font-size: 17px; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.kline-kira-route-result-head em { padding: 8px 10px; border: 1px solid color-mix(in srgb,var(--accent) 30%,var(--border)); border-radius: 11px; background: var(--accent-soft); color: var(--text); font-size: 12px; font-style: normal; font-weight: 900; white-space: nowrap; }
.kline-kira-route-result-actions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.kline-kira-route-result-actions span { display: flex; align-items: center; gap: 7px; min-width: 0; padding: 9px 10px; border: 1px solid var(--border); border-radius: 11px; background: color-mix(in srgb,var(--panel-alt) 72%,transparent); color: var(--text-2); font-size: 9px; font-weight: 700; }
.kline-kira-route-result-actions b { display: grid; place-items: center; flex: 0 0 auto; width: 21px; height: 21px; border-radius: 7px; background: color-mix(in srgb,var(--accent) 15%,var(--panel-solid)); color: var(--accent-2); font-size: 7.5px; }
.kline-kira-route-steps { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 10px; margin-top: 16px; }
.kline-kira-route-steps > div { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 11px 12px; border: 1px solid var(--border); border-radius: 14px; background: color-mix(in srgb,var(--panel-alt) 60%,transparent); }
.kline-kira-route-steps > div > span { display: grid; place-items: center; flex: 0 0 auto; width: 27px; height: 27px; border-radius: 9px; background: var(--accent-soft); color: var(--accent-2); font-size: 9px; font-weight: 950; box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent); }
.kline-kira-route-steps p { display: grid; gap: 2px; min-width: 0; margin: 0; }
.kline-kira-route-steps strong { overflow: hidden; color: var(--text); font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
.kline-kira-route-steps small { color: var(--muted); font-size: 7.8px; line-height: 1.35; }
.kline-kira-route-steps > i { color: var(--accent-2); font-size: 15px; font-style: normal; font-weight: 900; opacity: .72; }
.kline-kira-route-note > span { background: color-mix(in srgb,var(--accent) 16%,var(--panel-solid)); color: var(--accent-2); box-shadow: 0 0 16px color-mix(in srgb,var(--accent) 20%,transparent); }
@keyframes kline-kira-route-dot { 0%,8% { left:0; opacity:.35; transform:scale(.8); } 45%,55% { opacity:1; transform:scale(1); } 92%,100% { left:calc(100% - 10px); opacity:.4; transform:scale(.82); } }
@keyframes kline-kira-route-sweep { 0%,64% { left:-28%; opacity:0; } 70% { opacity:1; } 86%,100% { left:112%; opacity:0; } }
@media (max-width: 760px) {
  .kline-kira-route-card { width: min(620px,calc(100vw - 20px)); }
  .kline-kira-route-showcase { grid-template-columns: 1fr; gap: 12px; padding: 17px; }
  .kline-kira-route-input { width: min(310px,86%); justify-self: end; }
  .kline-kira-route-track { min-height: 70px; }
  .kline-kira-route-result { grid-column: auto; }
  .kline-kira-route-steps { grid-template-columns: 1fr; gap: 7px; }
  .kline-kira-route-steps > i { display: none; }
  .kline-kira-route-steps > div { padding: 9px 11px; }
}
@media (max-width: 430px) {
  .kline-kira-route-brand { width: 46px; font-size: 15px; }
  .kline-kira-route-showcase { margin-top: 16px; padding: 14px; border-radius: 19px; }
  .kline-kira-route-input { width: 88%; padding: 12px 14px; border-radius: 15px 15px 5px 15px; }
  .kline-kira-route-input strong { font-size: 18px; }
  .kline-kira-route-result { padding: 13px; }
  .kline-kira-route-result-head { grid-template-columns: 36px minmax(0,1fr) auto; gap: 8px; }
  .kline-kira-route-result-head > span { width: 36px; height: 36px; border-radius: 12px; font-size: 10px; }
  .kline-kira-route-result-head strong { font-size: 14px; }
  .kline-kira-route-result-head em { padding: 6px 7px; font-size: 10px; }
  .kline-kira-route-result-actions { grid-template-columns: 1fr; gap: 6px; }
  .kline-kira-route-result-actions span { padding: 7px 9px; }
}

/* Kira · hlídání trasy z chatu */
.kira-route-watch-offer { margin-top: 12px; padding: 12px; border: 1px solid color-mix(in srgb,var(--accent) 35%,var(--border)); border-radius: 16px; background: linear-gradient(145deg,color-mix(in srgb,var(--accent-soft) 70%,var(--panel-solid)),color-mix(in srgb,var(--panel-solid) 94%,transparent)); box-shadow: inset 0 1px 0 rgba(255,255,255,.05),0 10px 28px rgba(0,0,0,.16); }
.kira-route-watch-offer > div:first-child { display:flex; align-items:flex-start; gap:10px; }
.kira-route-watch-offer > div:first-child > span { display:grid; place-items:center; width:30px; height:30px; flex:0 0 30px; border-radius:50%; color:var(--accent-2); background:var(--accent-soft); box-shadow:0 0 16px var(--accent-glow); font-weight:900; }
.kira-route-watch-offer p { margin:0; display:grid; gap:4px; }
.kira-route-watch-offer p strong { font-size:13px; line-height:1.4; }
.kira-route-watch-offer p small { color:var(--text-2); line-height:1.45; }
.kira-route-watch-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.kira-route-watch-actions .button { min-height:34px; padding:7px 11px; font-size:12px; }
.kira-route-watch-offer.compact { display:flex; align-items:center; gap:6px; margin-top:8px; padding:7px 8px; border-radius:12px; }
.kira-route-watch-offer.compact small { flex:1; color:var(--text-2); font-size:10px; }
.kira-route-watch-offer.compact button { border:1px solid var(--border-strong); border-radius:9px; padding:5px 7px; background:var(--panel-alt); color:var(--text); font-size:10px; cursor:pointer; }
.kira-route-watch-offer.compact button:first-of-type { border-color:color-mix(in srgb,var(--accent) 55%,var(--border)); background:var(--accent-soft); color:var(--accent-2); }
.kira-watch-profile { margin-top:16px; padding:15px; border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border)); border-radius:18px; background:color-mix(in srgb,var(--panel-alt) 88%,var(--accent-soft)); box-shadow:0 12px 28px rgba(0,0,0,.12); }
.kira-watch-profile > small,.kira-watch-profile-head small { display:block; color:var(--accent-2); letter-spacing:.13em; font-size:10px; font-weight:800; }
.kira-watch-profile > strong { display:block; margin-top:4px; font-size:16px; }
.kira-watch-profile > p { margin:5px 0 0; color:var(--text-2); font-size:12px; line-height:1.5; }
.kira-watch-profile-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.kira-watch-profile-head strong { display:block; margin-top:3px; }
.kira-watch-profile-head > span { color:var(--muted); font-size:11px; }
.kira-watch-profile-list { display:grid; gap:8px; margin-top:12px; }
.kira-watch-profile-list article { display:grid; grid-template-columns:32px minmax(0,1fr) auto; align-items:center; gap:9px; padding:9px; border:1px solid var(--border); border-radius:13px; background:color-mix(in srgb,var(--panel-solid) 88%,transparent); }
.kira-watch-profile-list article > span { color:var(--accent-2); font-size:18px; text-align:center; }
.kira-watch-profile-list article div { display:grid; gap:2px; min-width:0; }
.kira-watch-profile-list article strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.kira-watch-profile-list article small { color:var(--muted); font-size:10px; }
.kira-watch-profile-list article button { border:1px solid var(--border-strong); border-radius:9px; padding:6px 8px; background:transparent; color:var(--text-2); font-size:10px; cursor:pointer; }
.kira-watch-profile-list article button:hover { color:#fff; border-color:var(--danger); background:color-mix(in srgb,var(--danger) 15%,transparent); }
@media (max-width: 640px) { .kira-route-watch-actions { display:grid; grid-template-columns:1fr 1fr; } .kira-route-watch-actions .button { width:100%; } .kira-watch-profile-head { align-items:flex-start; flex-direction:column; gap:4px; } }

/* ===== Třetí jednorázová novinka: Kira hlídá hledaný náklad ===== */
.kline-kira-route-watch-card { width: min(780px,calc(100vw - 38px)); }
.kline-kira-watch-brand {
  background: linear-gradient(145deg,color-mix(in srgb,var(--success) 70%,var(--accent)),color-mix(in srgb,var(--accent-strong) 82%,#5b55ff));
  box-shadow: 0 10px 28px color-mix(in srgb,var(--success) 22%,var(--accent-glow)),inset 0 1px rgba(255,255,255,.2);
}
.kline-kira-watch-showcase {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
  gap: 12px;
  margin-top: 22px;
  padding: 20px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb,var(--accent) 28%,var(--border-strong));
  border-radius: 24px;
  background:
    radial-gradient(circle at 84% 18%,color-mix(in srgb,var(--success) 12%,transparent),transparent 17rem),
    radial-gradient(circle at 12% 88%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 16rem),
    linear-gradient(150deg,color-mix(in srgb,var(--panel-alt) 88%,var(--accent) 4%),color-mix(in srgb,var(--panel-solid) 97%,#000 3%));
  box-shadow: 0 18px 42px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.045);
}
.kline-kira-watch-showcase::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(105deg,transparent 34%,rgba(255,255,255,.035) 49%,transparent 63%);
  transform: translateX(-100%);
  animation: kline-kira-watch-sweep 6.5s ease-in-out infinite;
}
.kline-kira-watch-query,
.kline-kira-watch-empty,
.kline-kira-watch-alert {
  position: relative;
  z-index: 1;
}
.kline-kira-watch-query {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid color-mix(in srgb,var(--accent) 35%,var(--border));
  border-radius: 16px;
  background: color-mix(in srgb,var(--panel-solid) 90%,var(--accent) 5%);
  box-shadow: inset 0 1px rgba(255,255,255,.045);
}
.kline-kira-watch-query small {
  color: var(--muted);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .12em;
}
.kline-kira-watch-query strong {
  overflow: hidden;
  color: var(--text);
  font-size: 17px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.kline-kira-watch-query > span {
  padding: 6px 9px;
  border: 1px solid color-mix(in srgb,var(--accent) 28%,var(--border));
  border-radius: 999px;
  background: var(--accent-soft);
  color: var(--accent-2);
  font-size: 9px;
  font-weight: 850;
}
.kline-kira-watch-empty,
.kline-kira-watch-alert {
  display: grid;
  grid-template-columns: 44px minmax(0,1fr) auto;
  align-items: center;
  gap: 11px;
  min-height: 96px;
  padding: 15px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: color-mix(in srgb,var(--panel-solid) 90%,transparent);
  box-shadow: inset 0 1px rgba(255,255,255,.04),0 10px 26px rgba(0,0,0,.13);
}
.kline-kira-watch-empty { grid-template-columns: 44px minmax(0,1fr); }
.kline-kira-watch-search-icon,
.kline-kira-watch-bell {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  font-size: 22px;
}
.kline-kira-watch-search-icon {
  border: 1px solid color-mix(in srgb,var(--muted) 30%,var(--border));
  background: color-mix(in srgb,var(--muted) 9%,var(--panel-alt));
  color: var(--text-2);
}
.kline-kira-watch-bell {
  border: 1px solid color-mix(in srgb,var(--success) 38%,var(--border));
  background: color-mix(in srgb,var(--success) 14%,var(--panel-alt));
  box-shadow: 0 0 24px color-mix(in srgb,var(--success) 22%,transparent);
  animation: kline-kira-watch-bell 2.2s ease-in-out infinite;
}
.kline-kira-watch-empty div,
.kline-kira-watch-alert div { display: grid; gap: 2px; min-width: 0; }
.kline-kira-watch-empty small,
.kline-kira-watch-alert small { color: var(--muted); font-size: 7.8px; font-weight: 900; letter-spacing: .12em; }
.kline-kira-watch-alert small { color: var(--success); }
.kline-kira-watch-empty strong,
.kline-kira-watch-alert strong { color: var(--text); font-size: 14px; line-height: 1.25; }
.kline-kira-watch-empty p,
.kline-kira-watch-alert p { margin: 2px 0 0; color: var(--text-2); font-size: 9.5px; line-height: 1.42; }
.kline-kira-watch-alert {
  border-color: color-mix(in srgb,var(--success) 40%,var(--border));
  background: linear-gradient(145deg,color-mix(in srgb,var(--success) 9%,var(--panel-solid)),color-mix(in srgb,var(--panel-solid) 94%,transparent));
}
.kline-kira-watch-alert > em {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 10px;
  background: color-mix(in srgb,var(--success) 16%,var(--panel-solid));
  color: var(--success);
  font-size: 14px;
  font-style: normal;
  font-weight: 950;
  box-shadow: 0 0 18px color-mix(in srgb,var(--success) 20%,transparent);
}
.kline-kira-watch-flow {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr auto auto auto 1fr;
  align-items: center;
  gap: 9px;
  min-height: 28px;
  color: var(--accent-2);
}
.kline-kira-watch-flow > span {
  height: 1px;
  background: linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 50%,var(--border)));
}
.kline-kira-watch-flow > span:last-child {
  background: linear-gradient(90deg,color-mix(in srgb,var(--success) 55%,var(--border)),transparent);
}
.kline-kira-watch-flow i {
  font-style: normal;
  font-weight: 900;
  opacity: .7;
}
.kline-kira-watch-flow b {
  padding: 5px 9px;
  border: 1px solid color-mix(in srgb,var(--accent) 32%,var(--border));
  border-radius: 999px;
  background: var(--accent-soft);
  color: var(--accent-2);
  font-size: 7.8px;
  letter-spacing: .12em;
}
.kline-kira-watch-note > span {
  background: color-mix(in srgb,var(--success) 14%,var(--panel-solid));
  color: var(--success);
  box-shadow: 0 0 18px color-mix(in srgb,var(--success) 20%,transparent);
}
@keyframes kline-kira-watch-bell {
  0%,72%,100% { transform: rotate(0deg) scale(1); }
  78% { transform: rotate(-9deg) scale(1.04); }
  84% { transform: rotate(9deg) scale(1.05); }
  90% { transform: rotate(-5deg) scale(1.02); }
  96% { transform: rotate(4deg) scale(1); }
}
@keyframes kline-kira-watch-sweep {
  0%,64% { transform: translateX(-100%); opacity: 0; }
  70% { opacity: 1; }
  88%,100% { transform: translateX(100%); opacity: 0; }
}
@media (max-width: 760px) {
  .kline-kira-route-watch-card { width: min(620px,calc(100vw - 20px)); }
  .kline-kira-watch-showcase { grid-template-columns: 1fr; padding: 17px; }
  .kline-kira-watch-query,
  .kline-kira-watch-flow { grid-column: auto; }
  .kline-kira-watch-flow { grid-template-columns: 1fr auto auto auto 1fr; }
}
@media (max-width: 430px) {
  .kline-kira-watch-showcase { margin-top: 16px; padding: 13px; border-radius: 19px; }
  .kline-kira-watch-query { grid-template-columns: 1fr auto; gap: 6px 9px; padding: 10px 11px; }
  .kline-kira-watch-query small { grid-column: 1 / -1; }
  .kline-kira-watch-query strong { font-size: 15px; }
  .kline-kira-watch-empty,
  .kline-kira-watch-alert { min-height: 84px; padding: 12px; }
  .kline-kira-watch-empty strong,
  .kline-kira-watch-alert strong { font-size: 13px; }
  .kline-kira-watch-empty p,
  .kline-kira-watch-alert p { font-size: 8.8px; }
  .kline-kira-watch-flow { gap: 5px; }
  .kline-kira-watch-flow b { padding: 4px 7px; font-size: 7px; }
}


/* ===== Návod: ruční znovuspuštění vstupních informačních tabulí ===== */
.kline-guide-head-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
}
.kline-guide-entry-info {
  position: relative;
  display: grid;
  grid-template-columns: 34px minmax(0,1fr);
  align-items: center;
  gap: 9px;
  min-width: 154px;
  padding: 8px 13px 8px 9px;
  border: 1px solid color-mix(in srgb, var(--success) 42%, var(--border-strong));
  border-radius: 15px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--success) 12%, var(--panel-alt)), color-mix(in srgb, var(--accent-2) 7%, var(--panel-solid)));
  color: var(--text);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.09), 0 9px 25px color-mix(in srgb, var(--success) 11%, transparent);
  cursor: pointer;
  text-align: left;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, filter .18s ease;
}
.kline-guide-entry-info:hover {
  transform: translateY(-1px);
  border-color: color-mix(in srgb, var(--success) 70%, var(--border-strong));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 12px 30px color-mix(in srgb, var(--success) 17%, transparent);
  filter: brightness(1.06);
}
.kline-guide-entry-info:focus-visible { outline: 2px solid color-mix(in srgb, var(--success) 72%, white 28%); outline-offset: 3px; }
.kline-guide-entry-info-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: color-mix(in srgb, var(--success) 72%, var(--panel-solid));
  color: #fff;
  font-size: 16px;
  font-weight: 950;
  font-style: italic;
  box-shadow: inset 0 1px rgba(255,255,255,.22), 0 0 18px color-mix(in srgb, var(--success) 24%, transparent);
}
.kline-guide-entry-info > span:last-child { display: grid; gap: 1px; min-width: 0; }
.kline-guide-entry-info small { color: color-mix(in srgb, var(--success) 70%, var(--text-2)); font-size: 7.2px; font-weight: 900; letter-spacing: .12em; line-height: 1.1; }
.kline-guide-entry-info strong { color: var(--text); font-size: 10.5px; line-height: 1.25; white-space: nowrap; }

.kline-entry-info-reset-layer {
  position: fixed;
  z-index: 12250;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 22px;
  overflow: auto;
  background: radial-gradient(circle at 50% 36%, color-mix(in srgb,var(--success) 12%,transparent), transparent 31rem), rgba(2,7,15,.82);
  backdrop-filter: blur(12px) saturate(1.08);
  -webkit-backdrop-filter: blur(12px) saturate(1.08);
  animation: kline-entry-info-layer-in .24s ease both;
}
.kline-entry-info-reset-layer.is-leaving { animation: kline-entry-info-layer-out .2s ease both; pointer-events: none; }
.kline-entry-info-reset-card {
  position: relative;
  isolation: isolate;
  width: min(820px, calc(100vw - 30px));
  overflow: hidden;
  padding: 26px;
  border: 1px solid color-mix(in srgb,var(--success) 42%,var(--border-strong));
  border-radius: 26px;
  background: linear-gradient(145deg, color-mix(in srgb,var(--panel-solid) 95%,var(--success) 5%), color-mix(in srgb,var(--panel-solid) 98%,#000 2%));
  box-shadow: 0 36px 100px rgba(0,0,0,.56), 0 0 44px color-mix(in srgb,var(--success) 15%,transparent), inset 0 1px rgba(255,255,255,.06);
  animation: kline-entry-info-card-in .34s cubic-bezier(.2,.9,.25,1.06) both;
}
.kline-entry-info-reset-glow { position:absolute; z-index:-1; width:320px; height:320px; right:-170px; top:-180px; border-radius:50%; border:1px solid color-mix(in srgb,var(--success) 24%,transparent); box-shadow:0 0 70px color-mix(in srgb,var(--success) 18%,transparent); }
.kline-entry-info-reset-card > header { display:grid; grid-template-columns:52px minmax(0,1fr) auto; align-items:start; gap:14px; }
.kline-entry-info-reset-mark { display:grid; place-items:center; width:52px; height:52px; border-radius:17px; background:linear-gradient(145deg,var(--success),color-mix(in srgb,var(--success) 60%,#0a2436)); color:#fff; font-size:25px; font-style:italic; font-weight:950; box-shadow:0 12px 28px rgba(0,0,0,.26),0 0 24px color-mix(in srgb,var(--success) 26%,transparent),inset 0 1px rgba(255,255,255,.24); }
.kline-entry-info-reset-card header .eyebrow { margin:1px 0 4px; color:var(--success); font-size:9px; font-weight:900; letter-spacing:.14em; }
.kline-entry-info-reset-card h2 { margin:0; color:var(--text); font-size:clamp(21px,2.5vw,29px); line-height:1.14; letter-spacing:-.025em; }
.kline-entry-info-reset-card header p:last-child { max-width:620px; margin:8px 0 0; color:var(--text-2); font-size:12px; line-height:1.55; }
.kline-entry-info-reset-state { display:inline-flex; align-items:center; gap:7px; padding:7px 10px; border:1px solid color-mix(in srgb,var(--success) 42%,var(--border)); border-radius:999px; background:color-mix(in srgb,var(--success) 12%,var(--panel-solid)); color:var(--success); font-size:8px; font-weight:950; letter-spacing:.1em; white-space:nowrap; }
.kline-entry-info-reset-state i { width:7px; height:7px; border-radius:50%; background:var(--success); box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 10%,transparent),0 0 12px color-mix(in srgb,var(--success) 50%,transparent); }
.kline-entry-info-reset-table { display:grid; gap:7px; margin-top:20px; }
.kline-entry-info-reset-table > div { display:grid; grid-template-columns:100px minmax(0,1fr) 92px; align-items:center; gap:12px; min-height:58px; padding:10px 12px; border:1px solid var(--border); border-radius:14px; background:color-mix(in srgb,var(--panel-alt) 75%,transparent); }
.kline-entry-info-reset-table > .head { min-height:32px; padding:7px 12px; border-color:color-mix(in srgb,var(--success) 24%,var(--border)); background:color-mix(in srgb,var(--success) 7%,var(--panel-solid)); color:var(--muted); font-size:7.5px; font-weight:900; letter-spacing:.11em; text-transform:uppercase; }
.kline-entry-info-reset-table b { color:var(--accent-2); font-size:10px; letter-spacing:.04em; }
.kline-entry-info-reset-table > div > span { display:grid; gap:3px; }
.kline-entry-info-reset-table strong { color:var(--text); font-size:11px; }
.kline-entry-info-reset-table small { color:var(--muted); font-size:9px; line-height:1.42; }
.kline-entry-info-reset-table em { justify-self:end; padding:6px 8px; border-radius:999px; background:color-mix(in srgb,var(--success) 11%,var(--panel-solid)); color:var(--success); font-size:7.5px; font-style:normal; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.kline-entry-info-reset-table .muted { opacity:.64; }
.kline-entry-info-reset-table .muted em { background:color-mix(in srgb,var(--muted) 10%,var(--panel-solid)); color:var(--muted); }
.kline-entry-info-reset-card > footer { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:18px; padding-top:16px; border-top:1px solid var(--border); }
.kline-entry-info-reset-card > footer span { max-width:570px; color:var(--text-2); font-size:9.5px; line-height:1.5; }
.kline-entry-info-reset-card > footer .button { min-width:132px; }
@keyframes kline-entry-info-layer-in { from{opacity:0} to{opacity:1} }
@keyframes kline-entry-info-layer-out { to{opacity:0} }
@keyframes kline-entry-info-card-in { from{opacity:0;transform:translateY(16px) scale(.98)} to{opacity:1;transform:none} }
@media (max-width: 940px) {
  .kline-guide-head-actions { justify-content:flex-start; flex-wrap:wrap; }
  .kline-guide-entry-info { width:100%; max-width:240px; }
}
@media (max-width: 650px) {
  .kline-entry-info-reset-layer { padding:10px; }
  .kline-entry-info-reset-card { width:calc(100vw - 14px); max-height:calc(100dvh - 14px); overflow:auto; padding:18px; border-radius:21px; }
  .kline-entry-info-reset-card > header { grid-template-columns:46px 1fr; }
  .kline-entry-info-reset-mark { width:46px; height:46px; border-radius:15px; }
  .kline-entry-info-reset-state { grid-column:2; justify-self:start; }
  .kline-entry-info-reset-table > div { grid-template-columns:72px 1fr; }
  .kline-entry-info-reset-table > div > em { grid-column:2; justify-self:start; }
  .kline-entry-info-reset-table > .head { display:none; }
  .kline-entry-info-reset-card > footer { align-items:stretch; flex-direction:column; }
  .kline-entry-info-reset-card > footer .button { width:100%; }
}
@media (prefers-reduced-motion: reduce) {
  .kline-entry-info-reset-layer, .kline-entry-info-reset-card { animation:none !important; }
}


/* Vstupní info · výběr jednotlivých prvků pro prezentaci/test */
.kline-entry-info-selector-layer {
  position: fixed;
  z-index: 12260;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 22px;
  overflow: auto;
  background: radial-gradient(circle at 50% 34%, color-mix(in srgb,var(--accent) 10%,transparent), transparent 34rem), rgba(2,7,15,.84);
  backdrop-filter: blur(12px) saturate(1.08);
  -webkit-backdrop-filter: blur(12px) saturate(1.08);
  animation: kline-entry-info-layer-in .22s ease both;
}
.kline-entry-info-selector-layer.is-leaving { animation:kline-entry-info-layer-out .18s ease both; pointer-events:none; }
.kline-entry-info-selector-card {
  position: relative;
  isolation: isolate;
  width: min(900px, calc(100vw - 30px));
  max-height: calc(100dvh - 34px);
  overflow: auto;
  padding: 26px;
  border: 1px solid color-mix(in srgb,var(--accent) 31%,var(--border-strong));
  border-radius: 26px;
  background: linear-gradient(145deg, color-mix(in srgb,var(--panel-solid) 96%,var(--accent) 4%), color-mix(in srgb,var(--panel-solid) 99%,#000 1%));
  box-shadow: 0 36px 100px rgba(0,0,0,.58), 0 0 36px color-mix(in srgb,var(--accent) 9%,transparent), inset 0 1px rgba(255,255,255,.055);
  animation: kline-entry-info-card-in .32s cubic-bezier(.2,.9,.25,1.06) both;
}
.kline-entry-info-selector-glow { position:absolute; z-index:-1; width:330px; height:330px; right:-180px; top:-190px; border-radius:50%; border:1px solid color-mix(in srgb,var(--accent) 17%,transparent); box-shadow:0 0 68px color-mix(in srgb,var(--accent) 10%,transparent); }
.kline-entry-info-selector-card > header { display:grid; grid-template-columns:52px minmax(0,1fr) 36px; align-items:start; gap:14px; }
.kline-entry-info-selector-mark { display:grid; place-items:center; width:52px; height:52px; border-radius:17px; background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 78%,var(--panel-solid)),color-mix(in srgb,var(--accent) 34%,#071321)); color:color-mix(in srgb,var(--text) 88%,var(--accent)); font-size:24px; font-style:italic; font-weight:900; box-shadow:0 12px 28px rgba(0,0,0,.25),0 0 18px color-mix(in srgb,var(--accent) 16%,transparent),inset 0 1px rgba(255,255,255,.18); }
.kline-entry-info-selector-card header .eyebrow { margin:1px 0 4px; color:color-mix(in srgb,var(--accent) 72%,var(--text-2)); font-size:8.5px; font-weight:800; letter-spacing:.14em; }
.kline-entry-info-selector-card h2 { margin:0; color:var(--text); font-size:clamp(21px,2.5vw,29px); line-height:1.14; letter-spacing:-.025em; }
.kline-entry-info-selector-card header p:last-child { max-width:690px; margin:8px 0 0; color:var(--text-2); font-size:11.5px; line-height:1.55; }
.kline-entry-info-selector-close { display:grid; place-items:center; width:34px; height:34px; border:1px solid var(--border); border-radius:11px; background:color-mix(in srgb,var(--panel-alt) 78%,transparent); color:var(--muted); font:500 19px/1 inherit; cursor:pointer; transition:.18s ease; }
.kline-entry-info-selector-close:hover { color:var(--text); border-color:color-mix(in srgb,var(--accent) 42%,var(--border)); background:color-mix(in srgb,var(--accent) 7%,var(--panel-solid)); }
.kline-entry-info-selector-tools { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:18px; padding:10px 12px; border:1px solid var(--border); border-radius:14px; background:color-mix(in srgb,var(--panel-alt) 64%,transparent); }
.kline-entry-info-selector-tools button { border:0; background:transparent; color:color-mix(in srgb,var(--accent) 72%,var(--text)); font-size:9px; font-weight:800; cursor:pointer; }
.kline-entry-info-selector-tools span { color:var(--muted); font-size:8.5px; letter-spacing:.02em; }
.kline-entry-info-selector-list { display:grid; gap:8px; margin-top:10px; }
.kline-entry-info-choice { position:relative; display:grid; grid-template-columns:24px 70px minmax(0,1fr) 82px; align-items:center; gap:11px; min-height:68px; padding:10px 12px; border:1px solid var(--border); border-radius:15px; background:color-mix(in srgb,var(--panel-alt) 72%,transparent); cursor:pointer; transition:border-color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease; }
.kline-entry-info-choice:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--accent) 30%,var(--border)); background:color-mix(in srgb,var(--accent) 4%,var(--panel-alt)); box-shadow:0 10px 24px rgba(0,0,0,.12); }
.kline-entry-info-choice > input { position:absolute; opacity:0; pointer-events:none; }
.kline-entry-info-choice-check { display:grid; place-items:center; width:20px; height:20px; border:1px solid color-mix(in srgb,var(--muted) 60%,var(--border)); border-radius:7px; background:var(--panel-solid); box-shadow:inset 0 1px rgba(255,255,255,.04); }
.kline-entry-info-choice-check::after { content:"✓"; opacity:0; transform:scale(.7); color:#fff; font-size:11px; transition:.16s ease; }
.kline-entry-info-choice input:checked + .kline-entry-info-choice-check { border-color:color-mix(in srgb,var(--accent) 68%,var(--border)); background:color-mix(in srgb,var(--accent) 72%,var(--panel-solid)); box-shadow:0 0 14px color-mix(in srgb,var(--accent) 15%,transparent); }
.kline-entry-info-choice input:checked + .kline-entry-info-choice-check::after { opacity:1; transform:none; }
.kline-entry-info-choice:has(input:checked) { border-color:color-mix(in srgb,var(--accent) 33%,var(--border)); background:color-mix(in srgb,var(--accent) 5%,var(--panel-alt)); }
.kline-entry-info-choice-time { color:var(--accent-2); font-size:9.5px; font-weight:800; letter-spacing:.05em; }
.kline-entry-info-choice-copy { display:grid; gap:3px; }
.kline-entry-info-choice-copy strong { color:var(--text); font-size:10.5px; font-weight:700; }
.kline-entry-info-choice-copy small { color:var(--muted); font-size:8.8px; line-height:1.42; }
.kline-entry-info-choice em { justify-self:end; color:var(--text-2); font-size:7.5px; font-style:normal; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.kline-entry-info-choice.is-disabled { opacity:.48; cursor:not-allowed; }
.kline-entry-info-choice.is-disabled:hover { transform:none; border-color:var(--border); background:color-mix(in srgb,var(--panel-alt) 72%,transparent); box-shadow:none; }
.kline-entry-info-choice.is-disabled em { color:var(--muted); }
.kline-entry-info-selector-card > footer { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:18px; padding-top:16px; border-top:1px solid var(--border); }
.kline-entry-info-selector-card > footer > span { max-width:560px; color:var(--text-2); font-size:9px; line-height:1.5; }
.kline-entry-info-selector-card > footer > div { display:flex; gap:8px; flex:0 0 auto; }
.kline-entry-info-selector-card > footer .button { min-width:126px; }
@media (max-width:650px) {
  .kline-entry-info-selector-layer { padding:8px; }
  .kline-entry-info-selector-card { width:calc(100vw - 12px); max-height:calc(100dvh - 12px); padding:17px; border-radius:20px; }
  .kline-entry-info-selector-card > header { grid-template-columns:44px 1fr 32px; gap:10px; }
  .kline-entry-info-selector-mark { width:44px; height:44px; border-radius:14px; }
  .kline-entry-info-selector-tools { align-items:flex-start; flex-direction:column; }
  .kline-entry-info-choice { grid-template-columns:22px 54px 1fr; gap:8px; }
  .kline-entry-info-choice em { grid-column:3; justify-self:start; }
  .kline-entry-info-selector-card > footer { align-items:stretch; flex-direction:column; }
  .kline-entry-info-selector-card > footer > div { display:grid; grid-template-columns:1fr 1fr; }
  .kline-entry-info-selector-card > footer .button { min-width:0; width:100%; }
}
@media (prefers-reduced-motion:reduce) { .kline-entry-info-selector-layer,.kline-entry-info-selector-card { animation:none !important; } }

/* ========================================================================== */
/* KIRA CENTER · layout + visual polish                                       */
/* Scope is intentionally limited to the Kira view only.                      */
/* ========================================================================== */
#dynamic-view:has(.kira-center-shell) {
  position: relative;
  isolation: isolate;
}

#dynamic-view:has(.kira-center-shell)::before {
  content: "";
  position: absolute;
  inset: 62px -18px auto 32%;
  height: 430px;
  pointer-events: none;
  z-index: -1;
  background:
    radial-gradient(circle at 28% 38%, rgba(41, 189, 255, .12), transparent 34%),
    radial-gradient(circle at 72% 20%, rgba(246, 195, 72, .08), transparent 28%),
    radial-gradient(circle at 62% 76%, rgba(69, 92, 255, .10), transparent 30%);
  filter: blur(8px);
}

#dynamic-view:has(.kira-center-shell) > .section-heading {
  margin-bottom: 18px;
  padding: 20px 24px;
  border: 1px solid rgba(123, 182, 255, .16);
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(15, 32, 58, .88), rgba(8, 19, 35, .82)),
    radial-gradient(circle at 12% 0%, rgba(48, 181, 255, .10), transparent 40%);
  box-shadow: 0 20px 55px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255,255,255,.035);
}

#dynamic-view:has(.kira-center-shell) > .section-heading p:first-child {
  color: #7fcfff;
  font-weight: 850;
  letter-spacing: .16em;
}

#dynamic-view:has(.kira-center-shell) > .section-heading h2 {
  text-shadow: 0 0 26px rgba(73, 176, 255, .18);
}

.kira-center-shell {
  --kira-cyan: #54d9ff;
  --kira-blue: #2d78ff;
  --kira-gold: #f0c45b;
  --kira-green: #51e1b6;
  --kira-card: rgba(9, 22, 41, .82);
  --kira-line: rgba(112, 173, 242, .16);
  display: grid;
  gap: 18px;
  width: 100%;
  max-width: 1540px;
  margin: 0 auto;
  padding-bottom: 34px;
}

.kira-center-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 116px minmax(0, 1fr) auto;
  align-items: center;
  gap: 24px;
  min-height: 188px;
  padding: 26px 28px;
  border: 1px solid rgba(95, 187, 255, .24);
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(13, 35, 64, .95), rgba(7, 18, 34, .96) 58%, rgba(8, 26, 45, .94)),
    radial-gradient(circle at 20% 20%, rgba(84, 217, 255, .14), transparent 36%);
  box-shadow:
    0 30px 75px rgba(0, 0, 0, .34),
    0 0 0 1px rgba(31, 137, 255, .05),
    inset 0 1px 0 rgba(255,255,255,.05);
}

.kira-center-hero::before,
.kira-center-hero::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.kira-center-hero::before {
  width: 320px;
  height: 320px;
  right: -96px;
  top: -160px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(55, 196, 255, .14), rgba(55, 196, 255, 0) 68%);
  animation: kiraHeroGlow 5.5s ease-in-out infinite;
}

.kira-center-hero::after {
  inset: 0;
  background: linear-gradient(105deg, transparent 0 34%, rgba(255,255,255,.035) 44%, transparent 54% 100%);
  transform: translateX(-120%);
  animation: kiraHeroSweep 8s ease-in-out infinite;
}

.kira-center-hero.paused {
  border-color: rgba(255, 182, 86, .22);
}

.kira-center-orb {
  position: relative;
  display: grid;
  place-items: center;
  width: 100px;
  aspect-ratio: 1;
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 48%, rgba(43, 161, 255, .26), rgba(8, 26, 50, .94) 54%, rgba(5, 13, 25, 1) 76%);
  box-shadow:
    0 0 44px rgba(45, 152, 255, .22),
    inset 0 0 26px rgba(93, 219, 255, .08),
    0 14px 28px rgba(0,0,0,.34);
}

.kira-center-orb::before {
  content: "";
  position: absolute;
  inset: -8px;
  border-radius: 50%;
  border: 1px solid rgba(90, 210, 255, .28);
  border-top-color: rgba(240, 196, 91, .86);
  border-right-color: rgba(84, 217, 255, .72);
  animation: kiraOrbSpin 7s linear infinite;
}

.kira-center-orb::after {
  content: "";
  position: absolute;
  inset: 10px;
  border-radius: 50%;
  border: 1px solid rgba(109, 143, 255, .20);
  box-shadow: inset 0 0 18px rgba(56, 183, 255, .12);
  animation: kiraOrbPulse 2.7s ease-in-out infinite;
}

.kira-center-orb > i,
.kira-center-orb > b {
  position: absolute;
  inset: 2px;
  border-radius: 50%;
  border: 1px dashed rgba(82, 208, 255, .17);
}

.kira-center-orb > i { animation: kiraOrbSpin 11s linear infinite reverse; }
.kira-center-orb > b { inset: 18px; border-color: rgba(240, 196, 91, .16); animation: kiraOrbSpin 9s linear infinite; }

.kira-center-orb > span {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 15px;
  color: #eaf8ff;
  font-size: 26px;
  font-weight: 950;
  letter-spacing: -.04em;
  background: linear-gradient(145deg, rgba(27, 115, 255, .82), rgba(37, 199, 242, .42));
  border: 1px solid rgba(148, 225, 255, .38);
  box-shadow: 0 0 24px rgba(42, 167, 255, .32), inset 0 1px 0 rgba(255,255,255,.20);
  text-shadow: 0 2px 9px rgba(0,0,0,.35);
}

.kira-center-hero-copy {
  min-width: 0;
}

.kira-center-hero-copy > small,
.kira-center-panel-head small {
  display: block;
  margin-bottom: 7px;
  color: var(--kira-cyan);
  font-size: 10px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.kira-center-hero-copy h2 {
  margin: 0 0 9px;
  color: #f6fbff;
  font-size: clamp(24px, 2vw, 34px);
  line-height: 1.08;
  letter-spacing: -.035em;
  text-shadow: 0 0 28px rgba(71, 180, 255, .18);
}

.kira-center-hero-copy p {
  max-width: 780px;
  margin: 0;
  color: #b9c9dc;
  font-size: 13px;
  line-height: 1.7;
}

.kira-center-hero-stats {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(3, minmax(112px, 1fr));
  gap: 10px;
}

.kira-center-hero-stats article {
  min-width: 112px;
  padding: 15px 16px 14px;
  border: 1px solid rgba(112, 180, 244, .14);
  border-radius: 18px;
  background: rgba(6, 17, 32, .54);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03), 0 10px 28px rgba(0,0,0,.16);
  backdrop-filter: blur(9px);
}

.kira-center-hero-stats small {
  display: block;
  margin-bottom: 7px;
  color: #8ea3bb;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.kira-center-hero-stats strong {
  color: #f6fbff;
  font-size: 23px;
  line-height: 1;
}

.kira-center-hero.live .kira-center-hero-stats article:last-child strong {
  color: var(--kira-green);
  text-shadow: 0 0 17px rgba(81, 225, 182, .35);
}

.kira-center-hero.paused .kira-center-hero-stats article:last-child strong {
  color: #ffc66f;
}

.kira-center-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.kira-center-panel {
  position: relative;
  overflow: hidden;
  min-width: 0;
  padding: 21px 22px;
  border: 1px solid var(--kira-line);
  border-radius: 24px;
  background:
    linear-gradient(145deg, rgba(12, 28, 51, .91), rgba(7, 17, 31, .90)),
    radial-gradient(circle at 100% 0%, rgba(50, 166, 255, .07), transparent 38%);
  box-shadow:
    0 18px 45px rgba(0, 0, 0, .24),
    inset 0 1px 0 rgba(255,255,255,.035);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.kira-center-panel::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 2px;
  background: linear-gradient(180deg, transparent, rgba(84,217,255,.62), rgba(45,120,255,.36), transparent);
  opacity: .62;
}

.kira-center-panel:hover {
  transform: translateY(-2px);
  border-color: rgba(94, 187, 255, .25);
  box-shadow: 0 24px 58px rgba(0, 0, 0, .28), 0 0 28px rgba(44, 145, 255, .05), inset 0 1px 0 rgba(255,255,255,.045);
}

.kira-center-create,
.kira-center-activity {
  grid-column: 1 / -1;
}

.kira-center-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
}

.kira-center-panel-head h3 {
  margin: 0;
  color: #f2f8ff;
  font-size: 20px;
  line-height: 1.15;
  letter-spacing: -.025em;
}

.kira-center-panel-head > b {
  display: grid;
  place-items: center;
  min-width: 38px;
  height: 38px;
  padding: 0 10px;
  border-radius: 13px;
  color: #dff6ff;
  font-size: 15px;
  border: 1px solid rgba(84, 217, 255, .22);
  background: rgba(18, 78, 122, .22);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 0 20px rgba(41,154,255,.08);
}

.kira-center-panel > p {
  margin: -2px 0 17px;
  color: #9fb2c8;
  font-size: 12px;
  line-height: 1.55;
}

.kira-center-live-dot,
.kira-center-scan-label {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 29px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 9px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.kira-center-live-dot {
  color: #85f8d3;
  border: 1px solid rgba(81, 225, 182, .25);
  background: rgba(30, 130, 101, .16);
  box-shadow: 0 0 18px rgba(81, 225, 182, .08);
  animation: kiraLivePulse 2.2s ease-in-out infinite;
}

.kira-center-scan-label {
  color: #a9c9e7;
  border: 1px solid rgba(111, 170, 224, .15);
  background: rgba(21, 50, 78, .33);
}

.kira-center-create-form {
  display: grid;
  grid-template-columns: minmax(190px, .65fr) minmax(260px, 1.45fr) auto;
  gap: 12px;
  align-items: end;
}

.kira-center-create-form label {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.kira-center-create-form label > span {
  color: #8fa7bf;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.kira-center-create-form select,
.kira-center-create-form input {
  width: 100%;
  height: 46px;
  padding: 0 13px;
  border: 1px solid rgba(108, 170, 232, .18);
  border-radius: 14px;
  outline: none;
  color: #edf8ff;
  font: inherit;
  font-size: 12px;
  background: rgba(4, 14, 27, .72);
  box-shadow: inset 0 2px 7px rgba(0,0,0,.18), 0 1px 0 rgba(255,255,255,.025);
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.kira-center-create-form select:focus,
.kira-center-create-form input:focus {
  border-color: rgba(84, 217, 255, .58);
  background: rgba(5, 19, 36, .90);
  box-shadow: 0 0 0 3px rgba(45, 120, 255, .10), 0 0 26px rgba(42, 166, 255, .10), inset 0 2px 7px rgba(0,0,0,.20);
}

.kira-center-create-form input::placeholder { color: #65788e; }

.kira-center-add-button {
  position: relative;
  overflow: hidden;
  min-width: 178px;
  height: 46px;
  border-radius: 14px !important;
  border: 1px solid rgba(147, 218, 255, .34) !important;
  background: linear-gradient(135deg, #2764f5, #1aa7ec) !important;
  box-shadow:
    0 12px 26px rgba(26, 118, 255, .24),
    0 0 25px rgba(42, 174, 255, .10),
    inset 0 1px 0 rgba(255,255,255,.22) !important;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}

.kira-center-add-button::after {
  content: "";
  position: absolute;
  top: -60%;
  bottom: -60%;
  width: 42px;
  left: -70px;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.34), transparent);
  animation: kiraButtonSweep 4.8s ease-in-out infinite;
}

.kira-center-add-button:hover {
  transform: translateY(-2px) scale(1.015);
  filter: brightness(1.08);
  box-shadow: 0 16px 34px rgba(26, 118, 255, .31), 0 0 34px rgba(42, 174, 255, .16), inset 0 1px 0 rgba(255,255,255,.26) !important;
}

.kira-center-add-button:active { transform: translateY(0) scale(.99); }

.kira-center-examples {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.kira-center-examples button {
  appearance: none;
  min-height: 30px;
  padding: 0 11px;
  border: 1px solid rgba(119, 169, 221, .14);
  border-radius: 999px;
  color: #a9bfd5;
  font: inherit;
  font-size: 10px;
  font-weight: 750;
  background: rgba(7, 18, 33, .58);
  cursor: pointer;
  transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease;
}

.kira-center-examples button:hover {
  color: #effaff;
  border-color: rgba(84, 217, 255, .34);
  background: rgba(28, 92, 140, .24);
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(0,0,0,.15), 0 0 18px rgba(45, 154, 255, .06);
}

.kira-center-watch-list {
  display: grid;
  gap: 10px;
}

.kira-center-watch-card {
  position: relative;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 34px;
  align-items: center;
  gap: 12px;
  min-height: 74px;
  padding: 12px 11px 12px 12px;
  border: 1px solid rgba(111, 169, 224, .13);
  border-radius: 17px;
  background: rgba(5, 16, 30, .58);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025), 0 9px 22px rgba(0,0,0,.12);
  transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.kira-center-watch-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 18%;
  bottom: 18%;
  width: 2px;
  border-radius: 999px;
  background: linear-gradient(180deg, transparent, rgba(84,217,255,.75), transparent);
}

.kira-center-watch-card.custom::before {
  background: linear-gradient(180deg, transparent, rgba(240,196,91,.75), transparent);
}

.kira-center-watch-card:hover {
  transform: translateX(3px);
  border-color: rgba(88, 187, 255, .25);
  background: rgba(8, 23, 41, .78);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 12px 26px rgba(0,0,0,.17), 0 0 22px rgba(42, 157, 255, .045);
}

.kira-center-watch-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 13px;
  color: #b9edff;
  font-size: 18px;
  border: 1px solid rgba(84, 217, 255, .20);
  background: linear-gradient(145deg, rgba(27, 109, 173, .31), rgba(13, 46, 80, .27));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 0 19px rgba(41,157,255,.07);
}

.kira-center-watch-card.custom .kira-center-watch-icon {
  color: #ffe19b;
  border-color: rgba(240, 196, 91, .20);
  background: linear-gradient(145deg, rgba(139, 105, 28, .26), rgba(75, 49, 10, .19));
}

.kira-center-watch-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.kira-center-watch-copy small {
  color: #6fd8ff;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .09em;
}

.kira-center-watch-card.custom .kira-center-watch-copy small { color: #d7b860; }

.kira-center-watch-copy strong {
  overflow: hidden;
  color: #edf8ff;
  font-size: 12px;
  line-height: 1.25;
  text-overflow: ellipsis;
}

.kira-center-watch-copy span {
  display: block;
  color: #8fa4ba;
  font-size: 10px;
  line-height: 1.35;
}

.kira-center-watch-copy em {
  display: block;
  margin-top: 3px;
  color: #6f849a;
  font-size: 9px;
  font-style: normal;
}

.kira-center-remove {
  appearance: none;
  display: grid;
  place-items: center;
  width: 31px;
  height: 31px;
  padding: 0;
  border: 1px solid rgba(255, 111, 122, .13);
  border-radius: 10px;
  color: #8da0b3;
  font-size: 19px;
  line-height: 1;
  background: rgba(44, 15, 23, .20);
  cursor: pointer;
  transition: color .18s ease, border-color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease;
}

.kira-center-remove:hover {
  color: #ffbdc3;
  border-color: rgba(255, 105, 120, .35);
  background: rgba(132, 31, 46, .22);
  transform: scale(1.06);
  box-shadow: 0 0 18px rgba(255, 82, 98, .08);
}

.kira-center-empty {
  display: flex;
  align-items: center;
  gap: 13px;
  min-height: 84px;
  padding: 14px 15px;
  border: 1px dashed rgba(109, 164, 217, .16);
  border-radius: 17px;
  background: rgba(5, 15, 28, .35);
}

.kira-center-empty > span {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 13px;
  color: #82d8ff;
  font-size: 17px;
  border: 1px solid rgba(84, 217, 255, .16);
  background: rgba(24, 89, 131, .16);
}

.kira-center-empty > div {
  display: grid;
  gap: 4px;
}

.kira-center-empty strong {
  color: #dbe9f7;
  font-size: 12px;
}

.kira-center-empty small {
  color: #8196ac;
  font-size: 10px;
  line-height: 1.45;
}

.kira-center-empty.compact { min-height: 68px; }

.kira-center-activity-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.kira-center-activity-list article {
  display: grid;
  grid-template-columns: 35px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 11px 12px;
  border: 1px solid rgba(81, 225, 182, .13);
  border-radius: 15px;
  background: rgba(10, 36, 36, .29);
}

.kira-center-activity-list article > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 11px;
  color: #86f4cf;
  border: 1px solid rgba(81, 225, 182, .22);
  background: rgba(33, 116, 93, .19);
  box-shadow: 0 0 16px rgba(81,225,182,.05);
}

.kira-center-activity-list article > div { display: grid; gap: 3px; min-width: 0; }
.kira-center-activity-list strong { overflow: hidden; color: #e3f6ef; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.kira-center-activity-list small { color: #7fa99c; font-size: 9px; }

.kira-center-note {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  margin-top: 13px;
  padding: 13px 14px;
  border: 1px solid rgba(92, 164, 230, .13);
  border-radius: 15px;
  background: linear-gradient(135deg, rgba(24, 74, 116, .18), rgba(7, 18, 32, .18));
}

.kira-center-note > span {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 9px;
  color: #bceaff;
  font-size: 11px;
  font-weight: 900;
  border: 1px solid rgba(84, 217, 255, .20);
  background: rgba(25, 105, 156, .20);
}

.kira-center-note p {
  display: grid;
  gap: 3px;
  margin: 0;
}

.kira-center-note strong { color: #d9ecfb; font-size: 10px; }
.kira-center-note small { color: #8197ad; font-size: 9px; line-height: 1.45; }

.kira-center-nav-item.is-watching {
  position: relative;
  box-shadow: inset 0 0 0 1px rgba(84, 217, 255, .08);
}

.kira-center-nav-item.is-watching::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 50%;
  width: 3px;
  height: 22px;
  border-radius: 999px;
  transform: translateY(-50%);
  background: linear-gradient(#53ddff, #377cff);
  box-shadow: 0 0 14px rgba(83, 221, 255, .45);
  animation: kiraNavGlow 2.8s ease-in-out infinite;
}

@keyframes kiraHeroGlow {
  0%,100% { transform: scale(.94); opacity: .70; }
  50% { transform: scale(1.08); opacity: 1; }
}

@keyframes kiraHeroSweep {
  0%, 58%, 100% { transform: translateX(-120%); }
  72% { transform: translateX(120%); }
}

@keyframes kiraOrbSpin { to { transform: rotate(360deg); } }

@keyframes kiraOrbPulse {
  0%,100% { transform: scale(.96); opacity: .55; }
  50% { transform: scale(1.04); opacity: 1; }
}

@keyframes kiraLivePulse {
  0%,100% { box-shadow: 0 0 0 rgba(81, 225, 182, 0); }
  50% { box-shadow: 0 0 20px rgba(81, 225, 182, .13); }
}

@keyframes kiraButtonSweep {
  0%, 62%, 100% { left: -70px; opacity: 0; }
  68% { opacity: 1; }
  84% { left: calc(100% + 40px); opacity: 0; }
}

@keyframes kiraNavGlow {
  0%,100% { opacity: .55; transform: translateY(-50%) scaleY(.78); }
  50% { opacity: 1; transform: translateY(-50%) scaleY(1); }
}

@media (max-width: 1180px) {
  .kira-center-hero {
    grid-template-columns: 94px minmax(0, 1fr);
  }
  .kira-center-orb { width: 82px; }
  .kira-center-hero-stats {
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 850px) {
  .kira-center-grid { grid-template-columns: 1fr; }
  .kira-center-create,
  .kira-center-activity { grid-column: auto; }
  .kira-center-create-form { grid-template-columns: 1fr; }
  .kira-center-add-button { width: 100%; }
  .kira-center-activity-list { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  #dynamic-view:has(.kira-center-shell) > .section-heading {
    padding: 17px 18px;
    border-radius: 19px;
  }
  .kira-center-shell { gap: 13px; }
  .kira-center-hero {
    grid-template-columns: 1fr;
    gap: 17px;
    padding: 21px 18px;
    border-radius: 22px;
  }
  .kira-center-orb { width: 78px; }
  .kira-center-hero-stats { grid-template-columns: 1fr 1fr; }
  .kira-center-hero-stats article:last-child { grid-column: 1 / -1; }
  .kira-center-panel { padding: 18px 16px; border-radius: 20px; }
  .kira-center-panel-head { align-items: flex-start; }
  .kira-center-live-dot,
  .kira-center-scan-label { min-height: 26px; padding-inline: 8px; font-size: 8px; }
  .kira-center-watch-card { grid-template-columns: 39px minmax(0, 1fr) 31px; gap: 9px; }
  .kira-center-watch-icon { width: 38px; height: 38px; border-radius: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .kira-center-shell *,
  .kira-center-shell *::before,
  .kira-center-shell *::after,
  .kira-center-nav-item.is-watching::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }
}


/* K-Line · Administrator · Detekce spedice */
.spedition-detection-loading{min-height:320px;display:grid;place-items:center;position:relative;overflow:hidden;border:1px solid rgba(74,174,255,.18);border-radius:28px;background:radial-gradient(circle at 50% 45%,rgba(29,131,255,.12),transparent 38%),rgba(5,17,34,.56)}
.spedition-detection-loading span,.spedition-detection-loading b,.spedition-detection-loading i{position:absolute;border:1px solid rgba(79,196,255,.28);border-radius:50%;animation:speditionRadarPulse 2.4s ease-out infinite}.spedition-detection-loading span{width:70px;height:70px}.spedition-detection-loading b{width:140px;height:140px;animation-delay:.45s}.spedition-detection-loading i{width:220px;height:220px;animation-delay:.9s}
.spedition-detection-hero{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;position:relative;overflow:hidden;margin:18px 0;border:1px solid rgba(68,185,255,.34);border-radius:28px;padding:24px 26px;background:linear-gradient(135deg,rgba(7,28,52,.96),rgba(9,19,40,.92) 55%,rgba(13,42,63,.88));box-shadow:0 18px 55px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.04)}
.spedition-detection-hero::after{content:"";position:absolute;inset:-70% -20%;background:linear-gradient(115deg,transparent 42%,rgba(83,205,255,.08) 50%,transparent 58%);animation:speditionSweep 7s linear infinite;pointer-events:none}.spedition-detection-hero.is-paused{border-color:rgba(255,173,76,.36);filter:saturate(.78)}
.spedition-detection-hero>div:not(.spedition-detection-radar){position:relative;z-index:1}.spedition-detection-hero h3{margin:4px 0 8px;font-size:22px}.spedition-detection-hero p{max-width:850px;color:var(--text-2);line-height:1.55}.spedition-detection-hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.spedition-detection-radar{width:86px;height:86px;display:grid;place-items:center;position:relative;border-radius:50%;border:1px solid rgba(80,205,255,.4);background:radial-gradient(circle,rgba(57,192,255,.18),rgba(3,16,31,.5) 62%);box-shadow:0 0 34px rgba(38,173,255,.18)}.spedition-detection-radar span{width:42px;height:42px;display:grid;place-items:center;border-radius:15px;background:rgba(34,154,255,.14);color:#7be4ff;z-index:2}.spedition-detection-radar svg{width:23px;height:23px}.spedition-detection-radar i,.spedition-detection-radar b{position:absolute;border:1px solid rgba(87,215,255,.22);border-radius:50%;inset:13px;animation:speditionRadarPulse 2.5s ease-out infinite}.spedition-detection-radar b{inset:2px;animation-delay:.8s}
.spedition-detection-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 18px}.spedition-detection-summary>span{min-height:90px;display:flex;flex-direction:column;justify-content:center;padding:16px 18px;border:1px solid rgba(88,142,204,.18);border-radius:20px;background:linear-gradient(145deg,rgba(12,29,54,.9),rgba(8,19,37,.92));box-shadow:0 12px 30px rgba(0,0,0,.16)}.spedition-detection-summary small{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.spedition-detection-summary strong{font-size:25px;margin-top:4px}.spedition-detection-summary em{font-size:11px;color:var(--text-2);font-style:normal;margin-top:3px}.spedition-detection-summary .pending strong,.spedition-detection-summary .high strong{color:#ffbf70}.spedition-detection-summary .confirmed strong{color:#ff7a8f}
.spedition-detection-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:22px 0 14px;padding:0 3px}.spedition-detection-toolbar div{display:flex;flex-direction:column;gap:3px}.spedition-detection-toolbar small{color:var(--muted)}
.spedition-detection-list{display:grid;gap:16px;padding-bottom:28px}.spedition-detection-card{position:relative;overflow:hidden;border:1px solid rgba(83,159,224,.2);border-radius:24px;padding:20px;background:linear-gradient(145deg,rgba(11,25,47,.96),rgba(7,17,34,.96));box-shadow:0 18px 44px rgba(0,0,0,.2);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.spedition-detection-card:hover{transform:translateY(-2px);border-color:rgba(74,195,255,.38);box-shadow:0 24px 58px rgba(0,0,0,.28),0 0 34px rgba(37,165,255,.08)}.spedition-detection-card.high{border-color:rgba(255,95,110,.34)}.spedition-detection-card.medium{border-color:rgba(255,179,79,.3)}.spedition-detection-card-glow{position:absolute;width:260px;height:260px;right:-110px;top:-150px;border-radius:50%;background:radial-gradient(circle,rgba(74,192,255,.13),transparent 68%);pointer-events:none}.spedition-detection-card.high .spedition-detection-card-glow{background:radial-gradient(circle,rgba(255,73,109,.13),transparent 68%)}
.spedition-detection-card header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;position:relative;z-index:1}.spedition-detection-risk{min-width:118px;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:18px;border:1px solid rgba(102,186,255,.2);background:rgba(7,22,40,.68)}.spedition-detection-risk i{font-style:normal;font-size:22px;color:#79dcff}.spedition-detection-risk span{display:grid;grid-template-columns:auto auto;align-items:end}.spedition-detection-risk small{grid-column:1/-1;font-size:9px;letter-spacing:.1em;color:var(--muted)}.spedition-detection-risk strong{font-size:25px;line-height:1}.spedition-detection-risk em{font-size:10px;color:var(--muted);font-style:normal;margin-left:3px}.spedition-detection-risk.high i,.spedition-detection-risk.high strong{color:#ff7188}.spedition-detection-risk.medium i,.spedition-detection-risk.medium strong{color:#ffc067}.spedition-detection-carrier h3{margin:2px 0;font-size:19px}.spedition-detection-carrier small,.spedition-detection-carrier p{color:var(--muted);font-size:11px;margin:0}
.spedition-detection-meter{height:5px;margin:16px 0;border-radius:999px;overflow:hidden;background:rgba(109,155,201,.12)}.spedition-detection-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#29a7ff,#65e2ff);box-shadow:0 0 16px rgba(63,198,255,.45);animation:speditionMeterGlow 2.8s ease-in-out infinite}.spedition-detection-card.high .spedition-detection-meter span{background:linear-gradient(90deg,#ff6d83,#ffb06a)}.spedition-detection-card.medium .spedition-detection-meter span{background:linear-gradient(90deg,#ffad4e,#ffe178)}
.spedition-detection-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.spedition-detection-metrics span{padding:12px 13px;border-radius:15px;background:rgba(11,31,54,.65);border:1px solid rgba(97,153,207,.12)}.spedition-detection-metrics small{display:block;color:var(--muted);font-size:10px}.spedition-detection-metrics strong{display:block;margin-top:3px;font-size:17px}.spedition-detection-signals{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.spedition-detection-signal{display:inline-flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:12px;border:1px solid rgba(255,176,76,.22);background:rgba(255,159,52,.07);font-size:11px;color:#ffd493}.spedition-detection-signal small{font-size:9px;color:var(--muted)}.spedition-detection-signal.neutral{color:var(--muted);border-color:rgba(120,160,200,.14);background:rgba(100,140,180,.05)}
.spedition-detection-evidence{margin:10px 0 14px;border:1px solid rgba(92,154,215,.14);border-radius:15px;background:rgba(5,16,31,.42)}.spedition-detection-evidence summary{cursor:pointer;padding:11px 13px;font-size:11px;font-weight:800}.spedition-detection-evidence div{padding:0 13px 12px;color:var(--text-2);font-size:11px;line-height:1.5}.spedition-detection-note{display:block;margin-top:8px}.spedition-detection-note>span{display:block;margin-bottom:6px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em}.spedition-detection-note textarea{width:100%;min-height:72px;resize:vertical;padding:11px 12px;color:var(--text);border:1px solid rgba(89,161,224,.2);border-radius:14px;background:rgba(4,15,29,.78);outline:none}.spedition-detection-note textarea:focus{border-color:rgba(66,190,255,.62);box-shadow:0 0 0 3px rgba(38,162,255,.09)}
.spedition-detection-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.spedition-detection-actions .button-danger{margin-left:auto;background:linear-gradient(135deg,#8f263d,#d14a60);border-color:rgba(255,119,139,.45);color:#fff;box-shadow:0 9px 24px rgba(177,41,70,.2)}.spedition-detection-actions .button-danger:hover{box-shadow:0 12px 30px rgba(212,55,89,.32),0 0 18px rgba(255,93,125,.16)}.spedition-detection-terminated{display:flex;gap:10px;align-items:center;margin-top:13px;padding:11px 13px;border-radius:14px;border:1px solid rgba(255,96,117,.22);background:rgba(133,24,44,.12)}.spedition-detection-terminated svg{width:22px;height:22px;color:#ff758c}.spedition-detection-terminated span{display:flex;flex-direction:column}.spedition-detection-terminated small{color:var(--text-2);margin-top:2px}.spedition-detection-empty{min-height:280px;display:grid;place-items:center;align-content:center;text-align:center;border:1px dashed rgba(80,176,236,.24);border-radius:24px;background:rgba(7,19,36,.48);padding:30px}.spedition-detection-empty>span{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:rgba(38,154,236,.1);color:#72ddff;box-shadow:0 0 30px rgba(40,171,255,.12)}.spedition-detection-empty svg{width:28px;height:28px}.spedition-detection-empty h3{margin:14px 0 6px}.spedition-detection-empty p{max-width:560px;color:var(--muted)}
@keyframes speditionRadarPulse{0%{transform:scale(.7);opacity:.15}55%{opacity:.7}100%{transform:scale(1.24);opacity:0}}@keyframes speditionSweep{0%{transform:translateX(-45%) rotate(0deg)}100%{transform:translateX(45%) rotate(0deg)}}@keyframes speditionMeterGlow{0%,100%{filter:brightness(.9)}50%{filter:brightness(1.35)}}
@media(max-width:980px){.spedition-detection-hero{grid-template-columns:auto 1fr}.spedition-detection-hero-actions{grid-column:1/-1;justify-content:flex-start}.spedition-detection-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.spedition-detection-summary>span:last-child{grid-column:1/-1}.spedition-detection-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.spedition-detection-card header{grid-template-columns:auto 1fr}.spedition-detection-card header>.status-pill{grid-column:1/-1;justify-self:start}.spedition-detection-actions .button-danger{margin-left:0}}@media(max-width:620px){.spedition-detection-hero{grid-template-columns:1fr;padding:18px}.spedition-detection-radar{width:70px;height:70px}.spedition-detection-summary{grid-template-columns:1fr 1fr}.spedition-detection-card{padding:15px}.spedition-detection-card header{grid-template-columns:1fr}.spedition-detection-risk{width:max-content}.spedition-detection-metrics{grid-template-columns:1fr 1fr}.spedition-detection-actions{display:grid}.spedition-detection-actions .button{width:100%}.spedition-detection-toolbar{align-items:flex-start;flex-direction:column}}

/* ================================================================
   K-Line · časové informační popisky v horní liště
   Absolutní vrstva: neovlivňuje grid ani pozici hledání / akcí.
   ================================================================ */
.kline-header-info-host{
  position:absolute;
  z-index:935;
  top:50%;
  transform:translateY(-50%);
  height:48px;
  min-width:0;
  pointer-events:none;
  transition:opacity .22s ease,filter .22s ease;
}
.kline-header-info-host[hidden],.kline-header-info-host[data-no-room="true"]{display:none!important}
.kline-header-info-card{
  --header-info-tone:#29d987;
  position:relative;
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  align-items:center;
  gap:9px;
  width:100%;
  height:46px;
  padding:5px 11px 5px 7px;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--header-info-tone) 38%,transparent);
  border-radius:16px;
  background:
    linear-gradient(100deg,color-mix(in srgb,var(--header-info-tone) 4%,rgba(5,16,31,.94)),rgba(5,16,31,.93) 48%,color-mix(in srgb,var(--header-info-tone) 2%,rgba(5,16,31,.94)));
  box-shadow:
    0 0 0 1px color-mix(in srgb,var(--header-info-tone) 4%,transparent) inset,
    0 6px 15px rgba(0,0,0,.20),
    0 0 10px color-mix(in srgb,var(--header-info-tone) 11%,transparent);
  isolation:isolate;
  animation:klineHeaderInfoBreath 4.8s ease-in-out infinite;
}
.kline-header-info-card::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:-50% -20%;
  background:linear-gradient(110deg,transparent 34%,color-mix(in srgb,var(--header-info-tone) 5%,transparent) 48%,transparent 62%);
  transform:translateX(-48%);
  animation:klineHeaderInfoSweep 7s ease-in-out infinite;
}
.kline-header-info-host.tone-green .kline-header-info-card{--header-info-tone:#28df83}
.kline-header-info-host.tone-gold .kline-header-info-card{--header-info-tone:#f2d24a}
.kline-header-info-host.tone-blue .kline-header-info-card{--header-info-tone:#2da9ff}
.kline-header-info-host.tone-orange .kline-header-info-card{--header-info-tone:#ff9b3d}
.kline-header-info-host.tone-violet .kline-header-info-card{--header-info-tone:#ef58d8}
.kline-header-info-icon{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border:1px solid color-mix(in srgb,var(--header-info-tone) 30%,transparent);
  border-radius:11px;
  background:color-mix(in srgb,var(--header-info-tone) 5%,transparent);
  color:var(--header-info-tone);
  box-shadow:0 0 8px color-mix(in srgb,var(--header-info-tone) 12%,transparent),inset 0 0 7px color-mix(in srgb,var(--header-info-tone) 4%,transparent);
  filter:drop-shadow(0 0 3px color-mix(in srgb,var(--header-info-tone) 26%,transparent));
}
.kline-header-info-icon svg{width:16px;height:16px;stroke-width:1.8}
.kline-header-info-copy{display:grid;gap:1px;min-width:0;line-height:1.08}
.kline-header-info-copy strong,.kline-header-info-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kline-header-info-copy strong{color:var(--text-2);font-size:10px;font-weight:600;letter-spacing:.01em}
.kline-header-info-copy small{color:var(--muted);font-size:8.5px;font-weight:500;letter-spacing:.005em}
@keyframes klineHeaderInfoBreath{0%,100%{filter:brightness(.99)}50%{filter:brightness(1.025)}}
@keyframes klineHeaderInfoSweep{0%,58%{transform:translateX(-58%);opacity:.08}74%{opacity:.28}100%{transform:translateX(58%);opacity:.06}}

/* Nastavení časového informačního panelu */
.header-info-settings-panel{position:relative;overflow:hidden}
.header-info-settings-panel::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:2px;
  background:linear-gradient(90deg,#28df83,#f2d24a,#2da9ff,#ff9b3d,#ef58d8);
  opacity:.72;
}
.header-info-master-switch{margin:5px 0 14px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--accent) 4%,var(--panel-alt))}
.header-info-settings-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:12px}
.header-info-setting-card{
  --header-info-tone:#29d987;
  display:grid;
  gap:9px;
  min-width:0;
  padding:11px;
  border:1px solid color-mix(in srgb,var(--header-info-tone) 36%,var(--border));
  border-radius:13px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--header-info-tone) 5%,var(--panel-alt)),var(--panel-alt));
  box-shadow:0 8px 18px rgba(0,0,0,.12),inset 0 1px 0 color-mix(in srgb,var(--header-info-tone) 8%,transparent);
}
.header-info-setting-card.tone-green{--header-info-tone:#28df83}.header-info-setting-card.tone-gold{--header-info-tone:#f2d24a}.header-info-setting-card.tone-blue{--header-info-tone:#2da9ff}.header-info-setting-card.tone-orange{--header-info-tone:#ff9b3d}.header-info-setting-card.tone-violet{--header-info-tone:#ef58d8}
.header-info-setting-time{display:flex;align-items:center;gap:7px;min-width:0;color:var(--header-info-tone)}
.header-info-setting-time span{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--header-info-tone);box-shadow:0 0 10px var(--header-info-tone)}
.header-info-setting-time strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;letter-spacing:.02em}
.header-info-setting-card .field{gap:5px}.header-info-setting-card .field>span{font-size:8px;color:var(--muted)}
.header-info-setting-card select{min-height:37px;padding:7px 9px;font-size:8.7px;border-color:color-mix(in srgb,var(--header-info-tone) 18%,var(--border))}
.header-info-setting-card select:focus{border-color:color-mix(in srgb,var(--header-info-tone) 68%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--header-info-tone) 10%,transparent)}
.header-info-setting-card select:disabled{opacity:.48;cursor:not-allowed}
@media(max-width:1500px){.header-info-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1050px){.header-info-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kline-header-info-host{display:none!important}}
@media(max-width:650px){.header-info-settings-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.kline-header-info-card,.kline-header-info-card::after{animation:none!important}}

/* ========================================================================== */
/* K-Line · plánovaná údržba platformy                                       */
/* ========================================================================== */
.maintenance-nav-dot{width:8px;height:8px;margin-left:auto;border-radius:50%;background:#e6a047;box-shadow:0 0 0 3px rgba(230,160,71,.09),0 0 11px rgba(230,160,71,.26)}
.maintenance-nav-dot.is-active{background:#ef626d;box-shadow:0 0 0 3px rgba(239,98,109,.10),0 0 12px rgba(239,98,109,.32);animation:kline-maintenance-dot 1.8s ease-in-out infinite}
@keyframes kline-maintenance-dot{0%,100%{opacity:.68;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}

.maintenance-topbar-notice{position:absolute;right:0;top:calc(100% + 9px);z-index:2200;width:min(380px,calc(100vw - 28px));display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;padding:10px 12px;border:1px solid rgba(226,80,91,.43);border-radius:12px;background:color-mix(in srgb,var(--panel) 94%,#55131a 6%);box-shadow:0 13px 34px rgba(0,0,0,.24),0 0 17px rgba(226,80,91,.08);backdrop-filter:blur(18px);pointer-events:none}
.maintenance-topbar-notice[hidden]{display:none!important}
.maintenance-topbar-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;border:1px solid rgba(235,91,101,.42);background:rgba(217,63,74,.09);color:#df7580;font-size:13px;font-weight:700;box-shadow:inset 0 0 13px rgba(220,70,82,.05)}
.maintenance-topbar-notice>span:last-child{min-width:0;display:grid;gap:2px}
.maintenance-topbar-notice strong{color:color-mix(in srgb,var(--text) 68%,#ef737d 32%);font-size:10px;font-weight:650;letter-spacing:.055em;line-height:1.3}
.maintenance-topbar-notice small{color:var(--text-soft,var(--muted));font-size:9.5px;font-weight:500;line-height:1.35}
.maintenance-topbar-notice em{color:var(--muted);font-size:8.8px;font-style:normal;line-height:1.35}
.maintenance-topbar-notice.is-active{border-color:rgba(239,74,88,.57);box-shadow:0 13px 34px rgba(0,0,0,.27),0 0 19px rgba(239,74,88,.11)}

.maintenance-lock-overlay{position:fixed;inset:0;z-index:65000;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 36%,rgba(27,55,82,.31),transparent 44%),rgba(3,10,18,.93);backdrop-filter:blur(18px) saturate(.86)}
.maintenance-lock-overlay[hidden]{display:none!important}
.maintenance-lock-card{position:relative;isolation:isolate;width:min(620px,calc(100vw - 34px));overflow:hidden;padding:34px 34px 30px;border:1px solid rgba(211,76,88,.30);border-radius:24px;background:linear-gradient(155deg,rgba(18,31,47,.96),rgba(8,17,29,.97));box-shadow:0 36px 110px rgba(0,0,0,.58),0 0 60px rgba(208,65,77,.06);text-align:center}
.maintenance-lock-orbit{position:absolute;z-index:-1;width:330px;height:330px;left:50%;top:-215px;transform:translateX(-50%);border:1px solid rgba(231,86,97,.16);border-radius:50%;box-shadow:0 0 70px rgba(220,68,81,.08);animation:maintenance-orbit 9s linear infinite}
.maintenance-lock-orbit:after{content:"";position:absolute;width:8px;height:8px;left:28px;top:230px;border-radius:50%;background:rgba(230,94,105,.64);box-shadow:0 0 17px rgba(230,94,105,.43)}
@keyframes maintenance-orbit{to{transform:translateX(-50%) rotate(360deg)}}
.maintenance-lock-icon{width:56px;height:56px;margin:0 auto 16px;display:grid;place-items:center;border:1px solid rgba(227,90,101,.28);border-radius:18px;background:rgba(194,55,67,.07);color:#d57c84;box-shadow:inset 0 0 25px rgba(219,72,84,.04),0 0 24px rgba(219,72,84,.05)}
.maintenance-lock-icon svg{width:25px;height:25px}
.maintenance-lock-card .eyebrow{margin:0 0 7px;color:#b66f77;letter-spacing:.12em}
.maintenance-lock-card h2{margin:0;color:color-mix(in srgb,var(--text) 84%,#d67d85 16%);font-size:25px;font-weight:680;letter-spacing:-.02em}
.maintenance-lock-copy{max-width:500px;margin:13px auto 0;color:var(--muted);font-size:13px;line-height:1.65}
.maintenance-lock-time{margin:22px auto 0;padding:13px 18px;border:1px solid rgba(230,90,101,.20);border-radius:14px;background:rgba(255,255,255,.025);display:grid;gap:3px;width:max-content;max-width:100%}
.maintenance-lock-time small{color:var(--muted);font-size:9px;letter-spacing:.06em;text-transform:uppercase}
.maintenance-lock-time strong{color:#d9a0a5;font-size:15px;font-weight:620}
.maintenance-lock-note{margin:17px 0 0;color:color-mix(in srgb,var(--muted) 88%,transparent);font-size:10px}
html.kline-maintenance-locked body{overflow:hidden!important}

.maintenance-admin-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:14px;margin-bottom:16px;padding:18px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 94%,#6b1820 6%),var(--panel));box-shadow:0 16px 42px rgba(0,0,0,.11)}
.maintenance-admin-status{display:flex;gap:13px;align-items:center;min-width:0}
.maintenance-admin-status>span{width:12px;height:12px;flex:0 0 12px;border-radius:50%;background:#78899f;box-shadow:0 0 0 5px rgba(120,137,159,.07)}
.maintenance-admin-hero.scheduled .maintenance-admin-status>span{background:#c79d52;box-shadow:0 0 0 5px rgba(199,157,82,.07),0 0 15px rgba(199,157,82,.13)}
.maintenance-admin-hero.warning .maintenance-admin-status>span{background:#d77b57;box-shadow:0 0 0 5px rgba(215,123,87,.08),0 0 15px rgba(215,123,87,.14)}
.maintenance-admin-hero.active .maintenance-admin-status>span{background:#df5966;box-shadow:0 0 0 5px rgba(223,89,102,.09),0 0 18px rgba(223,89,102,.18);animation:kline-maintenance-dot 1.8s ease-in-out infinite}
.maintenance-admin-status div{min-width:0;display:grid;gap:2px}.maintenance-admin-status small{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.maintenance-admin-status strong{font-size:16px;font-weight:660;color:var(--text)}.maintenance-admin-status p{margin:0;color:var(--text-soft,var(--muted));font-size:11px;line-height:1.4}
.maintenance-admin-security{display:flex;align-items:center;gap:11px;padding:12px 13px;border:1px solid rgba(113,161,212,.14);border-radius:14px;background:rgba(58,100,145,.045);color:#7797bb}.maintenance-admin-security>svg{width:20px;height:20px;flex:0 0 20px}.maintenance-admin-security span{display:grid;gap:2px}.maintenance-admin-security strong{color:var(--text-soft,var(--text));font-size:10.5px;font-weight:620}.maintenance-admin-security small{color:var(--muted);font-size:9.4px;line-height:1.45}

.maintenance-admin-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(310px,.8fr);gap:16px}.maintenance-admin-card{padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--panel);box-shadow:0 14px 38px rgba(0,0,0,.09)}
.maintenance-admin-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.maintenance-admin-card-head .eyebrow,.maintenance-admin-rules>.eyebrow{margin:0 0 4px}.maintenance-admin-card h3{margin:0;color:var(--text);font-size:16px;font-weight:650}.maintenance-admin-clock{padding:5px 8px;border:1px solid var(--border);border-radius:9px;color:var(--muted);font-size:8.5px;white-space:nowrap;background:var(--panel-alt)}
.maintenance-admin-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.maintenance-admin-fields label{display:grid;gap:6px}.maintenance-admin-fields label>span{color:var(--muted);font-size:9.5px}.maintenance-admin-fields input{width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:11px;background:var(--input,var(--panel-alt));color:var(--text);font:inherit;font-size:11px;outline:none}.maintenance-admin-fields input:focus{border-color:rgba(91,151,214,.44);box-shadow:0 0 0 3px rgba(91,151,214,.06)}
.maintenance-admin-explain{display:flex;align-items:center;gap:11px;margin-top:14px;padding:11px 12px;border:1px solid rgba(208,76,88,.15);border-radius:12px;background:rgba(208,76,88,.025)}.maintenance-admin-explain>span{display:grid;place-items:center;width:42px;height:30px;border-radius:9px;background:rgba(208,76,88,.06);color:#bf737a;font-size:10px;font-weight:650}.maintenance-admin-explain p{margin:0;display:grid;gap:2px}.maintenance-admin-explain strong{color:var(--text-soft,var(--text));font-size:10px;font-weight:600}.maintenance-admin-explain small{color:var(--muted);font-size:9px;line-height:1.4}
.maintenance-admin-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}
.maintenance-admin-rules{display:grid;align-content:start}.maintenance-admin-rules h3{margin-bottom:13px}.maintenance-rule{display:grid;grid-template-columns:27px minmax(0,1fr);gap:9px;align-items:start;padding:10px 0;border-top:1px solid var(--border)}.maintenance-rule:first-of-type{border-top:0}.maintenance-rule i{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:rgba(77,130,182,.06);border:1px solid rgba(102,153,204,.12);color:#7595b7;font-size:9px;font-style:normal}.maintenance-rule span{display:grid;gap:2px}.maintenance-rule strong{color:var(--text-soft,var(--text));font-size:10px;font-weight:610}.maintenance-rule small{color:var(--muted);font-size:9px;line-height:1.45}
.maintenance-admin-loading{display:grid;place-items:center;min-height:260px}.maintenance-admin-loading span{width:32px;height:32px;border:2px solid rgba(109,154,198,.12);border-top-color:#6b93bb;border-radius:50%;animation:maintenance-spin .8s linear infinite}@keyframes maintenance-spin{to{transform:rotate(360deg)}}

.maintenance-confirm-overlay{position:fixed;inset:0;z-index:66000;display:grid;place-items:center;padding:22px;background:rgba(2,8,15,.76);backdrop-filter:blur(14px)}
.maintenance-confirm-card{position:relative;isolation:isolate;overflow:hidden;width:min(500px,calc(100vw - 34px));padding:27px;border:1px solid rgba(219,77,89,.26);border-radius:20px;background:linear-gradient(150deg,rgba(20,32,48,.98),rgba(8,17,29,.98));box-shadow:0 30px 90px rgba(0,0,0,.52);text-align:center}.maintenance-confirm-glow{position:absolute;z-index:-1;left:50%;top:-100px;width:250px;height:180px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(218,71,83,.09),transparent 68%)}.maintenance-confirm-icon{width:44px;height:44px;margin:0 auto 12px;display:grid;place-items:center;border:1px solid rgba(218,81,92,.24);border-radius:14px;color:#c67c83;background:rgba(208,65,77,.05)}.maintenance-confirm-icon svg{width:20px;height:20px}.maintenance-confirm-card .eyebrow{margin:0 0 6px;color:#a76e74}.maintenance-confirm-card h3{margin:0;color:var(--text);font-size:18px;font-weight:650}.maintenance-confirm-card>p:not(.eyebrow){margin:10px auto 0;max-width:420px;color:var(--muted);font-size:11px;line-height:1.55}.maintenance-confirm-actions{display:flex;justify-content:center;gap:9px;margin-top:19px}.maintenance-confirm-actions .button{min-width:135px}

@media(max-width:1000px){.maintenance-admin-hero,.maintenance-admin-grid{grid-template-columns:1fr}.maintenance-admin-fields{grid-template-columns:1fr}}
@media(max-width:720px){.maintenance-topbar-notice{position:fixed;right:10px;top:calc(var(--topbar-height) + 8px);width:calc(100vw - 20px)}.maintenance-lock-card{padding:27px 20px 24px}.maintenance-lock-card h2{font-size:21px}.maintenance-admin-card{padding:14px}.maintenance-confirm-actions{flex-direction:column}.maintenance-confirm-actions .button{width:100%}}

/* K-Line · Zobrazení pracovních přehledů · Obdélníky / řádky */
.record-display-settings-panel{position:relative;overflow:hidden}
.record-display-settings-panel>.setting-title{align-items:flex-start;gap:18px}
.record-layout-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.record-layout-choice{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:13px;min-height:82px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--panel-alt);color:var(--text);text-align:left;cursor:pointer;transition:border-color 160ms ease,background 160ms ease,box-shadow 160ms ease,transform 160ms ease}
.record-layout-choice:hover{border-color:var(--border-strong);transform:translateY(-1px)}
.record-layout-choice.selected{border-color:color-mix(in srgb,var(--accent) 60%,var(--border));background:color-mix(in srgb,var(--accent-soft) 38%,var(--panel-alt));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 15%,transparent),0 10px 26px rgba(0,0,0,.10)}
.record-layout-choice>span:last-child{display:grid;gap:4px;min-width:0}
.record-layout-choice strong{font-size:11px;font-weight:760}
.record-layout-choice small{color:var(--muted);font-size:9px;line-height:1.45}
.record-layout-choice-icon{display:grid;width:52px;height:46px;padding:7px;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--panel) 74%,transparent)}
.record-layout-choice-icon.cards{grid-template-columns:1fr 1fr;gap:4px}
.record-layout-choice-icon.cards i{border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));border-radius:4px;background:color-mix(in srgb,var(--accent-soft) 50%,var(--panel))}
.record-layout-choice-icon.rows{grid-template-rows:repeat(3,1fr);gap:4px}
.record-layout-choice-icon.rows i{border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));border-radius:4px;background:color-mix(in srgb,var(--accent-soft) 50%,var(--panel))}

.record-card-size-setting,.record-preview-slider{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1.4fr) 82px;align-items:center;gap:14px;padding:13px 14px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--panel-alt) 86%,transparent)}
.record-card-size-setting>div,.record-preview-slider>div{display:grid;gap:3px}
.record-card-size-setting strong,.record-preview-slider strong{font-size:10px;font-weight:760}
.record-card-size-setting small,.record-preview-slider small{color:var(--muted);font-size:8.8px;line-height:1.45}
.record-card-size-setting input[type="range"],.record-preview-slider input[type="range"]{width:100%;accent-color:var(--accent)}
.record-card-size-setting output,.record-preview-slider output{min-width:52px;color:var(--accent-2);font-size:10px;font-weight:760;text-align:right}
.record-card-size-setting.is-disabled,.record-preview-slider.is-disabled{opacity:.52}

/* Obdélníky: 100 % je přesně původní K-Line rozložení. Posuvník pouze ubírá vnitřní velikost. */
html[data-record-layout="cards"] .content-grid.record-card-grid{grid-template-columns:repeat(var(--record-card-columns,3),minmax(0,1fr));gap:var(--record-card-gap,13px)}
html[data-record-layout="cards"] .profile-grid.record-card-grid{grid-template-columns:repeat(var(--record-card-columns,3),minmax(0,1fr));gap:var(--record-profile-gap,11px)}
html[data-record-layout="cards"] .record-card-grid>:is([data-load-card],[data-vehicle-card],[data-transport-card],[data-auction-card],[data-profile-card]){padding:var(--record-card-padding,16px)}
html[data-record-layout="cards"] .record-card-grid .vehicle-visual{height:var(--record-card-visual-height,120px)}
html[data-record-layout="cards"][data-record-card-size="compact"] .record-card-grid .detail-list{gap:7px}
html[data-record-layout="cards"][data-record-card-size="compact"] .record-card-grid .detail-list span{padding:7px 8px}
html[data-record-layout="cards"][data-record-card-size="compact"] .record-card-grid .mini-route{padding:8px 9px}
html[data-record-layout="cards"][data-record-card-size="compact"] .record-card-grid .card-actions{gap:6px}
html[data-record-layout="cards"][data-record-card-size="dense"] .record-card-grid .detail-list{gap:5px}
html[data-record-layout="cards"][data-record-card-size="dense"] .record-card-grid .detail-list span{padding:5px 6px}
html[data-record-layout="cards"][data-record-card-size="dense"] .record-card-grid .mini-route{padding:6px 7px}
html[data-record-layout="cards"][data-record-card-size="dense"] .record-card-grid .card-actions{gap:5px}
html[data-record-layout="cards"][data-record-card-size="dense"] .record-card-grid .card-actions .button{min-height:31px;padding:7px 9px}

/* Řádky: kompaktní přehled jako na hlavním dashboardu, přes celou dostupnou šířku. */
html[data-record-layout="rows"] .record-card-grid{grid-template-columns:1fr!important;gap:8px!important;width:100%}
html[data-record-layout="rows"] .record-card-grid>:is([data-load-card],[data-vehicle-card],[data-transport-card],[data-auction-card],[data-profile-card]){
  position:relative;display:grid;width:100%;min-width:0;min-height:64px;box-sizing:border-box;
  padding:7px 11px;gap:6px 14px;align-items:center;border-radius:11px;transform:none;
  box-shadow:0 7px 18px rgba(1,11,24,.16),inset 0 1px 0 rgba(255,255,255,.025);
  transition:border-color 170ms ease,box-shadow 170ms ease,background 170ms ease
}
html[data-record-layout="rows"] .record-card-grid>:is([data-load-card],[data-transport-card],[data-auction-card]){
  grid-template-columns:minmax(190px,1fr) minmax(300px,1.55fr) minmax(235px,1.12fr) minmax(175px,.82fr)
}
html[data-record-layout="rows"] .record-card-grid>[data-vehicle-card]{
  grid-template-columns:minmax(195px,.95fr) minmax(260px,1.25fr) minmax(260px,1.12fr) minmax(175px,.78fr)
}
html[data-record-layout="rows"] .record-card-grid>[data-profile-card]{
  grid-template-columns:minmax(260px,1.1fr) minmax(300px,1.35fr) minmax(250px,1fr) minmax(155px,.68fr)
}
html[data-record-layout="rows"] .record-card-grid>:is([data-load-card],[data-vehicle-card],[data-transport-card],[data-auction-card],[data-profile-card]):hover{
  transform:none;border-color:rgba(232,191,87,.72);
  background:linear-gradient(90deg,color-mix(in srgb,var(--panel) 95%,#b98420 5%),var(--panel));
  box-shadow:0 0 0 1px rgba(235,194,91,.18),0 0 20px rgba(218,166,54,.10),0 10px 25px rgba(1,11,24,.25),inset 0 1px 0 rgba(255,244,206,.06)
}

/* Náklad */
html[data-record-layout="rows"] .record-card-grid>[data-load-card]>.card-top{grid-column:1;grid-row:1;margin:0}
html[data-record-layout="rows"] .record-card-grid>[data-load-card]>.mini-route{grid-column:2;grid-row:1;margin:0}
html[data-record-layout="rows"] .record-card-grid>[data-load-card]>.detail-list{grid-column:3;grid-row:1;margin:0}
html[data-record-layout="rows"] .record-card-grid>[data-load-card]>.card-actions{grid-column:4;grid-row:1;align-self:center;justify-content:flex-end}
html[data-record-layout="rows"] .record-card-grid>[data-load-card]>.load-customer-identity,
html[data-record-layout="rows"] .record-card-grid>[data-load-card]>.facility-visual,
html[data-record-layout="rows"] .record-card-grid>[data-load-card]>.location-distance-chip{display:none}

/* Vozidlo */
html[data-record-layout="rows"] .record-card-grid>[data-vehicle-card]>.vehicle-visual,
html[data-record-layout="rows"] .record-card-grid>[data-vehicle-card]>.location-distance-chip,
html[data-record-layout="rows"] .record-card-grid>[data-vehicle-card]>.welcome-copy{display:none}
html[data-record-layout="rows"] .record-card-grid>[data-vehicle-card]>.card-top{grid-column:1;grid-row:1;margin:0}
html[data-record-layout="rows"] .record-card-grid>[data-vehicle-card]>.vehicle-country-location{grid-column:2;grid-row:1;margin:0}
html[data-record-layout="rows"] .record-card-grid>[data-vehicle-card]>.vehicle-tags{grid-column:3;grid-row:1;margin:0}
html[data-record-layout="rows"] .record-card-grid>[data-vehicle-card]>.card-actions{grid-column:4;grid-row:1;align-self:center;justify-content:flex-end}

/* Přeprava / aukce */
html[data-record-layout="rows"] .record-card-grid>[data-transport-card]>.card-top,
html[data-record-layout="rows"] .record-card-grid>[data-auction-card]>.card-top{grid-column:1;grid-row:1;margin:0}
html[data-record-layout="rows"] .record-card-grid>[data-transport-card]>.detail-list,
html[data-record-layout="rows"] .record-card-grid>[data-auction-card]>.detail-list{grid-column:2/4;grid-row:1;margin:0}
html[data-record-layout="rows"] .record-card-grid>[data-transport-card]>.card-actions,
html[data-record-layout="rows"] .record-card-grid>[data-auction-card]>.card-actions{grid-column:4;grid-row:1;justify-content:flex-end}

/* Profily */
html[data-record-layout="rows"] .record-card-grid>[data-profile-card]>.profile-card-head{grid-column:1;grid-row:1;margin:0}
html[data-record-layout="rows"] .record-card-grid>[data-profile-card]>.profile-description{
  grid-column:2;grid-row:1;min-height:0;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden
}
html[data-record-layout="rows"] .record-card-grid>[data-profile-card]>.profile-stats{grid-column:3;grid-row:1;margin:0}
html[data-record-layout="rows"] .record-card-grid>[data-profile-card]>.card-actions{grid-column:4;grid-row:1;justify-content:flex-end}

/* Vnitřek řádku: bez dalších velkých boxů, podobně jako přehled na dashboardu. */
html[data-record-layout="rows"] .record-card-grid .card-top{min-width:0;align-items:center}
html[data-record-layout="rows"] .record-card-grid .card-top h3{font-size:10.4px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-record-layout="rows"] .record-card-grid .card-top .eyebrow{margin-bottom:2px;font-size:7.4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-record-layout="rows"] .record-card-grid .card-price{font-size:11px;line-height:1.15;white-space:nowrap}
html[data-record-layout="rows"] .record-card-grid .status-pill{padding:3px 6px;font-size:7.5px;white-space:nowrap}
html[data-record-layout="rows"] .record-card-grid .mini-route{
  min-width:0;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important
}
html[data-record-layout="rows"] .record-card-grid .route-stop-country{min-width:0}
html[data-record-layout="rows"] .record-card-grid .route-stop-country strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-record-layout="rows"] .record-card-grid .route-stop-country .route-stop-city{font-size:8.7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-record-layout="rows"] .record-card-grid .route-stop-country .route-stop-time{font-size:7.7px;white-space:nowrap}
html[data-record-layout="rows"] .record-card-grid .route-arrow{font-size:12px}
html[data-record-layout="rows"] .record-card-grid .detail-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0}
html[data-record-layout="rows"] .record-card-grid .detail-list span{
  min-width:0;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important
}
html[data-record-layout="rows"] .record-card-grid .detail-list small{font-size:7px}
html[data-record-layout="rows"] .record-card-grid .detail-list strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-record-layout="rows"] .record-card-grid .vehicle-country-location{min-width:0}
html[data-record-layout="rows"] .record-card-grid .vehicle-country-location .route-stop-country{grid-template-columns:auto 1fr}
html[data-record-layout="rows"] .record-card-grid .vehicle-tags{display:flex;flex-wrap:wrap;gap:5px;min-width:0}
html[data-record-layout="rows"] .record-card-grid .vehicle-tags span{padding:2px 5px;font-size:7.5px}
html[data-record-layout="rows"] .record-card-grid .profile-card-head{min-width:0}
html[data-record-layout="rows"] .record-card-grid .profile-card-head .profile-avatar{width:34px;height:34px}
html[data-record-layout="rows"] .record-card-grid .profile-card-title{min-width:0}
html[data-record-layout="rows"] .record-card-grid .profile-card-title strong{font-size:9.7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-record-layout="rows"] .record-card-grid .profile-card-title small{font-size:7.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-record-layout="rows"] .record-card-grid .profile-description{font-size:8px;line-height:1.35}
html[data-record-layout="rows"] .record-card-grid .profile-stats{gap:8px}
html[data-record-layout="rows"] .record-card-grid .profile-stats span{padding:0;border:0;background:transparent}
html[data-record-layout="rows"] .record-card-grid .profile-stats small{font-size:6.9px}
html[data-record-layout="rows"] .record-card-grid .profile-stats strong{font-size:8.9px}
html[data-record-layout="rows"] .record-card-grid .card-actions{display:flex;flex-wrap:wrap;gap:5px;margin:0}
html[data-record-layout="rows"] .record-card-grid .card-actions .button{min-height:28px;padding:6px 8px;font-size:8px;line-height:1.05}
html[data-record-layout="rows"] .record-card-grid .top-orb{
  display:inline-flex;width:auto;height:auto;min-width:0;margin-left:4px;padding:1px 4px;border-radius:4px;
  font-size:7px;line-height:1.25;box-shadow:0 0 8px rgba(255,205,55,.34),inset 0 1px 0 rgba(255,255,255,.72)
}

/* TOP / placené zvýraznění v řádku zůstává viditelné, ovládací prvky jsou jen kompaktnější. */
html[data-record-layout="rows"] .record-card-grid>.marketplace-highlighted{
  border-left-width:3px;box-shadow:0 0 0 1px rgba(156,224,255,.20),0 0 17px rgba(65,181,255,.10),0 7px 20px rgba(5,29,53,.17),inset 0 1px 0 rgba(245,252,255,.07)
}
html[data-record-layout="rows"] .record-card-grid .marketplace-promotion-actions{
  grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:0;padding:4px 0 0;border-top:1px solid color-mix(in srgb,var(--border) 68%,transparent)
}
html[data-record-layout="rows"] .record-card-grid .promotion-toggle-switch{min-height:28px;padding:3px 7px}
html[data-record-layout="rows"] .record-card-grid .promotion-toggle-switch .promotion-switch-copy small{display:none}
html[data-record-layout="rows"] .record-card-grid .promotion-wallet-button{font-size:7.8px}

/* Rozšířené signály se v řádcích neskrývají, ale zmenší se na jednu kompaktní doplňkovou linku. */
html[data-record-layout="rows"] .record-card-grid :is(.loading-intel-strip,.offer-risk-approved,.transport-follow-up){
  grid-column:1/-1;min-height:0;margin:0;padding:5px 8px;gap:7px;border-radius:8px
}
html[data-record-layout="rows"] .record-card-grid :is(.loading-intel-strip,.offer-risk-approved,.transport-follow-up) p,
html[data-record-layout="rows"] .record-card-grid .offer-risk-approved small{display:none}
html[data-record-layout="rows"] .record-card-grid :is(.loading-intel-strip,.offer-risk-approved,.transport-follow-up) strong{font-size:8.4px}
html[data-record-layout="rows"] .record-card-grid :is(.loading-intel-strip,.offer-risk-approved,.transport-follow-up) small{font-size:7px}

/* Skutečný živý náhled při tažení posuvníku v Nastavení. */
.record-scale-live-preview-overlay{
  position:fixed;z-index:62000;pointer-events:none;display:grid;gap:7px;padding:9px 11px;
  border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:11px;
  background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:0 14px 34px rgba(0,0,0,.26),0 0 18px color-mix(in srgb,var(--accent) 8%,transparent);
  backdrop-filter:blur(10px)
}
.record-scale-live-preview-copy{display:grid;gap:2px}
.record-scale-live-preview-copy strong{color:var(--text-2);font-size:8.8px;font-weight:720}
.record-scale-live-preview-copy small{color:var(--muted);font-size:7.6px}
.record-scale-live-preview-control{display:grid;grid-template-columns:1fr 50px;gap:9px;align-items:center}
.record-scale-live-preview-control input{width:100%;accent-color:var(--accent)}
.record-scale-live-preview-control output{color:var(--accent-2);font-size:9px;font-weight:760;text-align:right}
html.record-scale-live-preview-active body{cursor:ew-resize!important}

/* Původní ukázkový dialog zůstává kompatibilní, ale už není hlavním způsobem náhledu. */
.record-display-preview-dialog{display:grid;gap:14px;min-width:min(980px,82vw)}
.record-preview-layout-switch{display:flex;gap:8px;justify-content:flex-start}
.record-preview-layout-switch button{min-width:118px;padding:9px 13px;border:1px solid var(--border);border-radius:10px;background:var(--panel-alt);color:var(--text-2);font:inherit;cursor:pointer}
.record-preview-layout-switch button.selected{border-color:color-mix(in srgb,var(--accent) 58%,var(--border));background:var(--accent-soft);color:var(--text)}
.record-display-preview-stage{display:grid;gap:var(--record-preview-gap,13px);padding:14px;border:1px solid var(--border);border-radius:15px;background:color-mix(in srgb,var(--panel-alt) 76%,transparent);overflow:auto}
.record-display-preview-stage[data-layout="cards"]{grid-template-columns:repeat(var(--record-preview-columns,3),minmax(0,1fr))}
.record-display-preview-stage[data-layout="cards"]>.record-preview-card{padding:var(--record-preview-padding,16px)}
.record-display-preview-stage[data-layout="cards"] .record-preview-vehicle{height:var(--record-preview-visual-height,120px)}
.record-display-preview-stage .record-preview-card{pointer-events:none;min-width:0}
.record-display-preview-stage .record-preview-card button{pointer-events:none}
.record-display-preview-stage[data-layout="rows"]{grid-template-columns:1fr;gap:8px}
.record-display-preview-stage[data-layout="rows"]>.record-preview-card{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(300px,1.45fr) minmax(220px,1fr) minmax(150px,.7fr);align-items:center;gap:7px 12px;padding:7px 11px;min-width:840px;border-radius:11px}
.record-preview-note{margin:0;color:var(--muted);font-size:8.8px;line-height:1.45}

@media(max-width:1280px){
  html[data-record-layout="cards"] .profile-grid.record-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1180px){
  html[data-record-layout="cards"] .content-grid.record-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  html[data-record-layout="rows"] .record-card-grid>:is([data-load-card],[data-transport-card],[data-auction-card]){grid-template-columns:minmax(170px,.85fr) minmax(250px,1.3fr) minmax(205px,1fr)}
  html[data-record-layout="rows"] .record-card-grid>[data-load-card]>.card-actions,
  html[data-record-layout="rows"] .record-card-grid>[data-transport-card]>.card-actions,
  html[data-record-layout="rows"] .record-card-grid>[data-auction-card]>.card-actions{grid-column:1/-1;grid-row:auto;justify-content:flex-end}
  html[data-record-layout="rows"] .record-card-grid>[data-load-card]>.detail-list{grid-column:3}
  html[data-record-layout="rows"] .record-card-grid>[data-vehicle-card]{grid-template-columns:minmax(180px,.9fr) minmax(230px,1.1fr) minmax(220px,1fr)}
  html[data-record-layout="rows"] .record-card-grid>[data-vehicle-card]>.card-actions{grid-column:1/-1;grid-row:auto;justify-content:flex-end}
  html[data-record-layout="rows"] .record-card-grid>[data-profile-card]{grid-template-columns:minmax(230px,1fr) minmax(260px,1.1fr) minmax(210px,.9fr)}
  html[data-record-layout="rows"] .record-card-grid>[data-profile-card]>.card-actions{grid-column:1/-1;grid-row:auto;justify-content:flex-end}
}
@media(max-width:920px){
  html[data-record-layout="cards"] .content-grid.record-card-grid{grid-template-columns:1fr}
  html[data-record-layout="rows"] .record-card-grid>:is([data-load-card],[data-vehicle-card],[data-transport-card],[data-auction-card],[data-profile-card]){display:block;padding:10px 11px}
  html[data-record-layout="rows"] .record-card-grid .card-top,
  html[data-record-layout="rows"] .record-card-grid .mini-route,
  html[data-record-layout="rows"] .record-card-grid .detail-list,
  html[data-record-layout="rows"] .record-card-grid .vehicle-country-location,
  html[data-record-layout="rows"] .record-card-grid .vehicle-tags,
  html[data-record-layout="rows"] .record-card-grid .profile-card-head,
  html[data-record-layout="rows"] .record-card-grid .profile-description,
  html[data-record-layout="rows"] .record-card-grid .profile-stats,
  html[data-record-layout="rows"] .record-card-grid .card-actions{margin-top:7px}
}
@media(max-width:820px){
  .record-layout-choice-grid{grid-template-columns:1fr}
  .record-card-size-setting,.record-preview-slider{grid-template-columns:1fr 54px}
  .record-card-size-setting>div,.record-preview-slider>div{grid-column:1/-1}
  .record-display-preview-dialog{min-width:0}
}
@media(max-width:760px){
  html[data-record-layout="cards"] .profile-grid.record-card-grid{grid-template-columns:1fr}
}



/* K-Line · vstupní info · Obdélníky / řádky */
.kline-record-display-tip-layer{
  position:fixed;inset:0;z-index:64500;display:grid;place-items:center;padding:22px;
  background:rgba(2,8,17,.76);backdrop-filter:blur(14px);animation:klineRecordDisplayTipLayerIn .28s ease both
}
.kline-record-display-tip-layer.is-leaving{animation:klineRecordDisplayTipLayerOut .24s ease both}
.kline-record-display-tip-card{
  position:relative;isolation:isolate;overflow:hidden;width:min(900px,calc(100vw - 36px));padding:22px;
  border:1px solid rgba(110,154,201,.23);border-radius:22px;
  background:linear-gradient(152deg,rgba(15,30,50,.985),rgba(6,16,29,.99));
  box-shadow:0 34px 100px rgba(0,0,0,.50),inset 0 1px 0 rgba(255,255,255,.035);
  animation:klineRecordDisplayTipCardIn .42s cubic-bezier(.2,.78,.2,1) both
}
.kline-record-display-tip-glow{position:absolute;z-index:-1;border-radius:50%;filter:blur(2px);pointer-events:none}
.kline-record-display-tip-glow.glow-a{width:360px;height:260px;left:-150px;top:-120px;background:radial-gradient(circle,rgba(68,157,235,.10),transparent 68%)}
.kline-record-display-tip-glow.glow-b{width:360px;height:250px;right:-150px;bottom:-130px;background:radial-gradient(circle,rgba(221,173,68,.075),transparent 70%)}
.kline-record-display-tip-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:start}
.kline-record-display-tip-mark{
  width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(104,166,219,.26);border-radius:14px;
  background:rgba(47,113,170,.08);color:#8db9dc;font-size:23px;box-shadow:0 0 22px rgba(72,157,223,.08)
}
.kline-record-display-tip-head .eyebrow{margin:1px 0 5px;color:#7fa4c2}
.kline-record-display-tip-head h2{margin:0;color:var(--text);font-size:20px;font-weight:680;letter-spacing:-.015em}
.kline-record-display-tip-head p:not(.eyebrow){margin:7px 0 0;max-width:650px;color:var(--muted);font-size:10px;line-height:1.55}
.kline-record-display-tip-once{
  align-self:start;padding:6px 8px;border:1px solid rgba(207,165,73,.22);border-radius:999px;
  background:rgba(181,130,34,.055);color:#bea56f;font-size:7px;font-weight:760;letter-spacing:.11em
}
.kline-record-display-demo{
  margin-top:18px;padding:14px;border:1px solid rgba(109,153,197,.18);border-radius:17px;
  background:linear-gradient(180deg,rgba(6,19,34,.70),rgba(4,13,24,.82));box-shadow:inset 0 1px 0 rgba(255,255,255,.025)
}
.kline-record-display-demo-tabs{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;width:250px;height:32px;margin:0 auto 12px;padding:3px;border:1px solid rgba(105,146,187,.17);border-radius:10px;background:rgba(6,18,31,.78);overflow:hidden}
.kline-record-display-demo-tabs span{position:relative;z-index:2;text-align:center;color:#6f859a;font-size:7.5px;font-weight:780;letter-spacing:.08em;animation:klineRecordDisplayTabText 7s ease-in-out infinite}
.kline-record-display-demo-tabs .rows{animation-delay:-3.5s}
.kline-record-display-demo-tabs i{position:absolute;z-index:1;left:3px;top:3px;width:calc(50% - 3px);height:24px;border:1px solid rgba(90,161,218,.22);border-radius:7px;background:rgba(50,116,169,.12);box-shadow:0 0 14px rgba(60,148,216,.07);animation:klineRecordDisplayTabMove 7s ease-in-out infinite}
.kline-record-display-demo-stage{position:relative;min-height:210px;overflow:hidden}
.kline-record-display-demo-cards,.kline-record-display-demo-rows{position:absolute;inset:0;display:grid;gap:9px;align-content:center}
.kline-record-display-demo-cards{grid-template-columns:repeat(3,minmax(0,1fr));animation:klineRecordDisplayCardsScene 7s ease-in-out infinite}
.kline-record-display-demo-cards article{
  display:grid;gap:7px;min-height:118px;padding:13px;border:1px solid rgba(89,132,175,.23);border-radius:13px;
  background:linear-gradient(155deg,rgba(18,38,61,.90),rgba(8,22,38,.92));box-shadow:0 10px 24px rgba(0,0,0,.18);
  transform-origin:center;animation:klineRecordDisplayCardScale 3.5s ease-in-out infinite
}
.kline-record-display-demo-cards article:nth-child(2){animation-delay:-.18s}
.kline-record-display-demo-cards article:nth-child(3){animation-delay:-.34s}
.kline-record-display-demo-cards article.top{border-color:rgba(218,180,83,.43);box-shadow:0 0 18px rgba(211,165,62,.07),0 10px 24px rgba(0,0,0,.18)}
.kline-record-display-demo-cards small{color:#7891aa;font-size:7.2px;letter-spacing:.05em}
.kline-record-display-demo-cards strong{color:#cbd6e0;font-size:10px;font-weight:650}
.kline-record-display-demo-cards span{align-self:end;color:#bba36e;font-size:8px}
.kline-record-display-demo-rows{grid-template-columns:1fr;opacity:0;transform:translateY(8px);animation:klineRecordDisplayRowsScene 7s ease-in-out infinite}
.kline-record-display-demo-rows article{
  display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(100px,.55fr) minmax(110px,.65fr) minmax(120px,.65fr);
  align-items:center;gap:12px;min-height:48px;padding:7px 12px;border:1px solid rgba(91,135,179,.20);border-radius:10px;
  background:rgba(12,29,48,.82);box-shadow:0 7px 18px rgba(0,0,0,.16)
}
.kline-record-display-demo-rows article.top{border-color:rgba(221,182,85,.48);box-shadow:0 0 16px rgba(214,166,61,.07),0 7px 18px rgba(0,0,0,.16)}
.kline-record-display-demo-rows b{color:#cbd7e2;font-size:9px;font-weight:650}
.kline-record-display-demo-rows b i{display:inline-flex;margin-left:4px;padding:1px 4px;border:1px solid rgba(238,200,100,.62);border-radius:4px;background:rgba(194,139,30,.12);color:#d9bd78;font-size:6.7px;font-style:normal}
.kline-record-display-demo-rows span{color:#8ea2b6;font-size:8px}
.kline-record-display-demo-rows em{color:#c6ae78;font-size:8px;font-style:normal}
.kline-record-display-demo-slider{display:grid;grid-template-columns:44px minmax(180px,1fr) 88px;align-items:center;gap:10px;max-width:520px;margin:13px auto 0;color:#71889f;font-size:7px;font-weight:740;letter-spacing:.06em}
.kline-record-display-demo-slider>i{position:relative;height:5px;border-radius:999px;background:#182b3f;box-shadow:inset 0 0 0 1px rgba(117,155,190,.12)}
.kline-record-display-demo-slider>i>b{position:absolute;top:50%;left:100%;width:15px;height:15px;transform:translate(-50%,-50%);border:1px solid rgba(107,172,224,.48);border-radius:50%;background:#1b4163;box-shadow:0 0 12px rgba(72,153,216,.17);animation:klineRecordDisplaySlider 3.5s ease-in-out infinite}
.kline-record-display-tip-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}
.kline-record-display-tip-points>span{display:grid;grid-template-columns:29px 1fr;gap:8px;align-items:center;padding:9px 10px;border:1px solid rgba(102,143,184,.15);border-radius:11px;background:rgba(9,23,39,.48)}
.kline-record-display-tip-points b{width:27px;height:27px;display:grid;place-items:center;border:1px solid rgba(98,157,207,.18);border-radius:8px;color:#7ca9cd;font-size:7px}
.kline-record-display-tip-points small{color:#8ea0b1;font-size:7.7px;line-height:1.42}
.kline-record-display-tip-card footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding-top:13px;border-top:1px solid rgba(102,141,180,.13)}
.kline-record-display-tip-card footer>div{display:grid;gap:3px}
.kline-record-display-tip-card footer strong{color:#aab9c7;font-size:8.6px;font-weight:720}
.kline-record-display-tip-card footer small{color:#73889c;font-size:7.8px}
.kline-record-display-tip-card footer .button{min-width:126px}
@keyframes klineRecordDisplayTipLayerIn{from{opacity:0}to{opacity:1}}
@keyframes klineRecordDisplayTipLayerOut{to{opacity:0}}
@keyframes klineRecordDisplayTipCardIn{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@keyframes klineRecordDisplayTabMove{0%,42%{transform:translateX(0)}55%,92%{transform:translateX(100%)}100%{transform:translateX(0)}}
@keyframes klineRecordDisplayTabText{0%,42%{color:#a9c6dd}55%,92%{color:#6f859a}100%{color:#a9c6dd}}
@keyframes klineRecordDisplayCardsScene{0%,43%{opacity:1;transform:none}51%,93%{opacity:0;transform:translateY(-7px)}100%{opacity:1;transform:none}}
@keyframes klineRecordDisplayRowsScene{0%,43%{opacity:0;transform:translateY(8px)}53%,92%{opacity:1;transform:none}100%{opacity:0;transform:translateY(8px)}}
@keyframes klineRecordDisplayCardScale{0%,15%,100%{transform:scale(1)}50%,72%{transform:scale(.84)}}
@keyframes klineRecordDisplaySlider{0%,15%,100%{left:100%}50%,72%{left:18%}}
@media(max-width:760px){
  .kline-record-display-tip-card{padding:16px}
  .kline-record-display-tip-head{grid-template-columns:40px 1fr}.kline-record-display-tip-mark{width:39px;height:39px}
  .kline-record-display-tip-once{grid-column:1/-1;justify-self:start}
  .kline-record-display-tip-points{grid-template-columns:1fr}
  .kline-record-display-demo-cards{grid-template-columns:1fr 1fr}.kline-record-display-demo-cards article:nth-child(3){display:none}
  .kline-record-display-demo-rows article{grid-template-columns:1fr 70px}.kline-record-display-demo-rows article span:nth-of-type(2),.kline-record-display-demo-rows article em{display:none}
  .kline-record-display-tip-card footer{align-items:stretch;flex-direction:column}.kline-record-display-tip-card footer .button{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .kline-record-display-tip-layer,.kline-record-display-tip-card,.kline-record-display-demo-tabs i,.kline-record-display-demo-tabs span,.kline-record-display-demo-cards,.kline-record-display-demo-rows,.kline-record-display-demo-cards article,.kline-record-display-demo-slider>i>b{animation:none!important}
  .kline-record-display-demo-rows{display:none}.kline-record-display-demo-cards{position:relative;opacity:1}
}


/* K-Line · menší obdélníkové karty · 3 až 6 vedle sebe */
html[data-record-layout="cards"][data-record-card-columns="4"] .record-card-grid .card-price{font-size:calc(17px * var(--main-text-scale))}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .card-price,
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .card-price{font-size:calc(14px * var(--main-text-scale))}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid :is(.card-top h3,.profile-card-title strong),
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid :is(.card-top h3,.profile-card-title strong){font-size:calc(10.5px * var(--main-text-scale))}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid :is(.route-stop-country strong,.route-stop-country .route-stop-city),
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid :is(.route-stop-country strong,.route-stop-country .route-stop-city){font-size:9.4px}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .route-stop-country .route-stop-time,
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .route-stop-country .route-stop-time{font-size:7.8px}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .detail-list,
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .detail-list{gap:4px;margin:8px 0}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .detail-list span,
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .detail-list span{padding:4px 5px}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .detail-list small,
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .detail-list small{font-size:7.1px}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .detail-list strong,
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .detail-list strong{font-size:8.4px}
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .card-actions{gap:4px}
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .card-actions .button{min-height:27px;padding:5px 6px;font-size:7.5px}
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .vehicle-tags{gap:4px}
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .vehicle-tags span{padding:3px 5px;font-size:7.2px}

/* Zvýraznění nabídky: jemné matné stříbro místo modré neonové záře. */
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted{
  border-color:color-mix(in srgb,#aeb6bf 44%,var(--border));
  background:linear-gradient(158deg,color-mix(in srgb,var(--panel) 93%,#8b939b 7%) 0%,color-mix(in srgb,var(--panel) 96%,#69727b 4%) 52%,var(--panel) 100%);
  box-shadow:0 0 0 1px rgba(192,199,206,.075),0 11px 27px rgba(4,13,24,.19),inset 0 1px 0 rgba(233,236,239,.045);
  animation:none;filter:none;will-change:auto
}
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted::before{
  background:radial-gradient(circle at 15% 12%,rgba(220,224,228,.075),transparent 38%);
  background-size:100% 100%;background-position:center;opacity:.58;animation:none
}
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted::after{
  box-shadow:inset 0 0 0 1px rgba(205,211,217,.055),0 0 16px rgba(172,180,188,.025)
}
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted .card-top h3,
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted .route-stop-country strong{
  color:color-mix(in srgb,var(--text) 95%,#d3d7db 5%);text-shadow:none
}
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted .mini-route{
  background:linear-gradient(180deg,color-mix(in srgb,var(--panel-alt) 94%,#8b939b 6%),color-mix(in srgb,var(--panel-alt) 97%,#717981 3%));
  border-color:color-mix(in srgb,#aeb6bf 30%,var(--border));
  box-shadow:inset 0 1px 0 rgba(228,232,236,.035)
}
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted .detail-list span{
  background:color-mix(in srgb,var(--panel-alt) 96%,#858d95 4%);
  border-color:color-mix(in srgb,#aab2ba 20%,var(--border));box-shadow:none
}
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted .route-stop-country>.flag-code{
  box-shadow:0 0 0 1px rgba(195,201,207,.10)
}
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted .route-stop-country .route-stop-city,
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted .route-stop-country .route-stop-time{
  color:color-mix(in srgb,var(--text-2) 86%,#aab1b8 14%);text-shadow:none
}
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted .route-arrow{
  color:#aeb5bc;text-shadow:none
}
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted .marketplace-promotion-actions{
  border-top-color:color-mix(in srgb,#aeb6bf 24%,transparent)
}
html[data-record-layout="rows"] .record-card-grid>.marketplace-highlighted{
  border-left-width:2px;
  box-shadow:0 0 0 1px rgba(185,192,199,.07),0 7px 18px rgba(1,11,24,.15),inset 0 1px 0 rgba(225,229,233,.035)
}

/* K-Line · obdélníkové karty · při zmenšování jemně zmenšit i výšku */
html[data-record-layout="cards"][data-record-card-columns="4"] .record-card-grid .card-top{margin-bottom:12px}
html[data-record-layout="cards"][data-record-card-columns="4"] .record-card-grid .detail-list{margin:10px 0}
html[data-record-layout="cards"][data-record-card-columns="4"] .record-card-grid .vehicle-tags{margin:8px 0 10px}
html[data-record-layout="cards"][data-record-card-columns="4"] .record-card-grid .profile-description{min-height:31px;line-height:1.48}
html[data-record-layout="cards"][data-record-card-columns="4"] .record-card-grid .profile-stats span{padding:6px}

html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .card-top{margin-bottom:10px}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .detail-list{margin:7px 0}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .vehicle-tags{margin:6px 0 8px}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .profile-description{min-height:28px;line-height:1.42}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .profile-stats span{padding:5px}
html[data-record-layout="cards"][data-record-card-columns="5"] .record-card-grid .card-actions .button{min-height:30px;padding-top:6px;padding-bottom:6px}

html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .card-top{margin-bottom:8px}
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .detail-list{margin:5px 0}
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .vehicle-tags{margin:5px 0 6px}
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .profile-description{min-height:25px;line-height:1.36}
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .profile-stats{gap:4px}
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .profile-stats span{padding:4px}
html[data-record-layout="cards"][data-record-card-columns="6"] .record-card-grid .card-actions .button{min-height:26px;padding-top:5px;padding-bottom:5px}

/* K-Line · Zvýraznění nabídky · výraznější matný stříbrný stín + jemný občasný lesk */
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted{
  box-shadow:
    0 0 0 1px rgba(190,198,206,.13),
    0 0 20px rgba(166,176,186,.15),
    0 0 42px rgba(126,138,150,.085),
    0 13px 30px rgba(4,13,24,.21),
    inset 0 1px 0 rgba(233,236,239,.05);
  animation:klineMarketplaceSilverGlow 9s ease-in-out infinite;
  will-change:box-shadow
}
html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted::before{
  background:
    radial-gradient(circle at 15% 12%,rgba(220,224,228,.075),transparent 38%),
    linear-gradient(112deg,transparent 0%,transparent 42%,rgba(232,235,238,.00) 45%,rgba(232,235,238,.095) 50%,rgba(232,235,238,.00) 55%,transparent 58%,transparent 100%);
  background-size:100% 100%,220% 100%;
  background-position:center,-165% 50%;
  opacity:.62;
  animation:klineMarketplaceSilverSheen 8s ease-in-out infinite
}
html[data-record-layout="rows"] .record-card-grid>.marketplace-highlighted{
  box-shadow:
    0 0 0 1px rgba(187,195,203,.12),
    0 0 17px rgba(157,168,179,.12),
    0 7px 20px rgba(1,11,24,.16),
    inset 0 1px 0 rgba(225,229,233,.04)
}
@keyframes klineMarketplaceSilverGlow{
  0%,38%,100%{
    box-shadow:0 0 0 1px rgba(190,198,206,.13),0 0 20px rgba(166,176,186,.15),0 0 42px rgba(126,138,150,.085),0 13px 30px rgba(4,13,24,.21),inset 0 1px 0 rgba(233,236,239,.05)
  }
  48%,58%{
    box-shadow:0 0 0 1px rgba(201,208,215,.16),0 0 24px rgba(177,186,195,.19),0 0 48px rgba(139,150,161,.105),0 13px 30px rgba(4,13,24,.21),inset 0 1px 0 rgba(240,242,244,.06)
  }
}
@keyframes klineMarketplaceSilverSheen{
  0%,60%{background-position:center,-165% 50%;opacity:.56}
  72%{opacity:.66}
  86%{background-position:center,165% 50%;opacity:.66}
  87%,100%{background-position:center,165% 50%;opacity:.56}
}
@media(prefers-reduced-motion:reduce){
  html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted,
  html[data-record-layout] :is(.offer-card,.vehicle-card).marketplace-highlighted::before{animation:none!important}
}
