/* ProjectCare 2.0 — vizuál podle design canvasu (Main.dc.html)
   Načítá se ZA bootstrap.projectcare.min.css. Bootstrap drží grid a utility,
   tady jsou komponenty návrhu 1:1 (barvy, rádiusy, velikosti). */

:root {
  --pc-ink: #0A2540;
  --pc-blue: #1476BE;
  --pc-blue-dark: #0E5A8A;
  --pc-blue-soft: #EEF6FC;
  --pc-blue-line: #CFE3F3;
  --pc-teal: #12B3A8;
  --pc-teal-dark: #0B7C74;
  --pc-teal-soft: #E4F6F4;
  --pc-mint: #5FD8CF;
  --pc-amber-soft: #FDF3E1;
  --pc-amber: #96650B;
  --pc-line: #E2E9F0;
  --pc-line-2: #D3E3F0;
  --pc-bg: #F6F9FC;
  --pc-text-2: #41556B;
  --pc-muted: #5B6B7B;
  --pc-faint: #8798A8;
  --pc-ghost: #A8B8C8;
  --pc-navy-2: #12314F;
  --pc-navy-3: #1B4267;
  --pc-f-text: #B9CBDC;
  --pc-f-muted: #8FA8C0;
  --pc-f-bottom: #7E97B0;
  --pc-head: 'Outfit', 'Segoe UI', sans-serif;
  --pc-body: 'Source Sans 3', 'Segoe UI', sans-serif;
}

body {
  font-family: var(--pc-body);
  color: var(--pc-ink);
  background: #fff;
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, .pc-head { font-family: var(--pc-head); letter-spacing: -.015em; color: var(--pc-ink); }
a { color: var(--pc-blue); text-decoration: none; }
a:hover { color: var(--pc-blue-dark); }

.pc-wrap { max-width: 1200px; margin: 0 auto; padding: 0 40px; }
@media (max-width: 767.98px) { .pc-wrap { padding: 0 20px; } }

.pc-eyebrow {
  font-size: 13px; font-weight: 600; letter-spacing: .14em;
  text-transform: uppercase; color: var(--pc-teal);
}
.pc-more { font-size: 15px; font-weight: 600; color: var(--pc-blue); white-space: nowrap; }

.pc-sec-head { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; justify-content: space-between; }
.pc-sec-head .pc-titles { display: flex; flex-direction: column; gap: 8px; }
.pc-h2 { font-size: 36px; font-weight: 700; margin: 0; }
.pc-h2-sm { font-size: 28px; font-weight: 600; margin: 0; }
@media (max-width: 767.98px) { .pc-h2 { font-size: 28px; } .pc-h2-sm { font-size: 23px; } }

/* ---------- tlačítka ---------- */
.pc-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  background: var(--pc-blue); color: #fff; border: 0;
  font-weight: 600; font-size: 16px; line-height: 1.2;
  padding: 14px 26px; border-radius: 10px; transition: background .15s;
}
.pc-btn:hover { background: var(--pc-blue-dark); color: #fff; }
.pc-btn-sm { font-size: 15px; padding: 11px 18px; }
.pc-btn-nav { font-size: 15px; padding: 11px 20px; }
.pc-btn-teal { background: var(--pc-teal); }
.pc-btn-teal:hover { background: var(--pc-teal-dark); color: #fff; }
.pc-btn-ghost-dark { background: transparent; border: 1.5px solid #2C4864; padding: 14px 25px; }
.pc-btn-ghost-dark:hover { background: var(--pc-navy-2); }

/* ---------- hlavička ---------- */
.pc-header { background: #fff; border-bottom: 1px solid var(--pc-line); position: sticky; top: 0; z-index: 1030; }
.pc-header .pc-wrap { height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.pc-brand { display: flex; align-items: center; gap: 11px; font-family: var(--pc-head); font-size: 21px; font-weight: 700; color: var(--pc-ink); }
.pc-brand:hover { color: var(--pc-ink); }
.pc-brand b { font-weight: 700; color: var(--pc-teal); }
.pc-nav { display: flex; align-items: center; gap: 30px; }
.pc-nav a { font-size: 15px; font-weight: 600; color: var(--pc-ink); }
.pc-nav a:hover, .pc-nav a.active { color: var(--pc-blue); }
.pc-actions { display: flex; align-items: center; gap: 14px; }
.pc-actions .pc-link { font-size: 15px; font-weight: 600; color: var(--pc-ink); }
.pc-burger { display: none; background: none; border: 0; padding: 6px; color: var(--pc-ink); }
@media (max-width: 991.98px) {
  .pc-nav, .pc-actions { display: none; }
  .pc-burger { display: inline-flex; }
}
.pc-avatar {
  display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
  width: 38px; height: 38px; border-radius: 50%;
  background: var(--pc-blue-soft); color: var(--pc-blue); font-weight: 700; font-family: var(--pc-head);
}
.pc-user-btn { display: flex; align-items: center; gap: 10px; background: none; border: 0; padding: 4px; color: var(--pc-ink); font-weight: 600; font-size: 15px; }
.pc-drawer .nav-link { color: var(--pc-ink); font-weight: 600; font-size: 17px; padding: 12px 0; border-bottom: 1px solid var(--pc-line); }

/* ---------- hero ---------- */
.pc-hero { background: var(--pc-blue-soft); padding: 72px 0 88px; }
.pc-hero-grid { display: flex; gap: 56px; align-items: center; }
.pc-hero-copy { flex: 1 1 auto; max-width: 620px; display: flex; flex-direction: column; gap: 22px; }
.pc-hero h1 { font-size: 54px; line-height: 1.06; font-weight: 700; margin: 0; }
.pc-hero-lead { font-size: 19px; line-height: 1.6; color: var(--pc-text-2); margin: 0; }
.pc-stats { display: flex; gap: 28px; margin-top: 6px; }
.pc-stat-val { font-family: var(--pc-head); font-size: 28px; font-weight: 700; color: var(--pc-blue); line-height: 1.2; white-space: nowrap; }
.pc-stat-lbl { font-size: 14px; color: var(--pc-muted); }
.pc-stat-sep { width: 1px; background: var(--pc-line-2); }
@media (max-width: 991.98px) {
  .pc-hero { padding: 48px 0 56px; }
  .pc-hero-grid { flex-direction: column; align-items: stretch; gap: 36px; }
  .pc-hero h1 { font-size: 38px; }
  .pc-hero-lead { font-size: 17px; }
  .pc-stats { gap: 18px; }
  .pc-stat-val { font-size: 23px; }
}

/* vyhledávací karta */
.pc-search {
  width: 440px; flex-shrink: 0; background: #fff; border-radius: 20px; padding: 28px;
  box-shadow: 0 12px 40px rgba(10, 37, 64, .10); display: flex; flex-direction: column; gap: 16px;
}
@media (max-width: 991.98px) { .pc-search { width: 100%; padding: 22px; } }
.pc-search h3 { font-size: 20px; font-weight: 600; margin: 0; }
.pc-field { display: flex; flex-direction: column; gap: 6px; flex: 1 1 0; min-width: 0; }
.pc-label { font-size: 13px; font-weight: 600; color: var(--pc-muted); margin: 0; }
.pc-input-wrap { position: relative; }
.pc-input-wrap svg { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: var(--pc-faint); pointer-events: none; }
.pc-input, .pc-select {
  width: 100%; border: 1px solid var(--pc-line); border-radius: 10px;
  padding: 13px 14px; font-size: 15px; color: var(--pc-ink); background-color: #fff;
  font-family: var(--pc-body);
}
.pc-input::placeholder { color: var(--pc-faint); }
.pc-input-wrap .pc-input { padding-left: 42px; }
.pc-select {
  appearance: none; -webkit-appearance: none; padding-right: 38px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238798A8' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 14px center;
}
.pc-input:focus, .pc-select:focus { outline: none; border-color: var(--pc-blue); box-shadow: 0 0 0 3px rgba(20, 118, 190, .15); }
.pc-search .pc-btn { width: 100%; padding: 15px; }
.pc-chips { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.pc-chips-lbl { font-size: 13px; color: var(--pc-muted); }
.pc-chip {
  background: var(--pc-bg); border: 1px solid var(--pc-line); color: var(--pc-ink);
  font-size: 13px; font-weight: 600; padding: 5px 11px; border-radius: 999px;
}
.pc-chip:hover { border-color: var(--pc-blue); color: var(--pc-blue); }

/* ---------- karty obecně ---------- */
.pc-card { background: #fff; border: 1px solid var(--pc-line); border-radius: 16px; height: 100%; }
a.pc-card { color: inherit; transition: border-color .15s, box-shadow .15s, transform .15s; }
a.pc-card:hover { border-color: var(--pc-blue-line); box-shadow: 0 10px 30px rgba(10, 37, 64, .08); transform: translateY(-2px); color: inherit; }

.pc-ico {
  display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
  width: 48px; height: 48px; border-radius: 14px;
}
.pc-ico-lg { width: 52px; height: 52px; }
.pc-ico-blue { background: var(--pc-blue-soft); color: var(--pc-blue); }
.pc-ico-teal { background: var(--pc-teal-soft); color: var(--pc-teal-dark); }

/* ---------- inzerují u nás ---------- */
.pc-band { background: #fff; padding: 56px 0; border-bottom: 1px solid var(--pc-line); }
.pc-logo-tile {
  height: 96px; border: 1px solid var(--pc-line); border-radius: 14px; background: #fff;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; color: #C6D5E3;
  padding: 14px;
}
.pc-logo-tile img { max-width: 100%; max-height: 100%; object-fit: contain; }
.pc-logo-txt { font-size: 12px; font-weight: 600; letter-spacing: .1em; color: var(--pc-ghost); }
.pc-partner { padding: 22px; display: flex; align-items: center; gap: 16px; border-color: var(--pc-blue-line); }
.pc-partner-logo {
  width: 72px; height: 56px; border: 1px solid var(--pc-line); border-radius: 10px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 600; letter-spacing: .1em; color: var(--pc-ghost);
}
.pc-partner-name { font-family: var(--pc-head); font-size: 17px; font-weight: 600; }
.pc-partner-meta { font-size: 14px; color: var(--pc-muted); }
.pc-note { font-size: 13px; color: var(--pc-faint); margin: 0; }

.pc-badge { display: inline-block; font-size: 13px; font-weight: 600; padding: 6px 11px; border-radius: 999px; line-height: 1.2; white-space: nowrap; }
.pc-badge-xs { font-size: 11px; padding: 4px 8px; }
.pc-badge-teal { background: var(--pc-teal-soft); color: var(--pc-teal-dark); }
.pc-badge-amber { background: var(--pc-amber-soft); color: var(--pc-amber); }
.pc-badge-blue { background: var(--pc-blue-soft); color: var(--pc-blue-dark); }

/* ---------- obory ---------- */
.pc-cats { padding: 80px 0 0; }
.pc-cat { padding: 24px; display: flex; flex-direction: column; gap: 14px; }
.pc-cat h3 { font-size: 19px; font-weight: 600; margin: 0; }
.pc-cat-count { font-size: 14px; color: var(--pc-muted); }
.pc-sublbl { font-size: 13px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--pc-muted); }
.pc-pill {
  display: inline-block; background: var(--pc-bg); border: 1px solid var(--pc-line); color: var(--pc-ink);
  font-size: 15px; font-weight: 500; padding: 9px 16px; border-radius: 999px;
}
.pc-pill:hover { border-color: var(--pc-blue); color: var(--pc-blue); }

/* ---------- nabídky ---------- */
.pc-jobs { padding: 80px 0; margin-top: 72px; background: var(--pc-bg); }
.pc-job { padding: 26px; display: flex; flex-direction: column; gap: 16px; }
.pc-job h3 { font-size: 20px; font-weight: 600; line-height: 1.25; margin: 0; }
.pc-job-emp { font-size: 15px; font-weight: 600; color: var(--pc-text-2); }
.pc-job-meta { display: flex; flex-direction: column; gap: 8px; font-size: 15px; color: var(--pc-muted); }
.pc-job-meta div { display: flex; align-items: center; gap: 8px; }
.pc-job-meta svg { color: var(--pc-faint); flex-shrink: 0; }
.pc-divider { height: 1px; background: var(--pc-line); }
.pc-salary { font-family: var(--pc-head); font-size: 20px; font-weight: 700; color: var(--pc-ink); white-space: nowrap; }
.pc-grid-20 { --bs-gutter-x: 20px; --bs-gutter-y: 20px; }
.pc-job-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.pc-job .pc-divider { margin-top: auto; }

/* ---------- postup ---------- */
.pc-steps { padding: 88px 0; }
.pc-steps-lead { font-size: 18px; color: var(--pc-text-2); line-height: 1.6; margin: 0; }
.pc-step { display: flex; flex-direction: column; gap: 12px; }
.pc-step-n {
  width: 44px; height: 44px; border-radius: 12px; background: var(--pc-blue); color: #fff;
  font-family: var(--pc-head); font-size: 20px; font-weight: 700; display: flex; align-items: center; justify-content: center;
}
.pc-step-n.is-last { background: var(--pc-teal); }
.pc-step h3 { font-size: 19px; font-weight: 600; margin: 0; }
.pc-step p { font-size: 15px; color: var(--pc-muted); line-height: 1.55; margin: 0; }

/* ---------- pro zaměstnavatele ---------- */
.pc-cta-wrap { padding: 0 0 88px; }
.pc-cta { background: var(--pc-ink); border-radius: 24px; padding: 56px; display: flex; align-items: center; gap: 56px; }
.pc-cta-copy { flex: 1 1 auto; max-width: 620px; display: flex; flex-direction: column; gap: 18px; }
.pc-cta-eyebrow { font-size: 13px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--pc-mint); }
.pc-cta h2 { font-size: 34px; font-weight: 700; color: #fff; line-height: 1.2; margin: 0; }
.pc-cta p { font-size: 17px; color: var(--pc-f-text); line-height: 1.6; margin: 0; }
.pc-cta-stats { width: 380px; flex-shrink: 0; display: flex; flex-direction: column; gap: 14px; }
.pc-cta-stat { background: var(--pc-navy-2); border-radius: 14px; padding: 20px; display: flex; align-items: center; gap: 14px; }
.pc-cta-stat .pc-ico { width: 44px; height: 44px; border-radius: 12px; background: var(--pc-navy-3); color: var(--pc-mint); }
.pc-cta-stat-val { font-family: var(--pc-head); font-size: 19px; font-weight: 600; color: #fff; }
.pc-cta-stat-lbl { font-size: 14px; color: var(--pc-f-muted); }
@media (max-width: 991.98px) {
  .pc-cta { flex-direction: column; align-items: stretch; padding: 32px 24px; gap: 32px; border-radius: 20px; }
  .pc-cta h2 { font-size: 27px; }
  .pc-cta-stats { width: 100%; }
}

/* ---------- newsletter ---------- */
.pc-news { background: var(--pc-blue-soft); padding: 56px 0; }
.pc-news .pc-wrap { display: flex; align-items: center; justify-content: space-between; gap: 48px; }
.pc-news h3 { font-size: 26px; font-weight: 700; margin: 0 0 8px; }
.pc-news p { font-size: 16px; color: var(--pc-text-2); margin: 0; }
.pc-news form { display: flex; gap: 12px; align-items: center; }
.pc-news .pc-input { width: 320px; border-color: var(--pc-line-2); padding: 15px 16px; font-size: 16px; }
@media (max-width: 991.98px) {
  .pc-news .pc-wrap { flex-direction: column; align-items: stretch; gap: 24px; }
  .pc-news form { flex-direction: column; align-items: stretch; }
  .pc-news .pc-input { width: 100%; }
}

/* ---------- patička ---------- */
.pc-footer { background: var(--pc-ink); padding: 56px 0 32px; }
.pc-footer-top { display: flex; justify-content: space-between; gap: 56px; flex-wrap: wrap; }
.pc-footer-brand { max-width: 300px; display: flex; flex-direction: column; gap: 14px; }
.pc-footer-brand .pc-brand { color: #fff; font-size: 19px; }
.pc-footer-brand .pc-brand b { color: var(--pc-mint); }
.pc-footer-brand p { font-size: 15px; color: var(--pc-f-muted); line-height: 1.6; margin: 0; }
.pc-social { display: flex; gap: 10px; margin-top: 4px; }
.pc-social a {
  width: 38px; height: 38px; border-radius: 10px; background: var(--pc-navy-2); color: var(--pc-f-muted);
  display: flex; align-items: center; justify-content: center;
}
.pc-social a:hover { background: var(--pc-navy-3); color: #fff; }
.pc-footer-col { display: flex; flex-direction: column; gap: 12px; }
.pc-footer-col h4 { font-family: var(--pc-body); font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--pc-mint); margin: 0; }
.pc-footer-col a { font-size: 15px; color: var(--pc-f-text); }
.pc-footer-col a:hover { color: #fff; }
.pc-footer-line { height: 1px; background: var(--pc-navy-3); margin: 40px 0 24px; }
.pc-footer-bottom { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px; font-size: 14px; color: var(--pc-f-bottom); }
.pc-footer-bottom a { color: var(--pc-f-bottom); }
.pc-footer-bottom a:hover { color: #fff; }

/* ---------- jednoduché stránky (připravujeme, login…) ---------- */
.pc-page-head { background: var(--pc-blue-soft); padding: 56px 0; border-bottom: 1px solid var(--pc-line); }
.pc-page-head h1 { font-size: 42px; font-weight: 700; margin: 8px 0 0; }
.pc-page-head p { font-size: 18px; color: var(--pc-text-2); margin: 12px 0 0; max-width: 640px; }
@media (max-width: 767.98px) { .pc-page-head h1 { font-size: 32px; } }
.pc-auth { padding: 64px 0 88px; }
.pc-auth-card { max-width: 440px; margin: 0 auto; background: #fff; border-radius: 20px; padding: 32px; box-shadow: 0 12px 40px rgba(10, 37, 64, .10); border: 1px solid var(--pc-line); }
.pc-alert { border-radius: 10px; padding: 12px 14px; font-size: 15px; }
.pc-alert-danger { background: #FBE9E7; color: #A11C13; }

:focus-visible { outline: 2px solid var(--pc-blue); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { * { transition: none !important; } }

/* =====================================================================
   MOBIL — podle artboardu „Mobil" (pod 768 px je to appka, ne zmenšený desktop)
   ===================================================================== */
.pc-icon-btn { display: none; background: none; border: 0; padding: 6px; color: var(--pc-ink); }
@media (max-width: 991.98px) { .pc-icon-btn { display: inline-flex; } .pc-header .pc-wrap { gap: 8px; } .pc-header .pc-brand { margin-right: auto; } }

.pc-tag {
  display: inline-block; background: var(--pc-bg); border: 1px solid var(--pc-line); color: var(--pc-ink);
  font-size: 13px; padding: 4px 10px; border-radius: 999px;
}

/* kompaktní karta nabídky (mobil) */
.pc-job-m { padding: 18px 20px; display: flex; flex-direction: column; gap: 12px; }
.pc-job-m h3 { font-size: 16px; font-weight: 600; margin: 0; line-height: 1.3; }
.pc-job-m .pc-job-emp { font-size: 14px; }
.pc-job-m .pc-ico { width: 44px; height: 44px; border-radius: 12px; }
.pc-job-m .pc-salary { font-size: 16px; }

/* kompaktní karta oboru (mobil) */
.pc-cat-m { padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.pc-cat-m .pc-ico { width: 40px; height: 40px; border-radius: 10px; }
.pc-cat-m h3 { font-size: 16px; font-weight: 600; margin: 0; }
.pc-cat-m .pc-cat-count { font-size: 13px; }

/* výzva pro uchazeče (mobil) */
.pc-cta-m { background: var(--pc-ink); border-radius: 16px; padding: 24px 22px; display: flex; flex-direction: column; gap: 14px; }
.pc-cta-m h2 { color: #fff; font-size: 21px; font-weight: 700; margin: 0; }
.pc-cta-m p { color: var(--pc-f-text); font-size: 15px; margin: 0; }
.pc-cta-m .pc-btn { width: 100%; }

/* světlá patička (mobil) */
.pc-footer-m { background: var(--pc-bg); border-top: 1px solid var(--pc-line); padding: 24px 0; }
.pc-footer-m nav { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-bottom: 10px; }
.pc-footer-m nav a { color: var(--pc-text-2); font-size: 15px; }
.pc-footer-m small { color: var(--pc-faint); font-size: 13px; }

/* spodní lišta (mobil) */
.pc-tabbar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 1040; background: #fff;
  border-top: 1px solid var(--pc-line); display: flex; justify-content: space-around;
  padding: 8px 0 calc(8px + env(safe-area-inset-bottom));
}
.pc-tabbar a { flex: 1 1 0; display: flex; flex-direction: column; align-items: center; gap: 3px; font-size: 12px; font-weight: 500; color: var(--pc-faint); }
.pc-tabbar a.active { color: var(--pc-blue); font-weight: 700; }
@media (max-width: 767.98px) { body { padding-bottom: 68px; } }

@media (max-width: 767.98px) {
  .pc-hero { padding: 28px 0 32px; }
  .pc-hero-grid { gap: 20px; }
  .pc-hero-copy { gap: 12px; }
  .pc-hero h1 { font-size: 30px; line-height: 1.12; }
  .pc-hero-lead { font-size: 16px; }
  .pc-search { padding: 18px; gap: 12px; border-radius: 16px; box-shadow: 0 8px 24px rgba(10,37,64,.08); }
  .pc-search h3, .pc-search .pc-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .pc-cats { padding-top: 32px; }
  .pc-jobs { margin-top: 0; padding: 32px 0; background: #fff; }
  .pc-sec-head .pc-eyebrow { display: none; }
  .pc-h2, .pc-h2-sm { font-size: 21px; font-weight: 700; }
  .pc-band { padding: 32px 0; }
  .pc-cta-wrap { padding: 8px 0 32px; }
}

/* =====================================================================
   FORMULÁŘE (form theme form/pc_theme.html.twig) + HLÁŠKY
   ===================================================================== */
.pc-flashes { padding-top: 20px; }
.pc-flashes .pc-wrap { display: flex; flex-direction: column; gap: 10px; }
.pc-alert-success { background: var(--pc-teal-soft); color: var(--pc-teal-dark); }
.pc-alert-info { background: var(--pc-blue-soft); color: var(--pc-blue-dark); }
.pc-alert-warning { background: var(--pc-amber-soft); color: var(--pc-amber); }
.pc-label { font-size: 14px; color: var(--pc-text-2); }
.pc-opt { font-weight: 400; color: var(--pc-faint); }
.pc-help { font-size: 13px; color: var(--pc-muted); }
.pc-error { font-size: 14px; color: #B42318; font-weight: 500; }
.pc-input.pc-invalid, .pc-select.pc-invalid { border-color: #E5484D; }
.pc-input.pc-invalid:focus { box-shadow: 0 0 0 3px rgba(229, 72, 77, .15); }
.pc-reg .pc-input, .pc-reg .pc-select { padding: 14px 16px; font-size: 16px; }
.pc-reg .pc-select { padding-right: 40px; }

/* zaškrtávátko (souhlas, newsletter) */
.pc-check-row { display: flex; flex-direction: column; gap: 6px; }
.pc-check { display: flex; align-items: flex-start; gap: 12px; cursor: pointer; margin: 0; }
.pc-check-input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pc-check-box {
  width: 20px; height: 20px; border-radius: 6px; flex-shrink: 0; margin-top: 2px;
  border: 1.5px solid #C6D5E3; background: #fff; color: transparent;
  display: flex; align-items: center; justify-content: center; transition: background .12s, border-color .12s;
}
.pc-check-input:checked + .pc-check-box { background: var(--pc-blue); border-color: var(--pc-blue); color: #fff; }
.pc-check-input:focus-visible + .pc-check-box { outline: 2px solid var(--pc-blue); outline-offset: 2px; }
.pc-has-error .pc-check-box { border-color: #E5484D; }
.pc-check-text { font-size: 14px; color: var(--pc-muted); line-height: 1.55; }

/* čipy (obory, kraje, úvazky) — skutečné checkboxy/radia pod stylem */
.pc-sels { display: flex; flex-wrap: wrap; gap: 10px; }
.pc-sel-input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pc-sel {
  display: inline-flex; align-items: center; gap: 8px; margin: 0; cursor: pointer; user-select: none;
  background: #fff; border: 1px solid var(--pc-line); border-radius: 999px;
  padding: 10px 16px; font-size: 15px; font-weight: 500; color: var(--pc-ink); line-height: 1.2;
  transition: border-color .12s, background .12s;
}
.pc-sel:hover { border-color: var(--pc-blue-line); }
.pc-sel svg { display: none; }
.pc-sel-input:checked + .pc-sel { background: var(--pc-blue-soft); border: 1.5px solid var(--pc-blue); color: var(--pc-blue-dark); font-weight: 600; padding: 9px 15px; }
.pc-sel-input:checked + .pc-sel svg { display: block; }
.pc-sel-input:focus-visible + .pc-sel { outline: 2px solid var(--pc-blue); outline-offset: 2px; }
.pc-sel-more { color: var(--pc-blue); font-weight: 600; font-family: inherit; }
.pc-sel-extra[hidden] { display: none; }
.pc-sel-extra { margin-top: 10px; }

/* =====================================================================
   REGISTRACE — artboard „Registrace"
   ===================================================================== */
body.pc-focus { background: var(--pc-bg); padding-bottom: 0 !important; }
.pc-wrap-narrow { max-width: 1080px; }
.pc-header-slim { position: static; }
.pc-slim-note { font-size: 15px; color: var(--pc-muted); text-align: right; }
.pc-slim-note a { font-weight: 600; }
.pc-slim-footer { padding: 28px 0 32px; font-size: 14px; color: var(--pc-faint); }
.pc-slim-footer .pc-wrap { display: flex; flex-wrap: wrap; gap: 8px 20px; justify-content: space-between; }
.pc-slim-footer a { color: var(--pc-muted); }

.pc-reg { padding-top: 48px; padding-bottom: 64px; display: flex; flex-direction: column; gap: 32px; }
.pc-reg-head { display: flex; flex-direction: column; gap: 10px; align-items: center; text-align: center; }
.pc-reg-head h1 { font-size: 38px; font-weight: 700; margin: 0; }
.pc-reg-head p { font-size: 18px; color: var(--pc-text-2); max-width: 560px; margin: 0; }

.pc-stepper { display: flex; align-items: flex-start; justify-content: center; list-style: none; margin: 0; padding: 0; }
.pc-step { display: flex; flex-direction: column; align-items: center; gap: 8px; width: 190px; text-align: center; }
.pc-step a { display: contents; color: inherit; }
.pc-step-dot {
  width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
  background: #fff; border: 1.5px solid var(--pc-line); color: var(--pc-faint);
  font-family: var(--pc-head); font-weight: 700; font-size: 17px;
}
.pc-step-label { font-size: 14px; font-weight: 600; color: var(--pc-faint); }
.pc-step.is-current .pc-step-dot { background: var(--pc-blue); border-color: var(--pc-blue); color: #fff; }
.pc-step.is-done .pc-step-dot { background: var(--pc-teal); border-color: var(--pc-teal); color: #fff; }
.pc-step.is-current .pc-step-label, .pc-step.is-done .pc-step-label { color: var(--pc-ink); }
.pc-step-line { width: 80px; height: 2px; background: var(--pc-line); margin-top: 19px; flex-shrink: 0; }
.pc-step-line.is-done { background: var(--pc-teal); }

.pc-reg-grid { display: flex; gap: 24px; align-items: flex-start; }
.pc-reg-card {
  flex: 1 1 auto; min-width: 0; background: #fff; border: 1px solid var(--pc-line); border-radius: 16px;
  padding: 36px; display: flex; flex-direction: column; gap: 28px;
}
.pc-reg-card h2 { font-size: 22px; font-weight: 600; margin: 0; }
.pc-reg-sec { display: flex; flex-direction: column; gap: 16px; }
.pc-reg-sec > p { margin: -6px 0 0; color: var(--pc-muted); font-size: 15px; }
.pc-sep { height: 1px; background: var(--pc-line); }
.pc-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.pc-grid-2 .pc-field { gap: 7px; }
.pc-span-2 { grid-column: 1 / -1; }
.pc-reg-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-top: 4px; }
.pc-reg-actions .pc-right { display: flex; align-items: center; gap: 16px; margin-left: auto; }
.pc-back { display: inline-flex; align-items: center; gap: 6px; font-size: 16px; font-weight: 600; color: var(--pc-muted); }
.pc-back:hover { color: var(--pc-ink); }
.pc-skip { font-size: 15px; color: var(--pc-faint); }
.pc-skip:hover { color: var(--pc-muted); }
.pc-btn-lg { font-size: 16px; padding: 15px 30px; }
.pc-btn-outline { background: #fff; color: var(--pc-blue); border: 1.5px solid var(--pc-blue); padding: 11px 20px; font-size: 15px; }
.pc-btn-outline:hover { background: var(--pc-blue-soft); color: var(--pc-blue-dark); }
.pc-suffix { position: relative; }
.pc-suffix .pc-input { padding-right: 52px; }
.pc-suffix span { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); color: var(--pc-faint); font-size: 15px; pointer-events: none; }

/* nahrání životopisu */
.pc-drop {
  position: relative; border: 1.5px dashed #C6D5E3; border-radius: 14px; padding: 28px; background: #FAFCFE;
  display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; transition: border-color .12s, background .12s;
}
.pc-drop.is-over { border-color: var(--pc-blue); background: var(--pc-blue-soft); }
.pc-drop.has-file { border-style: solid; border-color: var(--pc-teal); background: var(--pc-teal-soft); }
.pc-drop-ico { width: 48px; height: 48px; border-radius: 14px; background: var(--pc-blue-soft); color: var(--pc-blue); display: flex; align-items: center; justify-content: center; }
.pc-drop.has-file .pc-drop-ico { background: #fff; color: var(--pc-teal-dark); }
.pc-drop-title { font-size: 16px; font-weight: 600; word-break: break-word; }
.pc-drop p { font-size: 14px; color: var(--pc-muted); max-width: 420px; margin: 0; }
.pc-drop-input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pc-drop-input:focus-visible + label { outline: 2px solid var(--pc-blue); outline-offset: 2px; }
.pc-drop label { cursor: pointer; margin: 0; }

/* boční panel */
.pc-reg-aside { width: 312px; flex-shrink: 0; display: flex; flex-direction: column; gap: 16px; }
.pc-aside-dark { background: var(--pc-ink); border-radius: 16px; padding: 26px; display: flex; flex-direction: column; gap: 18px; }
.pc-aside-dark h3 { font-size: 19px; font-weight: 600; color: #fff; margin: 0; }
.pc-aside-dark ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 18px; }
.pc-aside-dark li { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; color: var(--pc-f-text); line-height: 1.5; }
.pc-aside-dark li svg { color: var(--pc-mint); flex-shrink: 0; margin-top: 2px; }
.pc-aside-dark a { color: #fff; text-decoration: underline; }
.pc-aside-card { background: #fff; border: 1px solid var(--pc-line); border-radius: 16px; padding: 22px; display: flex; flex-direction: column; gap: 10px; }
.pc-aside-card .pc-aside-title { display: flex; align-items: center; gap: 10px; color: var(--pc-blue); }
.pc-aside-card h4 { font-size: 16px; font-weight: 600; margin: 0; }
.pc-aside-card p { font-size: 14px; color: var(--pc-muted); line-height: 1.55; margin: 0; }

/* rozcestník */
.pc-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
a.pc-choice {
  background: #fff; border: 1px solid var(--pc-line); border-radius: 18px; padding: 32px;
  display: flex; flex-direction: column; gap: 16px; color: var(--pc-ink); transition: border-color .15s, box-shadow .15s, transform .15s;
}
a.pc-choice:hover { border-color: var(--pc-blue-line); box-shadow: 0 12px 32px rgba(10, 37, 64, .08); transform: translateY(-2px); color: var(--pc-ink); }
.pc-choice-ico { width: 56px; height: 56px; border-radius: 16px; display: flex; align-items: center; justify-content: center; background: var(--pc-blue-soft); color: var(--pc-blue); }
.pc-choice-ico.teal { background: var(--pc-teal-soft); color: var(--pc-teal-dark); }
.pc-choice h2 { font-size: 26px; font-weight: 700; margin: 0; }
.pc-choice p { font-size: 16px; color: var(--pc-text-2); margin: 0; }
.pc-choice ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.pc-choice li { display: flex; gap: 10px; font-size: 15px; color: var(--pc-text-2); }
.pc-choice li svg { color: var(--pc-teal); flex-shrink: 0; margin-top: 2px; }
.pc-choice .pc-btn { margin-top: auto; align-self: flex-start; }
.pc-choice-teal .pc-btn { background: var(--pc-teal); }
a.pc-choice-teal:hover .pc-btn { background: var(--pc-teal-dark); }
a.pc-choice:hover .pc-btn:not(.pc-btn-teal) { background: var(--pc-blue-dark); }

/* hotovo */
.pc-done { align-items: center; text-align: center; }
.pc-done-ico { width: 72px; height: 72px; border-radius: 50%; background: var(--pc-teal-soft); color: var(--pc-teal-dark); display: flex; align-items: center; justify-content: center; }
.pc-done h2 { font-size: 28px; font-weight: 700; }
.pc-done > p { font-size: 17px; color: var(--pc-text-2); max-width: 520px; margin: -12px 0 0; }
.pc-summary { width: 100%; text-align: left; border: 1px solid var(--pc-line); border-radius: 14px; margin: 0; }
.pc-summary > div { display: flex; gap: 16px; padding: 14px 18px; border-top: 1px solid var(--pc-line); }
.pc-summary > div:first-child { border-top: 0; }
.pc-summary dt { width: 170px; flex-shrink: 0; font-size: 14px; font-weight: 600; color: var(--pc-muted); }
.pc-summary dd { margin: 0; font-size: 15px; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.pc-summary dd .pc-faint { color: var(--pc-faint); }
.pc-summary a { font-size: 14px; font-weight: 600; margin-left: auto; }
.pc-verify { width: 100%; display: flex; gap: 14px; align-items: flex-start; text-align: left; background: var(--pc-amber-soft); border-radius: 14px; padding: 16px 18px; }
.pc-verify svg { color: var(--pc-amber); flex-shrink: 0; margin-top: 2px; }
.pc-verify.ok { background: var(--pc-teal-soft); }
.pc-verify.ok svg { color: var(--pc-teal-dark); }
.pc-verify p { margin: 0; font-size: 15px; color: var(--pc-text-2); }
.pc-verify button { background: none; border: 0; padding: 0; color: var(--pc-blue); font-weight: 600; font-size: 15px; }
.pc-done-actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.pc-next { width: 100%; list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; text-align: left; counter-reset: n; }
.pc-next li { display: flex; gap: 14px; align-items: flex-start; border: 1px solid var(--pc-line); border-radius: 14px; padding: 16px 18px; }
.pc-next li::before {
  counter-increment: n; content: counter(n); width: 30px; height: 30px; border-radius: 50%; flex-shrink: 0;
  background: var(--pc-blue-soft); color: var(--pc-blue); font-family: var(--pc-head); font-weight: 700;
  display: flex; align-items: center; justify-content: center;
}
.pc-next b { display: block; font-size: 16px; }
.pc-next span { font-size: 14px; color: var(--pc-muted); }

@media (max-width: 991.98px) {
  .pc-reg-grid { flex-direction: column; align-items: stretch; }
  .pc-reg-aside { width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .pc-reg { padding-top: 28px; padding-bottom: 40px; gap: 24px; }
  .pc-reg-head h1 { font-size: 28px; }
  .pc-reg-head p { font-size: 16px; }
  .pc-reg-card { padding: 22px 18px; gap: 24px; border-radius: 14px; }
  .pc-reg-card h2 { font-size: 20px; }
  .pc-grid-2, .pc-choice-grid { grid-template-columns: 1fr; gap: 16px; }
  .pc-reg-aside { grid-template-columns: 1fr; }
  .pc-step { width: auto; flex: 0 0 auto; }
  .pc-step-label { display: none; }
  .pc-step.is-current .pc-step-label { display: block; position: absolute; left: 0; right: 0; margin-top: 50px; }
  .pc-stepper { position: relative; padding-bottom: 28px; }
  .pc-step-line { flex: 1 1 auto; width: auto; max-width: 64px; }
  .pc-step-dot { width: 34px; height: 34px; font-size: 15px; }
  .pc-step-line { margin-top: 16px; }
  .pc-sel { padding: 9px 14px; font-size: 14px; }
  .pc-sel-input:checked + .pc-sel { padding: 8px 13px; }
  .pc-reg-actions { flex-wrap: wrap; }
  .pc-reg-actions .pc-right { width: 100%; justify-content: space-between; }
  .pc-reg-actions .pc-right .pc-btn { flex: 1; }
  .pc-reg-actions .pc-back { order: 2; width: 100%; justify-content: center; }
  .pc-summary > div { flex-direction: column; gap: 4px; }
  .pc-summary dt { width: auto; }
  a.pc-choice { padding: 24px; }
  .pc-slim-note { font-size: 14px; }
  .pc-slim-note .d-sm-none-hide { display: none; }
}

/* =====================================================================
   INZERÁTY — výpis (artboard „Vypis" / „MobilVypis"), detail („Detail")
   ===================================================================== */
body.pc-soft { background: var(--pc-bg); }
.pc-btn-outline.pc-btn-lg { padding: 14px 26px; font-size: 16px; }

/* vyhledávací lišta */
.pc-searchbar { background: #fff; border-bottom: 1px solid var(--pc-line); padding: 20px 0; }
.pc-searchbar form { display: flex; gap: 12px; align-items: center; }
.pc-sb-field { display: flex; align-items: center; gap: 10px; border: 1px solid var(--pc-line); border-radius: 10px; padding: 0 14px; background: #fff; color: var(--pc-faint); }
.pc-sb-field:focus-within { border-color: var(--pc-blue); box-shadow: 0 0 0 3px rgba(20, 118, 190, .15); }
.pc-sb-q { flex: 1 1 auto; color: var(--pc-blue); }
.pc-sb-region { width: 260px; flex-shrink: 0; }
.pc-sb-field input, .pc-sb-field select { border: 0; outline: 0; background: transparent; font-size: 16px; padding: 13px 0; width: 100%; color: var(--pc-ink); font-family: var(--pc-body); min-width: 0; }
.pc-sb-q input { font-weight: 600; }
.pc-sb-q input::placeholder { font-weight: 400; color: var(--pc-faint); }
.pc-searchbar .pc-btn { padding: 14px 28px; }

/* mobilní lišta + štítky */
.pc-mbar { background: #fff; height: 60px; display: flex; align-items: center; gap: 14px; padding: 0 20px; border-bottom: 1px solid var(--pc-line); }
.pc-mbar-back, .pc-mbar-search { color: var(--pc-ink); background: none; border: 0; padding: 0; display: inline-flex; }
.pc-mbar-title { font-family: var(--pc-head); font-size: 16px; font-weight: 600; }
.pc-mbar-sub { font-size: 13px; color: var(--pc-muted); }
.pc-mchips { background: #fff; border-bottom: 1px solid var(--pc-line); padding: 12px 0 14px; }
.pc-mchips .pc-wrap { display: flex; gap: 8px; align-items: center; overflow-x: auto; scrollbar-width: none; }
.pc-mchips .pc-wrap::-webkit-scrollbar { display: none; }
.pc-mchip-filter { background: var(--pc-blue); color: #fff; border: 0; font-size: 14px; font-weight: 600; padding: 9px 14px; border-radius: 999px; display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.pc-mchip { background: var(--pc-bg); border: 1px solid var(--pc-line); color: var(--pc-ink); font-size: 13px; padding: 9px 14px; border-radius: 999px; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px; }
.pc-mchip.is-on { background: var(--pc-blue-soft); border-color: var(--pc-blue-line); color: var(--pc-blue-dark); font-weight: 600; }

/* rozložení výpisu */
.pc-list { padding-top: 36px; padding-bottom: 56px; display: flex; gap: 32px; align-items: flex-start; }
.pc-filters { width: 288px; flex-shrink: 0; }
.pc-filters .offcanvas-body { display: flex; flex-direction: column; gap: 16px; }
@media (min-width: 992px) { .pc-filters .offcanvas-body { padding: 0; overflow: visible; } }
.pc-results { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 16px; }

/* filtry */
.pc-fcard { padding: 24px; display: flex; flex-direction: column; gap: 24px; height: auto; }
.pc-fhead { display: flex; align-items: center; justify-content: space-between; min-height: 1px; }
.pc-fhead h3 { font-size: 18px; font-weight: 600; margin: 0; }
.pc-fhead a { font-size: 14px; font-weight: 600; margin-left: auto; }
.pc-fgroup { border: 0; margin: 0; padding: 0 0 24px; border-bottom: 1px solid var(--pc-line); display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.pc-fgroup:last-of-type { border-bottom: 0; padding-bottom: 0; }
.pc-fgroup legend { float: none; width: auto; font-size: 13px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--pc-muted); margin: 0 0 2px; padding: 0; font-family: var(--pc-body); }
.pc-fl { font-size: 14px; color: var(--pc-text-2); display: flex; align-items: center; gap: 10px; cursor: pointer; margin: 0; position: relative; }
.pc-fl .pc-check-box { margin-top: 0; }
.pc-fcount { color: var(--pc-faint); }
.pc-fmore { display: flex; flex-direction: column; gap: 12px; }
.pc-fmore[hidden] { display: none; }
.pc-flink { background: none; border: 0; padding: 0; text-align: left; font-size: 14px; font-weight: 600; color: var(--pc-blue); }
.pc-fsubmit { display: none; }
.pc-range { -webkit-appearance: none; appearance: none; width: 100%; height: 4px; border-radius: 2px; margin: 8px 0 2px; cursor: pointer;
  background: linear-gradient(to right, var(--pc-blue) 0, var(--pc-blue) var(--fill, 0%), var(--pc-line) var(--fill, 0%)); }
.pc-range::-webkit-slider-thumb { -webkit-appearance: none; width: 18px; height: 18px; border-radius: 50%; background: #fff; border: 2px solid var(--pc-blue); }
.pc-range::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: #fff; border: 2px solid var(--pc-blue); }
.pc-range:focus-visible { outline: 2px solid var(--pc-blue); outline-offset: 6px; }
.pc-range-lbl { display: flex; justify-content: space-between; font-size: 14px; color: var(--pc-muted); }
.pc-range-lbl output { font-weight: 600; color: var(--pc-ink); }

/* hlídač */
.pc-watch { background: var(--pc-teal-soft); border-radius: 16px; padding: 22px; display: flex; flex-direction: column; gap: 10px; color: var(--pc-teal-dark); }
.pc-watch h4 { font-size: 16px; font-weight: 600; color: #0A4F4A; margin: 0; }
.pc-watch p { font-size: 14px; color: #2B6E69; line-height: 1.5; margin: 0; }
.pc-watch .pc-btn { padding: 12px; font-size: 15px; }
.pc-watch-row { background: var(--pc-teal-soft); border-radius: 16px; padding: 18px; display: flex; align-items: center; gap: 14px; color: #0A4F4A; }
.pc-watch-row:hover { color: #0A4F4A; }
.pc-watch-row b { font-family: var(--pc-head); font-size: 16px; font-weight: 600; }
.pc-watch-row small { font-size: 13px; color: #2B6E69; }
.pc-watch-ico { width: 42px; height: 42px; border-radius: 12px; background: #fff; color: var(--pc-teal-dark); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.pc-switch { width: 52px; height: 30px; border-radius: 999px; background: #B7E3DF; padding: 3px; flex-shrink: 0; display: flex; }
.pc-switch span { width: 24px; height: 24px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.15); }

/* hlavička výsledků */
.pc-res-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.pc-res-head h1 { font-size: 28px; font-weight: 700; margin: 0 0 4px; }
.pc-res-count { font-size: 15px; color: var(--pc-muted); }
.pc-res-count b { color: var(--pc-ink); font-weight: 600; }
.pc-sort { display: flex; align-items: center; gap: 10px; }
.pc-sort label { font-size: 14px; color: var(--pc-muted); margin: 0; }
.pc-sort .pc-select { width: auto; font-weight: 600; padding: 11px 38px 11px 14px; }
.pc-achips { display: flex; gap: 8px; flex-wrap: wrap; }
.pc-achip { background: var(--pc-blue-soft); color: var(--pc-blue-dark); font-size: 14px; font-weight: 600; padding: 8px 14px; border-radius: 999px; display: inline-flex; align-items: center; gap: 8px; }
.pc-achip:hover { background: #DCEBF7; color: var(--pc-blue-dark); }

/* karta inzerátu */
.pc-jcard { padding: 24px; gap: 20px; height: auto; position: relative; }
.pc-jcard.is-top, .pc-jcard-m.is-top { border-left: 4px solid var(--pc-teal); }
.pc-jcard .pc-ico-lg { width: 56px; height: 56px; border-radius: 14px; flex-shrink: 0; }
.pc-jcard-body { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 12px; }
.pc-jcard-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; }
.pc-jcard-titles { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.pc-jcard-tline { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.pc-jcard h3 { font-size: 21px; font-weight: 600; margin: 0; line-height: 1.25; }
.pc-jcard h3 a, .pc-jcard-m h3 a { color: inherit; }
.pc-jcard h3 a:hover, .pc-jcard-m h3 a:hover { color: var(--pc-blue); }
.pc-jcard .pc-badge-xs { font-size: 12px; padding: 5px 10px; }
.pc-jcard-perex { font-size: 15px; color: var(--pc-muted); line-height: 1.55; margin: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.pc-jcard-foot { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.pc-jcard-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.pc-jcard .pc-tag { font-size: 14px; padding: 7px 12px; }
.pc-jcard-actions { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.pc-jcard-actions .pc-btn { padding: 13px 22px; font-size: 15px; }
.pc-jcard-m { padding: 18px; display: flex; flex-direction: column; gap: 12px; height: auto; }
.pc-jcard-m h3 { font-size: 17px; font-weight: 600; line-height: 1.3; margin: 0 0 3px; }
.pc-jcard-m .pc-job-emp { font-size: 14px; }
.pc-jcard-m .pc-ico { width: 44px; height: 44px; border-radius: 12px; flex-shrink: 0; }
.pc-jcard-m .pc-salary { font-size: 17px; }
.pc-jcard-m .pc-btn { padding: 12px 20px; font-size: 15px; }
.pc-jcard-gone { padding: 18px 22px; display: flex; align-items: center; justify-content: space-between; gap: 16px; height: auto; opacity: .75; }
.pc-jcard-gone b { display: block; }
.pc-jcard-gone span { font-size: 14px; color: var(--pc-muted); }

/* uložit (záložka) */
.pc-save-form { margin: 0; display: inline-flex; }
.pc-save { width: 44px; height: 44px; border-radius: 10px; border: 1.5px solid var(--pc-line); background: #fff; color: var(--pc-muted); display: inline-flex; align-items: center; justify-content: center; padding: 0; transition: border-color .12s, color .12s; }
.pc-save:hover { border-color: var(--pc-blue-line); color: var(--pc-blue); }
.pc-save-bare { width: 32px; height: 32px; border: 0; background: none; color: var(--pc-faint); margin: -4px -6px 0 0; }
.pc-save.is-saved { color: var(--pc-blue); border-color: var(--pc-blue-line); }
.pc-save.is-saved svg path { fill: currentColor; }

/* promo + prázdný stav + stránkování */
.pc-promo { background: var(--pc-ink); border-radius: 16px; padding: 26px 28px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.pc-promo h3 { font-size: 20px; font-weight: 600; color: #fff; margin: 0 0 4px; }
.pc-promo p { font-size: 15px; color: var(--pc-f-text); margin: 0; }
.pc-promo .pc-btn { white-space: nowrap; padding: 13px 22px; font-size: 15px; }
.pc-empty { padding: 48px 32px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 12px; height: auto; }
.pc-empty h3 { font-size: 22px; font-weight: 600; margin: 4px 0 0; }
.pc-empty p { color: var(--pc-muted); max-width: 460px; margin: 0 0 8px; }
.pc-pager { display: flex; align-items: center; justify-content: center; gap: 8px; padding-top: 12px; }
.pc-pager > * { width: 42px; height: 42px; border-radius: 10px; border: 1px solid var(--pc-line); background: #fff; font-weight: 600; color: var(--pc-ink); display: flex; align-items: center; justify-content: center; }
.pc-pager a:hover { border-color: var(--pc-blue); color: var(--pc-blue); }
.pc-pager .is-current { background: var(--pc-blue); border-color: var(--pc-blue); color: #fff; }
.pc-pager .is-gap { color: var(--pc-faint); font-weight: 400; }
.pc-pager .is-disabled { color: var(--pc-ghost); }
.pc-pager svg { color: var(--pc-faint); }
.pc-narrow-page { max-width: 960px; padding-top: 36px; padding-bottom: 64px; display: flex; flex-direction: column; gap: 20px; }

/* ---------- detail ---------- */
.pc-crumbs { padding-top: 24px; font-size: 14px; color: var(--pc-muted); display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pc-crumbs a { color: var(--pc-muted); }
.pc-crumbs a:hover { color: var(--pc-blue); }
.pc-crumbs [aria-current] { color: var(--pc-ink); font-weight: 600; }
.pc-detail { padding-top: 24px; padding-bottom: 56px; display: grid; grid-template-columns: minmax(0, 1fr) 352px; grid-template-rows: auto 1fr; column-gap: 32px; row-gap: 20px; align-items: start; }
.pc-d-head { grid-column: 1; grid-row: 1; padding: 32px; display: flex; flex-direction: column; gap: 24px; height: auto; }
.pc-d-side { grid-column: 2; grid-row: 1 / span 2; display: flex; flex-direction: column; gap: 16px; position: sticky; top: 96px; }
.pc-d-body { grid-column: 1; grid-row: 2; padding: 32px; display: flex; flex-direction: column; gap: 28px; height: auto; }
.pc-d-ico { width: 72px; height: 72px; border-radius: 18px; flex-shrink: 0; }
.pc-d-head h1 { font-size: 36px; font-weight: 700; line-height: 1.15; margin: 0; }
.pc-d-emp { font-size: 17px; font-weight: 600; }
.pc-d-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.pc-d-facts > div { background: var(--pc-bg); border-radius: 12px; padding: 16px; display: flex; flex-direction: column; gap: 4px; }
.pc-d-facts span { font-size: 13px; color: var(--pc-muted); }
.pc-d-facts b { font-family: var(--pc-head); font-size: 19px; font-weight: 600; line-height: 1.25; }
.pc-d-body section { display: flex; flex-direction: column; gap: 12px; }
.pc-d-body section + section { border-top: 1px solid var(--pc-line); padding-top: 28px; }
.pc-d-body h2 { font-size: 24px; font-weight: 600; margin: 0; }
.pc-d-body p { font-size: 16px; line-height: 1.65; color: var(--pc-text-2); margin: 0; }
.pc-dots { list-style: none; margin: 6px 0 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.pc-dots li { display: flex; gap: 12px; align-items: flex-start; font-size: 16px; line-height: 1.55; color: var(--pc-text-2); }
.pc-dots li::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: var(--pc-teal); margin-top: 9px; flex-shrink: 0; }
.pc-benefits { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.pc-benefits > div { background: var(--pc-blue-soft); border-radius: 12px; padding: 16px 18px; display: flex; align-items: center; gap: 12px; font-size: 16px; font-weight: 600; }
.pc-benefits svg { color: var(--pc-blue); flex-shrink: 0; }
.pc-d-empname { font-family: var(--pc-head); font-size: 19px; font-weight: 600; }
.pc-d-box { padding: 26px; display: flex; flex-direction: column; gap: 16px; box-shadow: 0 6px 20px rgba(10, 37, 64, .06); height: auto; }
.pc-d-price { font-family: var(--pc-head); font-size: 26px; font-weight: 700; line-height: 1.2; }
.pc-d-price-sub { font-size: 15px; color: var(--pc-muted); margin-top: 4px; }
.pc-d-box .pc-btn-lg { font-size: 17px; padding: 16px; }
.pc-btn-line { display: inline-flex; align-items: center; justify-content: center; gap: 10px; border: 1.5px solid var(--pc-line); background: #fff; color: var(--pc-ink); font-weight: 600; font-size: 16px; padding: 14px; border-radius: 10px; height: auto; width: auto; }
.pc-btn-line:hover { border-color: var(--pc-blue-line); color: var(--pc-blue); }
.pc-btn-line.pc-save.is-saved { color: var(--pc-blue); border-color: var(--pc-blue-line); background: var(--pc-blue-soft); }
.pc-btn-line-sm { border-width: 1px; font-size: 14px; padding: 11px; color: var(--pc-muted); gap: 8px; }
.pc-d-resp { display: flex; align-items: center; gap: 10px; background: var(--pc-teal-soft); border-radius: 10px; padding: 12px 14px; font-size: 14px; color: #0A4F4A; }
.pc-d-resp svg { color: var(--pc-teal-dark); flex-shrink: 0; }
.pc-d-meta { margin: 0; display: flex; flex-direction: column; gap: 10px; font-size: 15px; }
.pc-d-meta div { display: flex; justify-content: space-between; gap: 12px; }
.pc-d-meta dt { font-weight: 400; color: var(--pc-muted); }
.pc-d-meta dd { margin: 0; font-weight: 600; color: var(--pc-text-2); text-align: right; }
.pc-d-similar { padding: 24px; flex-direction: column; gap: 16px; height: auto; display: flex; }
.pc-d-similar h3 { font-size: 18px; font-weight: 600; margin: 0; }
.pc-d-similar a { display: flex; flex-direction: column; gap: 6px; color: var(--pc-ink); }
.pc-d-similar a b { font-size: 16px; font-weight: 600; line-height: 1.3; }
.pc-d-similar a:hover b { color: var(--pc-blue); }
.pc-d-similar a span { font-size: 14px; color: var(--pc-muted); }
.pc-d-similar-m { grid-column: 1; }

@media (max-width: 1199.98px) {
  .pc-d-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991.98px) {
  .pc-list { padding-top: 20px; }
  .pc-filters.offcanvas-lg { width: min(360px, 90vw); }
  .pc-filters .offcanvas-body { background: var(--pc-bg); }
  .pc-fcard { border: 0; padding: 20px; }
  .pc-fsubmit { display: inline-flex; position: sticky; bottom: 0; }
  .pc-res-head h1 { font-size: 24px; }
  .pc-detail { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; }
  .pc-d-head, .pc-d-side, .pc-d-body, .pc-d-similar-m { grid-column: 1; grid-row: auto; }
  .pc-d-side { position: static; }
}
@media (max-width: 767.98px) {
  .pc-searchbar { padding: 12px 0; }
  .pc-searchbar form { flex-wrap: wrap; gap: 8px; }
  .pc-sb-region { width: 100%; }
  .pc-searchbar .pc-btn { width: 100%; }
  .pc-list { padding-top: 16px; padding-bottom: 32px; }
  .pc-results { gap: 12px; }
  .pc-res-head { display: none; }
  .pc-promo { flex-direction: column; align-items: stretch; padding: 22px; }
  .pc-crumbs { display: none; }
  .pc-detail { padding-top: 16px; row-gap: 12px; padding-bottom: 32px; }
  .pc-d-head, .pc-d-body { padding: 20px; }
  .pc-d-head { gap: 18px; }
  .pc-d-ico { width: 52px; height: 52px; border-radius: 14px; }
  .pc-d-head h1 { font-size: 24px; }
  .pc-d-emp { font-size: 15px; }
  .pc-d-facts { gap: 8px; }
  .pc-d-facts > div { padding: 12px; }
  .pc-d-facts b { font-size: 16px; }
  .pc-d-body h2 { font-size: 20px; }
  .pc-d-body p, .pc-dots li { font-size: 15px; }
  .pc-benefits { grid-template-columns: 1fr; gap: 8px; }
  .pc-benefits > div { font-size: 15px; padding: 12px 14px; }
  .pc-d-box { padding: 20px; }
  .pc-d-price { font-size: 22px; }
}
.pc-d-body .pc-more { white-space: normal; }
.pc-sb-field { height: 50px; }
.pc-sb-field input, .pc-sb-field select { padding: 0; height: 100%; }
.pc-searchbar .pc-btn { height: 50px; padding-top: 0; padding-bottom: 0; }
.pc-seo-links { margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--pc-line); display: flex; flex-direction: column; gap: 20px; }
.pc-seo-links h2 { font-size: 16px; font-weight: 600; margin: 0 0 10px; color: var(--pc-text-2); }
.pc-seo-links .pc-pill { font-size: 14px; padding: 7px 13px; }

/* =====================================================================
   FIRMA — Moje inzeráty, Nový inzerát, Odpovědi, Tarif (artboardy MojeInzeraty, NovyInzerat, Odpovedi, OdpovedDetail)
   ===================================================================== */
.pc-firm-badge { background: var(--pc-teal-soft); color: var(--pc-teal-dark); font-size: 12px; font-weight: 600; padding: 5px 10px; border-radius: 6px; letter-spacing: .06em; }
.pc-firm-avatar { width: 38px; height: 38px; border-radius: 10px; background: var(--pc-blue-soft); color: var(--pc-blue); font-weight: 700; border: 0; display: inline-flex; align-items: center; justify-content: center; font-size: 15px; }
.pc-count { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: var(--pc-teal); color: #fff; font-size: 12px; font-weight: 700; line-height: 1; vertical-align: 2px; }
.pc-dot { position: absolute; top: -2px; right: -2px; width: 10px; height: 10px; border-radius: 50%; background: var(--pc-teal); border: 2px solid #fff; }
.pc-firm-mnav { display: none; }
@media (max-width: 991.98px) {
  .pc-firm .pc-burger { display: none !important; }
  .pc-firm-mnav { display: flex; gap: 4px; overflow-x: auto; padding: 0 16px 10px; scrollbar-width: none; }
  .pc-firm-mnav a { white-space: nowrap; font-size: 15px; font-weight: 600; color: var(--pc-muted); padding: 8px 12px; border-radius: 999px; }
  .pc-firm-mnav a.active { background: var(--pc-blue-soft); color: var(--pc-blue-dark); }
  .pc-firm .pc-tabbar { display: none !important; }
}
.pc-firm-page { padding-top: 36px; padding-bottom: 56px; display: flex; flex-direction: column; gap: 24px; }
.pc-firm-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.pc-firm-head h1 { font-size: 32px; font-weight: 700; margin: 0 0 6px; }
.pc-firm-head p { font-size: 16px; color: var(--pc-muted); margin: 0; }
.pc-head-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.pc-firm-search { background: #fff; border: 1px solid var(--pc-line); border-radius: 10px; padding: 0 14px; display: flex; align-items: center; gap: 10px; width: 280px; color: var(--pc-faint); }
.pc-firm-search input { border: 0; outline: 0; padding: 11px 0; font-size: 15px; width: 100%; background: transparent; color: var(--pc-ink); }
.pc-firm-search:focus-within { border-color: var(--pc-blue); }
.pc-firm-filters { display: flex; gap: 12px; flex-wrap: wrap; }
.pc-firm-filters .pc-select { width: 300px; padding-top: 11px; padding-bottom: 11px; }
.pc-firm-stats { padding: 22px 28px; display: flex; align-items: center; justify-content: space-between; gap: 20px; height: auto; flex-wrap: wrap; }
.pc-firm-stats > div { display: flex; flex-direction: column; gap: 2px; }
.pc-firm-stats b { font-family: var(--pc-head); font-size: 28px; font-weight: 700; line-height: 1.1; }
.pc-firm-stats b.teal { color: var(--pc-teal-dark); }
.pc-firm-stats span { font-size: 14px; color: var(--pc-muted); }
.pc-firm-stats > i { width: 1px; height: 44px; background: var(--pc-line); }
.pc-firm-stats > a { font-size: 15px; font-weight: 600; }

.pc-table { padding: 0; overflow: visible; height: auto; }
.pc-table-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 24px; border-bottom: 1px solid var(--pc-line); flex-wrap: wrap; }
.pc-tabs { display: flex; gap: 8px; flex-wrap: wrap; }
.pc-tabs a { color: var(--pc-muted); font-size: 15px; font-weight: 600; padding: 9px 16px; border-radius: 999px; }
.pc-tabs a:hover { color: var(--pc-ink); background: var(--pc-bg); }
.pc-tabs a.active { background: var(--pc-blue-soft); color: var(--pc-blue-dark); }
.pc-table .pc-sort .pc-select { padding-top: 10px; padding-bottom: 10px; }
.pc-trow { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 2fr) minmax(0, 1fr) minmax(0, 2fr) minmax(0, 2fr); gap: 16px; align-items: center; padding: 20px 24px; border-top: 1px solid var(--pc-line); color: var(--pc-ink); }
.pc-trow:first-of-type { border-top: 0; }
.pc-thead { background: var(--pc-bg); padding-top: 14px; padding-bottom: 14px; font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--pc-muted); border-top: 0; }
.pc-trow .c-pos { display: flex; gap: 14px; align-items: center; }
.pc-trow .c-pos .pc-ico { width: 44px; height: 44px; border-radius: 12px; flex-shrink: 0; }
.pc-trow-title { font-family: var(--pc-head); font-size: 17px; font-weight: 600; color: var(--pc-ink); display: block; }
.pc-trow-title:hover { color: var(--pc-blue); }
.pc-trow-title2 { font-family: var(--pc-head); font-size: 16px; font-weight: 600; }
.pc-trow-sub { font-size: 14px; color: var(--pc-muted); }
.pc-trow .c-num, .pc-trow .c-ans, .pc-trow .c-date { text-align: right; justify-content: flex-end; }
.pc-trow .c-num { font-size: 16px; font-weight: 600; }
.pc-trow .c-ans { display: flex; align-items: center; gap: 8px; }
.pc-ans-n { font-family: var(--pc-head); font-size: 19px; font-weight: 700; color: var(--pc-ink); }
.pc-new-pill { background: var(--pc-teal); color: #fff; font-size: 12px; font-weight: 600; padding: 4px 8px; border-radius: 999px; white-space: nowrap; }
.pc-trow .c-date { display: flex; align-items: center; gap: 14px; font-size: 15px; color: var(--pc-text-2); }
.pc-trow.is-draft .pc-trow-title { color: var(--pc-muted); }
.pc-trow.is-draft .pc-ico { opacity: .6; }
.pc-faint { color: var(--pc-faint); }
.pc-st { display: inline-block; font-size: 13px; font-weight: 600; padding: 6px 11px; border-radius: 999px; white-space: nowrap; }
.pc-st-teal { background: var(--pc-teal-soft); color: var(--pc-teal-dark); }
.pc-st-blue { background: var(--pc-blue-soft); color: var(--pc-blue-dark); }
.pc-st-amber { background: var(--pc-amber-soft); color: var(--pc-amber); }
.pc-st-grey { background: var(--pc-bg); color: var(--pc-muted); border: 1px solid var(--pc-line); }
.pc-badge-grey { background: var(--pc-bg); color: var(--pc-muted); border: 1px solid var(--pc-line); }
.pc-kebab { background: none; border: 0; padding: 4px; color: var(--pc-muted); border-radius: 8px; display: inline-flex; }
.pc-kebab:hover { background: var(--pc-bg); color: var(--pc-ink); }
.dropdown-menu form { margin: 0; }
.dropdown-menu button.dropdown-item { width: 100%; text-align: left; }
.pc-linkbtn { background: none; border: 0; padding: 0; color: var(--pc-blue); font-weight: 600; font-size: 15px; display: inline-flex; align-items: center; gap: 6px; }
.pc-linkbtn:hover { color: var(--pc-blue-dark); }

/* odpovědi: řádky */
.pc-arow { grid-template-columns: minmax(0, 4.5fr) minmax(0, 4.5fr) minmax(0, 1fr) minmax(0, 2fr); padding-top: 18px; padding-bottom: 18px; position: relative; }
.pc-arow.is-new { box-shadow: inset 4px 0 0 var(--pc-teal); }
.pc-arow.is-archived { opacity: .6; }
.pc-arow .c-who { display: flex; gap: 14px; align-items: center; }
.pc-arow .c-msgs { display: flex; align-items: center; justify-content: center; gap: 6px; color: var(--pc-blue); }
.pc-arow .c-msgs b { color: var(--pc-ink); font-size: 16px; }
.pc-arow .c-when { display: flex; align-items: center; justify-content: flex-end; gap: 14px; font-size: 15px; color: var(--pc-muted); text-align: right; }
.pc-arow .c-when form { margin: 0; }
.pc-avatar-sm { width: 44px; height: 44px; border-radius: 50%; background: var(--pc-blue-soft); color: var(--pc-blue); font-family: var(--pc-head); font-weight: 700; font-size: 16px; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.pc-avatar-sm.teal { background: var(--pc-teal-soft); color: var(--pc-teal-dark); }
.pc-avatar-xl { width: 88px; height: 88px; border-radius: 50%; background: var(--pc-teal-soft); color: var(--pc-teal-dark); font-family: var(--pc-head); font-weight: 700; font-size: 32px; display: flex; align-items: center; justify-content: center; }
.pc-mrow { grid-template-columns: auto minmax(0, 1fr) auto; }
.pc-mrow:hover { background: var(--pc-bg); color: var(--pc-ink); }
.pc-mrow.is-new { box-shadow: inset 4px 0 0 var(--pc-teal); }
.pc-mrow .pc-ico { width: 44px; height: 44px; border-radius: 12px; }
.pc-mrow-state { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.pc-hrow { grid-template-columns: minmax(0, 3fr) minmax(0, 3fr) minmax(0, 2fr) auto; }

/* detail odpovědi */
.pc-detail-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.pc-pagenav { display: flex; align-items: center; gap: 12px; font-size: 15px; color: var(--pc-muted); }
.pc-pagenav a, .pc-pagenav .is-disabled { width: 38px; height: 38px; border-radius: 10px; border: 1px solid var(--pc-line); background: #fff; display: inline-flex; align-items: center; justify-content: center; color: var(--pc-ink); }
.pc-pagenav .is-disabled { color: var(--pc-ghost); }
.pc-app-grid { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: 24px; align-items: start; }
.pc-app-side, .pc-app-main { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.pc-person { padding: 28px; display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; height: auto; }
.pc-person h1 { font-size: 24px; font-weight: 700; margin: 6px 0 0; }
.pc-person > a:not(.pc-btn):not(.pc-btn-line) { font-size: 15px; }
.pc-person-phone { color: var(--pc-text-2) !important; }
.pc-person .pc-btn, .pc-person .pc-btn-line { padding: 13px; }
.pc-person form { margin: 0; }
.pc-side-box { padding: 22px; display: flex; flex-direction: column; gap: 14px; height: auto; }
.pc-side-box h3 { font-size: 18px; font-weight: 600; margin: 0; }
.pc-side-eyebrow { font-size: 13px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--pc-muted); }
.text-teal { color: var(--pc-teal-dark) !important; }
.pc-pos-card { padding: 22px 26px; display: flex; align-items: center; gap: 18px; height: auto; flex-wrap: wrap; }
.pc-pos-card .pc-ico-lg { width: 52px; height: 52px; border-radius: 14px; flex-shrink: 0; }
.pc-pos-title { font-family: var(--pc-head); font-size: 20px; font-weight: 600; margin: 2px 0; }
.pc-conv { padding: 0; height: auto; }
.pc-conv-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 22px 28px; border-bottom: 1px solid var(--pc-line); }
.pc-conv-head h2, .pc-conv-head h1 { font-size: 20px; font-weight: 600; margin: 0; }
.pc-conv-head span { font-size: 14px; color: var(--pc-muted); }
.pc-thread { padding: 24px 28px; display: flex; flex-direction: column; gap: 20px; }
.pc-msg { display: flex; gap: 14px; align-items: flex-start; max-width: 85%; }
.pc-msg .pc-avatar-sm { width: 40px; height: 40px; font-size: 14px; }
.pc-msg-body { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.pc-msg-meta { display: flex; gap: 10px; align-items: baseline; font-size: 15px; flex-wrap: wrap; }
.pc-msg-meta time { font-size: 13px; color: var(--pc-faint); }
.pc-bubble { background: #fff; border: 1px solid var(--pc-line); border-radius: 4px 14px 14px 14px; padding: 14px 18px; font-size: 16px; line-height: 1.6; color: var(--pc-text-2); word-wrap: break-word; }
.pc-msg.is-own { align-self: flex-end; flex-direction: row-reverse; }
.pc-msg.is-own .pc-msg-meta { flex-direction: row-reverse; }
.pc-msg.is-own .pc-bubble { background: var(--pc-blue); border-color: var(--pc-blue); color: #fff; border-radius: 14px 4px 14px 14px; }
.pc-reply { border-top: 1px solid var(--pc-line); padding: 20px 28px 24px; display: flex; flex-direction: column; gap: 14px; margin: 0; }
.pc-reply textarea { width: 100%; border: 1px solid var(--pc-line); border-radius: 12px; padding: 14px 18px; font-size: 16px; font-family: var(--pc-body); resize: vertical; min-height: 96px; }
.pc-reply textarea:focus { outline: none; border-color: var(--pc-blue); box-shadow: 0 0 0 3px rgba(20, 118, 190, .15); }
.pc-reply-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.pc-reply-bar .pc-linkbtn { color: var(--pc-muted); }
.pc-note-amber { background: var(--pc-amber-soft); border: 1px solid #F3DDAE; border-radius: 14px; padding: 16px 20px; display: flex; gap: 12px; align-items: flex-start; font-size: 15px; color: #6B4A08; line-height: 1.55; }
.pc-note-amber svg { color: var(--pc-amber); flex-shrink: 0; margin-top: 2px; }

/* editor inzerátu */
.pc-jobform { display: flex; flex-direction: column; gap: 24px; margin: 0; }
.pc-jobform-grid { display: grid; grid-template-columns: minmax(0, 1fr) 312px; gap: 24px; align-items: start; }
.pc-jobform-main { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.pc-jobform-side { display: flex; flex-direction: column; gap: 16px; position: sticky; top: 96px; }
.pc-fsec { padding: 32px; display: flex; flex-direction: column; gap: 20px; height: auto; }
.pc-fsec h2 { font-size: 21px; font-weight: 600; margin: 0 0 4px; display: flex; align-items: center; gap: 14px; }
.pc-fsec h2 span { width: 32px; height: 32px; border-radius: 9px; background: var(--pc-blue-soft); color: var(--pc-blue); font-size: 16px; display: inline-flex; align-items: center; justify-content: center; }
.pc-fsec .pc-input, .pc-fsec .pc-select { padding: 13px 15px; font-size: 16px; }
.pc-fsec textarea.pc-input { line-height: 1.55; }
.pc-grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.pc-req { color: #D93025; }
.pc-salary-row { display: flex; align-items: center; gap: 14px; }
.pc-salary-row .pc-input { flex: 1 1 0; }
.pc-salary-row > span { color: var(--pc-faint); }
.pc-salary-row .pc-input:disabled { background: var(--pc-bg); }
.pc-tip { display: flex; align-items: center; gap: 10px; background: var(--pc-teal-soft); color: #0A4F4A; border-radius: 10px; padding: 11px 14px; font-size: 14px; margin-top: 8px; }
.pc-tip svg { color: var(--pc-teal-dark); flex-shrink: 0; }
.pc-jobform-foot { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 4px 0; }
.pc-radio-card { border: 1.5px solid var(--pc-line); border-radius: 12px; padding: 14px 16px; display: flex; gap: 12px; align-items: flex-start; }
.pc-radio-card b { display: block; font-size: 16px; }
.pc-radio-card span:not(.pc-radio) { font-size: 14px; color: var(--pc-muted); line-height: 1.4; display: block; }
.pc-radio { width: 20px; height: 20px; border-radius: 50%; border: 1.5px solid #C6D5E3; flex-shrink: 0; margin-top: 2px; background: #fff; }
.pc-radio-card.is-on { border-color: var(--pc-blue); background: var(--pc-blue-soft); }
.pc-radio-card.is-on .pc-radio { border: 6px solid var(--pc-blue); }
.pc-radio-card.is-off { opacity: .75; }
.pc-checklist { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; font-size: 15px; color: var(--pc-text-2); }
.pc-checklist li { display: flex; gap: 10px; align-items: center; }
.pc-checklist li::before { content: ''; width: 18px; height: 18px; flex-shrink: 0; border-radius: 50%; border: 1.5px solid #C6D5E3; }
.pc-checklist li.ok::before { border: 0; background: no-repeat center/18px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2312B3A8' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4 10-10'/%3E%3C/svg%3E"); }
.pc-checklist li.warn { color: var(--pc-amber); }
.pc-checklist li.warn::before { border-color: var(--pc-amber); }
.pc-preview-bar { margin-top: 20px; background: var(--pc-ink); color: #fff; border-radius: 14px; padding: 14px 20px; display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; font-size: 15px; }
.pc-preview-bar svg { color: var(--pc-mint); vertical-align: -4px; }
.pc-preview-bar form { margin: 0; }
.pc-preview-bar .pc-btn-line { background: transparent; color: #fff; border-color: #2C4864; }

/* tarify */
.pc-pricing { padding-top: 56px; padding-bottom: 72px; display: flex; flex-direction: column; gap: 32px; }
.pc-pricing-lead { color: var(--pc-text-2); font-size: 17px; max-width: 640px; margin: 0; }
.pc-plans { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; align-items: stretch; }
.pc-plan { position: relative; background: #fff; border: 1px solid var(--pc-line); border-radius: 18px; padding: 28px 24px; display: flex; flex-direction: column; gap: 16px; }
.pc-plan.is-rec { border: 2px solid var(--pc-blue); box-shadow: 0 16px 40px rgba(10, 37, 64, .10); }
.pc-plan.is-current { border: 2px solid var(--pc-teal); }
.pc-plan-flag { position: absolute; top: -13px; left: 24px; background: var(--pc-blue); color: #fff; font-size: 12px; font-weight: 600; padding: 5px 10px; border-radius: 999px; }
.pc-plan-flag.teal { background: var(--pc-teal); }
.pc-plan h3 { font-size: 22px; font-weight: 700; margin: 0; }
.pc-plan-tag { font-size: 14px; color: var(--pc-muted); margin: 4px 0 0; }
.pc-plan-price b { font-family: var(--pc-head); font-size: 26px; font-weight: 700; }
.pc-plan-price span { font-size: 14px; color: var(--pc-muted); margin-left: 6px; }
.pc-plan ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; flex-grow: 1; }
.pc-plan li { display: flex; gap: 10px; font-size: 14px; color: var(--pc-text-2); line-height: 1.45; }
.pc-plan li svg { flex-shrink: 0; margin-top: 1px; }
.pc-plan li.on svg { color: var(--pc-teal); }
.pc-plan li.off { color: var(--pc-ghost); }
.pc-plan li.off svg { color: var(--pc-ghost); }
.pc-plan form { margin: 0; }
.pc-plan .pc-btn, .pc-plan .pc-btn-line { padding: 13px; }

@media (max-width: 1199.98px) {
  .pc-plans { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pc-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991.98px) {
  .pc-jobform-grid, .pc-app-grid { grid-template-columns: minmax(0, 1fr); }
  .pc-jobform-side { position: static; }
  .pc-trow:not(.pc-thead) { grid-template-columns: minmax(0, 1fr) auto; row-gap: 8px; }
  .pc-thead { display: none; }
  .pc-trow .c-num { display: none; }
  .pc-trow .c-st { grid-column: 2; grid-row: 1; justify-self: end; }
  .pc-trow .c-ans { grid-column: 1; justify-content: flex-start; padding-left: 58px; }
  .pc-trow .c-date { grid-column: 2; }
  .pc-arow .c-job { grid-column: 1 / -1; padding-left: 58px; }
  .pc-arow .c-msgs { grid-column: 1; justify-content: flex-start; padding-left: 58px; }
  .pc-arow .c-when { grid-column: 2; }
}
@media (max-width: 767.98px) {
  .pc-firm-page { padding-top: 20px; gap: 16px; }
  .pc-firm-head h1 { font-size: 26px; }
  .pc-firm-search, .pc-firm-filters, .pc-firm-filters .pc-select { width: 100%; }
  .pc-firm-stats { padding: 18px; display: grid; grid-template-columns: 1fr 1fr; }
  .pc-firm-stats > i { display: none; }
  .pc-firm-stats b { font-size: 22px; }
  .pc-table-bar { padding: 14px 16px; }
  .pc-tabs { flex-wrap: nowrap; overflow-x: auto; width: 100%; scrollbar-width: none; }
  .pc-tabs a { white-space: nowrap; padding: 8px 12px; font-size: 14px; }
  .pc-trow { padding: 16px; }
  .pc-trow .c-ans, .pc-arow .c-job, .pc-arow .c-msgs { padding-left: 0; }
  .pc-trow .c-pos .pc-ico, .pc-arow .pc-avatar-sm { display: none; }
  .pc-fsec { padding: 20px; }
  .pc-grid-3 { grid-template-columns: 1fr; gap: 16px; }
  .pc-salary-row { flex-wrap: wrap; }
  .pc-salary-row .pc-input { min-width: 40%; }
  .pc-head-actions { width: 100%; }
  .pc-head-actions > * { flex: 1; }
  .pc-plans { grid-template-columns: 1fr; }
  .pc-thread, .pc-reply { padding-left: 16px; padding-right: 16px; }
  .pc-conv-head { padding: 16px; }
  .pc-msg { max-width: 100%; }
  .pc-msg .pc-avatar-sm { display: none; }
  .pc-hrow { grid-template-columns: 1fr auto; }
}

/* ---------- Služby z ceníku (editor inzerátu, objednávky) ---------- */
.pc-link-sm { font-size: 14px; font-weight: 600; }
.pc-svc-list { display: flex; flex-direction: column; gap: 8px; }
.pc-svc { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; gap: 10px; align-items: start; padding: 11px 12px; border: 1.5px solid var(--pc-line); border-radius: 12px; cursor: pointer; transition: border-color .15s, background .15s; margin: 0; }
.pc-svc:hover { border-color: var(--pc-blue-line); }
.pc-svc input { position: absolute; opacity: 0; pointer-events: none; }
.pc-svc-check { width: 22px; height: 22px; border-radius: 6px; border: 1.5px solid var(--pc-line-2); display: grid; place-items: center; color: transparent; background: #fff; margin-top: 1px; }
.pc-svc.is-on { border-color: var(--pc-blue); background: var(--pc-blue-soft); }
.pc-svc.is-on .pc-svc-check { background: var(--pc-blue); border-color: var(--pc-blue); color: #fff; }
.pc-svc input:focus-visible + .pc-svc-check { outline: 2px solid var(--pc-blue); outline-offset: 2px; }
.pc-svc.is-locked { cursor: default; border-color: var(--pc-teal-soft); background: var(--pc-teal-soft); }
.pc-svc.is-locked .pc-svc-check { background: var(--pc-teal); border-color: var(--pc-teal); color: #fff; }
.pc-svc-body b { display: block; font-size: 15px; line-height: 1.3; color: var(--pc-ink); }
.pc-svc-body span { display: block; font-size: 13px; color: var(--pc-muted); line-height: 1.35; margin-top: 2px; }
.pc-svc-price { font-weight: 700; font-size: 15px; color: var(--pc-ink); white-space: nowrap; text-align: right; }
.pc-svc-price small { display: block; font-weight: 400; font-size: 12px; color: var(--pc-muted); }
.pc-svc-sum { border-top: 1px solid var(--pc-line); padding-top: 14px; display: flex; flex-direction: column; gap: 8px; }
.pc-svc-pkg { background: var(--pc-teal-soft); color: var(--pc-teal-dark); border-radius: 10px; padding: 10px 12px; font-size: 14px; }
.pc-svc-save { margin-top: 2px; }
.pc-svc-hint { font-size: 13px; color: var(--pc-muted); }
.pc-svc-total { display: flex; justify-content: space-between; align-items: baseline; font-size: 15px; }
.pc-svc-total b { font-family: var(--pc-head); font-size: 24px; color: var(--pc-ink); }
.pc-svc-vat { display: flex; justify-content: space-between; font-size: 13px; color: var(--pc-muted); margin-top: -6px; }
.pc-svc-warn { font-size: 13px; color: var(--pc-amber); background: var(--pc-amber-soft); border-radius: 10px; padding: 8px 12px; }
.pc-orow { grid-template-columns: minmax(0, 2fr) minmax(0, 5fr) minmax(0, 2fr) auto; align-items: start; }
.pc-orow-items { display: flex; flex-direction: column; gap: 3px; font-size: 15px; }
.pc-orow-items .pc-st { align-self: flex-start; margin-bottom: 2px; }
.pc-empty-sm { padding: 24px; color: var(--pc-muted); }
.pc-muted { color: var(--pc-muted); }
@media (max-width: 767.98px) {
  .pc-orow { grid-template-columns: 1fr auto; }
  .pc-orow-items { grid-column: 1 / -1; order: 3; }
}
.pc-logo-name { letter-spacing: 0; text-transform: none; color: var(--pc-ink); text-align: center; line-height: 1.2; padding: 0 6px; }
a.pc-logo-tile:hover { border-color: var(--pc-blue-line); }

/* ---------- Ceník: služby, balíček, kalkulačka ---------- */
.pc-svc-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.pc-svc-card { padding: 26px 24px; display: flex; flex-direction: column; gap: 12px; }
.pc-svc-card h2 { font-size: 21px; font-weight: 600; margin: 4px 0 0; }
.pc-svc-card p { color: var(--pc-text-2); font-size: 15px; line-height: 1.55; margin: 0; flex: 1 1 auto; }
.pc-svc-no { font-family: var(--pc-head); font-size: 14px; font-weight: 700; color: var(--pc-ghost); }
.pc-svc-card-price { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.pc-svc-card-price b { font-family: var(--pc-head); font-size: 28px; color: var(--pc-ink); }
.pc-svc-card-price span { font-size: 14px; color: var(--pc-muted); }
.pc-pkg { background: var(--pc-ink); color: #fff; border-radius: 24px; padding: 48px; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 48px; }
.pc-pkg h2 { color: #fff; font-size: 32px; font-weight: 700; margin: 8px 0 20px; }
.pc-pkg .pc-eyebrow { color: var(--pc-mint); }
.pc-pkg-list { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 20px; }
.pc-pkg-list li { display: flex; gap: 10px; align-items: center; color: var(--pc-f-text); font-size: 16px; }
.pc-pkg-list svg { color: var(--pc-mint); flex-shrink: 0; }
.pc-pkg-note { color: var(--pc-f-muted); font-size: 14px; margin: 24px 0 0; }
.pc-pkg-side { display: flex; flex-direction: column; gap: 14px; }
.pc-pkg-price { background: var(--pc-navy-2); border-radius: 14px; padding: 18px 20px; display: flex; flex-direction: column; gap: 2px; }
.pc-pkg-price span { color: var(--pc-f-text); font-size: 14px; }
.pc-pkg-price b { font-family: var(--pc-head); font-size: 34px; color: #fff; line-height: 1.15; }
.pc-pkg-price small { color: var(--pc-f-muted); font-size: 13px; }
.pc-pkg-price.is-next b { font-size: 26px; }
.pc-pkg-tiers { display: flex; flex-wrap: wrap; gap: 8px; }
.pc-pkg-tiers span { border: 1px solid #2C4864; border-radius: 999px; padding: 5px 12px; font-size: 13px; color: var(--pc-f-text); }
.pc-pkg-tiers b { color: var(--pc-mint); }
.pc-calc { border-top: 1px solid #2C4864; padding-top: 14px; display: flex; flex-direction: column; gap: 8px; }
.pc-calc label { font-size: 14px; color: var(--pc-f-text); }
.pc-calc-row { display: flex; align-items: center; gap: 14px; }
.pc-calc-row input { flex: 1 1 auto; accent-color: var(--pc-mint); }
.pc-calc-row output { font-family: var(--pc-head); font-weight: 700; font-size: 20px; min-width: 28px; text-align: right; }
.pc-calc-sum { display: flex; justify-content: space-between; align-items: baseline; }
.pc-calc-sum span { color: var(--pc-f-text); font-size: 14px; }
.pc-calc-sum b { font-family: var(--pc-head); font-size: 24px; }
.pc-contact-card { padding: 24px 28px; display: flex; align-items: center; gap: 20px; flex-wrap: wrap; height: auto; }
.pc-contact-name { display: block; font-family: var(--pc-head); font-size: 20px; color: var(--pc-ink); margin-top: 2px; }
.pc-contact-links { display: flex; flex-direction: column; gap: 6px; }
.pc-contact-links a { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; }
@media (max-width: 991.98px) {
  .pc-svc-grid { grid-template-columns: 1fr 1fr; }
  .pc-pkg { grid-template-columns: 1fr; padding: 32px; gap: 28px; }
}
@media (max-width: 767.98px) {
  .pc-svc-grid { grid-template-columns: 1fr; gap: 14px; }
  .pc-pkg { padding: 24px 20px; border-radius: 18px; }
  .pc-pkg h2 { font-size: 25px; }
  .pc-pkg-list { grid-template-columns: 1fr; }
}

/* ---------- Souhlas s cookies ---------- */
.pc-cookie { position: fixed; left: 24px; right: 24px; bottom: 24px; z-index: 1080; max-width: 860px; margin: 0 auto; background: #fff; border: 1px solid var(--pc-line); border-radius: 18px; box-shadow: 0 18px 50px rgba(10, 37, 64, .18); padding: 22px 24px; display: flex; flex-direction: column; gap: 16px; }
.pc-cookie[hidden] { display: none; }
.pc-cookie-main { flex: 1 1 auto; min-width: 0; }
.pc-cookie h2 { font-size: 18px; font-weight: 600; margin: 0 0 6px; }
.pc-cookie p { font-size: 14px; color: var(--pc-text-2); margin: 0; line-height: 1.5; }
.pc-cookie-btns { display: flex; gap: 10px; justify-content: flex-end; flex-wrap: wrap; }
.pc-cookie-btns [hidden] { display: none; }
.pc-cookie-btns .pc-btn, .pc-cookie-btns .pc-btn-line { padding-top: 10px; padding-bottom: 10px; font-size: 15px; }
.pc-cookie-opts { display: flex; flex-direction: column; gap: 8px; margin-top: 14px; }
.pc-cookie-opt { display: flex; gap: 12px; align-items: flex-start; border: 1px solid var(--pc-line); border-radius: 12px; padding: 10px 14px; margin: 0; cursor: pointer; font-size: 13px; color: var(--pc-muted); }
.pc-cookie-opt b { display: block; font-size: 15px; color: var(--pc-ink); }
.pc-cookie-opt input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--pc-blue); flex-shrink: 0; }
.pc-cookie-opt.is-locked { background: var(--pc-bg); cursor: default; }
@media (max-width: 767.98px) {
  .pc-cookie { left: 10px; right: 10px; bottom: 76px; flex-direction: column; align-items: stretch; gap: 14px; padding: 18px; max-height: calc(100vh - 100px); overflow-y: auto; }
  .pc-cookie-btns { flex-direction: column-reverse; }
  .pc-cookie-btns > * { width: 100%; }
}
.pc-prose { max-width: 860px; padding-top: 48px; padding-bottom: 72px; font-size: 17px; line-height: 1.65; color: var(--pc-text-2); }
.pc-prose h2 { font-size: 24px; font-weight: 600; color: var(--pc-ink); margin: 36px 0 12px; scroll-margin-top: 90px; }
.pc-prose h2:first-child { margin-top: 0; }
.pc-prose ul { padding-left: 20px; display: flex; flex-direction: column; gap: 8px; }
.pc-cookie-table { height: auto; overflow: hidden; font-size: 15px; }
.pc-ct-row { display: grid; grid-template-columns: 1.3fr 2.4fr 1.1fr 1fr; gap: 14px; padding: 12px 18px; border-top: 1px solid var(--pc-line); }
.pc-ct-row:first-child { border-top: 0; }
.pc-ct-head { background: var(--pc-bg); font-weight: 600; color: var(--pc-ink); font-size: 14px; }
@media (max-width: 767.98px) {
  .pc-ct-row { grid-template-columns: 1fr 1fr; }
  .pc-ct-head { display: none; }
}

/* ---------- Statistiky ---------- */
.pc-stats-filter { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.pc-stats-filter .pc-select { width: 280px; }
.pc-seg { display: inline-flex; background: #fff; border: 1px solid var(--pc-line); border-radius: 12px; padding: 4px; gap: 2px; }
.pc-seg button { border: 0; background: transparent; border-radius: 9px; padding: 8px 14px; font-weight: 600; font-size: 14px; color: var(--pc-text-2); }
.pc-seg button.active { background: var(--pc-ink); color: #fff; }
.pc-kpis { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px; }
.pc-kpi { padding: 18px; display: flex; flex-direction: column; gap: 4px; height: auto; }
.pc-kpi-lbl { font-size: 13px; font-weight: 600; color: var(--pc-muted); }
.pc-kpi b { font-family: var(--pc-head); font-size: 28px; line-height: 1.15; color: var(--pc-ink); }
.pc-kpi-sub { font-size: 13px; color: var(--pc-muted); line-height: 1.35; }
.pc-delta { font-weight: 700; margin-right: 4px; white-space: nowrap; }
.pc-delta.up { color: var(--pc-teal-dark); }
.pc-delta.down { color: #B3412E; }
.pc-stats-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 16px; }
.pc-chart-card, .pc-src-card { padding: 22px 24px; display: flex; flex-direction: column; gap: 14px; height: auto; }
.pc-chart-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.pc-legend { display: flex; gap: 16px; font-size: 13px; color: var(--pc-muted); }
.pc-legend span::before { content: ''; display: inline-block; width: 12px; height: 12px; border-radius: 3px; margin-right: 6px; vertical-align: -1px; }
.pc-legend .l-views::before { background: var(--pc-blue); }
.pc-legend .l-apps::before { background: var(--pc-teal); }
.pc-chart { width: 100%; height: auto; overflow: visible; }
.pc-chart .grid { stroke: var(--pc-line); stroke-dasharray: 3 4; }
.pc-chart .axis { stroke: var(--pc-line-2); }
.pc-chart .area { fill: var(--pc-blue); opacity: .1; }
.pc-chart .line { fill: none; stroke: var(--pc-blue); stroke-width: 2.5; stroke-linejoin: round; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.pc-chart .bar { fill: var(--pc-teal); }
.pc-chart text { font-family: var(--pc-body); font-size: 12px; fill: var(--pc-faint); }
.pc-chart-empty { min-height: 180px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; color: var(--pc-muted); text-align: center; font-size: 15px; background: var(--pc-bg); border-radius: 12px; padding: 20px; }
.pc-chart-table summary { font-size: 14px; color: var(--pc-blue); cursor: pointer; font-weight: 600; }
.pc-chart-table table { width: 100%; font-size: 14px; margin-top: 8px; }
.pc-chart-table th, .pc-chart-table td { padding: 4px 8px; border-bottom: 1px solid var(--pc-line); }
.pc-src-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.pc-src-row { display: flex; justify-content: space-between; font-size: 15px; color: var(--pc-ink); }
.pc-src-bar { height: 8px; border-radius: 99px; background: var(--pc-bg); margin: 5px 0 3px; overflow: hidden; }
.pc-src-bar i { display: block; height: 100%; background: var(--pc-blue); border-radius: 99px; }
.pc-src-list li:first-child .pc-src-bar i { background: var(--pc-teal); }
.pc-src-sub { font-size: 13px; color: var(--pc-muted); }
.pc-srow { grid-template-columns: minmax(0, 4fr) repeat(6, minmax(0, 1fr)) minmax(0, 1.6fr); font-size: 15px; }
.pc-srow .c-r { text-align: right; }
@media (max-width: 1199.98px) { .pc-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 991.98px) {
  .pc-stats-grid { grid-template-columns: 1fr; }
  .pc-trow.pc-srow { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pc-srow > div:first-child { grid-column: 1 / -1; }
  .pc-srow .c-r { text-align: left; }
  .pc-srow [data-l]::before { content: attr(data-l); display: block; font-size: 12px; color: var(--pc-muted); }
  .pc-srow.pc-thead { display: none; }
}
@media (max-width: 767.98px) {
  .pc-kpis { grid-template-columns: 1fr 1fr; gap: 10px; }
  .pc-kpi { padding: 14px; }
  .pc-kpi b { font-size: 23px; }
  .pc-stats-filter, .pc-stats-filter .pc-select { width: 100%; }
  .pc-seg { width: 100%; }
  .pc-seg button { flex: 1; padding: 8px 6px; }
  .pc-chart-card, .pc-src-card { padding: 18px; }
}
.pc-trow.pc-srow.pc-thead { letter-spacing: 0; text-transform: none; font-size: 13px; }
@media (max-width: 767.98px) { .pc-chart text { font-size: 24px; } }

/* ---------- Profil firmy, logo zaměstnavatele ---------- */
.pc-upload { display: flex; gap: 20px; align-items: center; }
.pc-upload-prev { width: 168px; height: 96px; flex-shrink: 0; border: 1px dashed var(--pc-line-2); border-radius: 14px; background: var(--pc-bg); display: grid; place-items: center; overflow: hidden; }
.pc-upload.is-wide .pc-upload-prev { width: 240px; height: 135px; }
.pc-upload-prev img { max-width: 100%; max-height: 100%; object-fit: contain; }
.pc-upload.is-wide .pc-upload-prev img { width: 100%; height: 100%; object-fit: cover; }
.pc-upload-empty { color: var(--pc-ghost); }
.pc-upload-body { display: flex; flex-direction: column; gap: 8px; align-items: flex-start; min-width: 0; }
.pc-upload-body .pc-btn-line { cursor: pointer; }
.pc-upload-rm { font-size: 14px; color: var(--pc-muted); display: flex; gap: 6px; align-items: center; cursor: pointer; }
.pc-emp-logo { width: 56px; height: 56px; flex-shrink: 0; border-radius: 14px; border: 1px solid var(--pc-line); background: #fff; display: grid; place-items: center; overflow: hidden; font-family: var(--pc-head); font-weight: 700; font-size: 18px; color: var(--pc-blue); }
.pc-emp-logo img { max-width: 86%; max-height: 86%; object-fit: contain; }
.pc-emp-logo.lg { width: 96px; height: 96px; border-radius: 20px; font-size: 30px; }
.pc-emp-mini { display: flex; gap: 12px; align-items: center; }
.pc-emp-mini b { display: block; font-size: 16px; color: var(--pc-ink); line-height: 1.3; }
.pc-emp-mini span { font-size: 14px; color: var(--pc-muted); }
@media (max-width: 575.98px) {
  .pc-upload { flex-direction: column; align-items: flex-start; }
  .pc-upload.is-wide .pc-upload-prev { width: 100%; height: auto; aspect-ratio: 16 / 9; }
}
.pc-emp-hero { background: var(--pc-blue-soft); border-bottom: 1px solid var(--pc-line); padding: 32px 0 40px; }
.pc-emp-hero.has-photo { background: linear-gradient(180deg, rgba(10, 37, 64, .25), rgba(10, 37, 64, .82)), var(--pc-emp-photo) center / cover no-repeat; color: #fff; padding-top: 120px; }
.pc-emp-hero.has-photo h1, .pc-emp-hero.has-photo .pc-emp-meta, .pc-emp-hero.has-photo .pc-emp-meta a, .pc-emp-hero.has-photo .pc-crumbs, .pc-emp-hero.has-photo .pc-crumbs a { color: #fff; }
.pc-emp-head { display: flex; gap: 22px; align-items: center; margin-top: 16px; }
.pc-emp-head h1 { font-size: 36px; font-weight: 700; margin: 0 0 8px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.pc-emp-meta { display: flex; flex-wrap: wrap; gap: 8px 22px; color: var(--pc-text-2); font-size: 16px; }
.pc-emp-meta > * { display: inline-flex; align-items: center; gap: 6px; }
.pc-emp-body { padding-top: 32px; padding-bottom: 72px; }
.pc-emp-grid { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 28px; align-items: start; }
.pc-emp-desc { font-size: 15px; line-height: 1.6; color: var(--pc-text-2); }
@media (max-width: 991.98px) { .pc-emp-grid { grid-template-columns: 1fr; } .pc-emp-grid aside { order: -1; } }
@media (max-width: 767.98px) {
  .pc-emp-head { flex-direction: column; align-items: flex-start; gap: 14px; }
  .pc-emp-head h1 { font-size: 27px; }
  .pc-emp-hero.has-photo { padding-top: 80px; }
}
.pc-partner-logo { overflow: hidden; }
.pc-partner-logo img { max-width: 86%; max-height: 86%; object-fit: contain; }
a.pc-d-empname { color: var(--pc-ink); }
a.pc-d-empname:hover { color: var(--pc-blue); }
a.pc-emp-logo { text-decoration: none; }
button.pc-watch-row { border: 0; width: 100%; font: inherit; text-align: left; cursor: pointer; }

/* ---------- Nastavení profilu uchazeče (artboard Profil) ---------- */
.pc-prof { padding-top: 36px; padding-bottom: 64px; display: flex; flex-direction: column; gap: 24px; }
.pc-prof-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.pc-prof-head h1 { font-size: 32px; font-weight: 700; margin: 0 0 6px; }
.pc-prof-head p { color: var(--pc-muted); margin: 0; }
.pc-prof-grid { display: grid; grid-template-columns: 272px minmax(0, 1fr); gap: 24px; align-items: start; }
.pc-prof-side { display: flex; flex-direction: column; gap: 16px; position: sticky; top: 96px; }
.pc-prof-nav { padding: 14px; display: flex; flex-direction: column; gap: 4px; height: auto; }
.pc-prof-nav a { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 10px; font-size: 16px; color: var(--pc-text-2); }
.pc-prof-nav a svg { color: var(--pc-muted); flex-shrink: 0; }
.pc-prof-nav a:hover { background: var(--pc-bg); color: var(--pc-ink); }
.pc-prof-nav a.active { background: var(--pc-blue-soft); color: var(--pc-blue-dark); font-weight: 600; }
.pc-prof-nav a.active svg { color: var(--pc-blue-dark); }
.pc-prof-complete { padding: 22px; display: flex; flex-direction: column; gap: 14px; height: auto; }
.pc-prof-complete h2 { font-size: 16px; font-weight: 600; margin: 0; }
.pc-prof-complete > div > b { font-family: var(--pc-head); font-size: 18px; color: var(--pc-teal); }
.pc-progress { height: 8px; border-radius: 4px; background: var(--pc-line); overflow: hidden; }
.pc-progress i { display: block; height: 100%; background: var(--pc-teal); border-radius: 4px; }
.pc-prof-complete ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; font-size: 14px; }
.pc-prof-complete li { display: flex; gap: 10px; align-items: center; color: var(--pc-text-2); }
.pc-prof-complete li.ok svg { color: var(--pc-teal); }
.pc-prof-complete li.miss, .pc-prof-complete li.miss a { color: var(--pc-amber); }
.pc-prof-complete li.miss svg { color: #E4A11B; }
.pc-prof-main { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.pc-prof-main > form:not(.pc-card) { display: flex; flex-direction: column; gap: 16px; }
.pc-prof-card { padding: 32px; display: flex; flex-direction: column; gap: 22px; height: auto; }
.pc-prof-card h2 { font-size: 22px; font-weight: 600; margin: 0; }
.pc-prof-lead { font-size: 15px; color: var(--pc-muted); margin: 4px 0 0; }
.pc-prof-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 4px 4px 0; flex-wrap: wrap; }
.pc-link-danger { font-size: 15px; font-weight: 600; color: #C0392B; }
.pc-link-danger:hover { color: #962D22; }
.pc-avatar-up { display: flex; align-items: center; gap: 20px; }
.pc-avatar-lg { width: 84px; height: 84px; border-radius: 50%; background: var(--pc-blue-soft); color: var(--pc-blue); font-family: var(--pc-head); font-size: 30px; font-weight: 700; display: grid; place-items: center; overflow: hidden; flex-shrink: 0; }
.pc-avatar-lg img { width: 100%; height: 100%; object-fit: cover; }
label.pc-btn { cursor: pointer; margin: 0; }
.pc-input-static { display: flex; align-items: center; justify-content: space-between; gap: 8px; background: var(--pc-bg); color: var(--pc-ink); overflow: hidden; }
.pc-set-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 0; cursor: pointer; }
div.pc-set-row { cursor: default; }
.pc-set-txt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.pc-set-txt b { font-size: 16px; color: var(--pc-ink); }
.pc-set-txt small { font-size: 14px; color: var(--pc-muted); }
.pc-set-sep { height: 1px; background: var(--pc-line); }
.pc-toggle { position: relative; flex-shrink: 0; }
.pc-toggle input { position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.pc-toggle-ui, .pc-toggle-btn { display: flex; width: 48px; height: 28px; border-radius: 999px; background: #D3E3F0; padding: 3px; transition: background .15s; border: 0; }
.pc-toggle-ui::after, .pc-toggle-btn::after { content: ''; width: 22px; height: 22px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, .15); transition: transform .15s; }
.pc-toggle input:checked + .pc-toggle-ui, .pc-toggle-btn.on { background: var(--pc-teal); }
.pc-toggle input:checked + .pc-toggle-ui::after, .pc-toggle-btn.on::after { transform: translateX(20px); }
.pc-toggle input:focus-visible + .pc-toggle-ui, .pc-toggle-btn:focus-visible { outline: 2px solid var(--pc-blue); outline-offset: 2px; }
.pc-alert-row { display: flex; align-items: center; gap: 14px; padding: 16px 0; border-top: 1px solid var(--pc-line); }
.pc-alert-row.is-off .pc-alert-title, .pc-alert-row.is-off .pc-ico { opacity: .55; }
.pc-alert-row form { margin: 0; }
.pc-alert-title { font-weight: 600; font-size: 16px; color: var(--pc-ink); display: block; }
.pc-alert-title:hover { color: var(--pc-blue); }
.pc-select-sm { padding: 7px 34px 7px 12px; font-size: 14px; width: auto; }
.pc-input-sm { padding: 7px 12px; font-size: 14px; }
.pc-icon-del { border: 0; background: transparent; color: var(--pc-faint); width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; }
.pc-icon-del:hover { background: #FBEAEA; color: #C0392B; }
.pc-hide-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; align-items: center; }
.pc-hide-chip { background: var(--pc-blue-soft); color: var(--pc-blue-dark); font-size: 14px; font-weight: 600; padding: 6px 8px 6px 12px; border-radius: 999px; display: inline-flex; align-items: center; gap: 6px; }
.pc-hide-chip button { border: 0; background: transparent; color: inherit; padding: 2px; display: grid; place-items: center; border-radius: 50%; }
.pc-hide-add .pc-input-sm { border-style: dashed; border-radius: 999px; width: 220px; }
.pc-cv { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.pc-check-line { display: flex; gap: 10px; align-items: center; font-size: 15px; color: var(--pc-text-2); cursor: pointer; margin: 0; }
.pc-check-line input { width: 18px; height: 18px; accent-color: #C0392B; }
.pc-danger-card { border-color: #F2D3CF; }
.pc-danger-card h2 { color: #962D22; }
.pc-btn-danger { background: #C0392B; border-color: #C0392B; }
.pc-btn-danger:hover { background: #962D22; border-color: #962D22; color: #fff; }
.pc-prev-bio { color: var(--pc-text-2); line-height: 1.6; margin: 0; }
.pc-prev-dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 24px; margin: 0; }
.pc-prev-dl dt { font-size: 13px; font-weight: 600; color: var(--pc-muted); }
.pc-prev-dl dd { margin: 2px 0 0; color: var(--pc-ink); }
@media (max-width: 991.98px) {
  .pc-prof-grid { grid-template-columns: minmax(0, 1fr); }
  .pc-prof-side { min-width: 0; }
  .pc-prof-side { position: static; }
  .pc-prof-nav { flex-direction: row; overflow-x: auto; scrollbar-width: none; padding: 8px; }
  .pc-prof-nav a { white-space: nowrap; padding: 9px 12px; font-size: 15px; }
  .pc-prof-complete { display: none; }
}
@media (max-width: 767.98px) {
  .pc-prof { padding-top: 20px; gap: 16px; }
  .pc-prof-head h1 { font-size: 26px; }
  .pc-prof-head .pc-head-actions { width: 100%; }
  .pc-prof-card { padding: 20px; gap: 18px; }
  .pc-prof-nav a svg { display: none; }
  .pc-alert-row { flex-wrap: wrap; }
  .pc-alert-row > div { flex-basis: calc(100% - 64px); }
  .pc-prev-dl { grid-template-columns: 1fr; }
  .pc-set-row { gap: 14px; }
}
.pc-avatar-xl { overflow: hidden; } .pc-avatar-xl img { width: 100%; height: 100%; object-fit: cover; }

/* ---------- Landing Pro zaměstnavatele (artboard Employer) ---------- */
.pc-emp-land-hero { background: var(--pc-ink); color: #fff; padding: 72px 0 80px; }
.pc-elh-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.pc-elh-copy { display: flex; flex-direction: column; gap: 22px; }
.pc-elh-copy .pc-eyebrow { color: var(--pc-mint); }
.pc-elh-copy h1 { font-size: 52px; line-height: 1.08; font-weight: 700; color: #fff; margin: 0; }
.pc-elh-copy p { font-size: 19px; line-height: 1.6; color: var(--pc-f-text); margin: 0; max-width: 560px; }
.pc-elh-preview { background: var(--pc-navy-2); border-radius: 20px; padding: 28px; display: flex; flex-direction: column; gap: 16px; }
.pc-elh-preview > p { font-size: 14px; color: var(--pc-f-muted); margin: 0; line-height: 1.55; }
.pc-elh-card { background: #fff; color: var(--pc-ink); border-radius: 14px; padding: 20px; display: flex; flex-direction: column; gap: 14px; }
.pc-elh-card b { display: block; font-family: var(--pc-head); font-size: 18px; }
.pc-elh-card span:not(.pc-ico):not(.pc-tag):not(.pc-badge):not(.pc-btn):not(.pc-salary) { font-size: 14px; color: var(--pc-muted); }
.pc-el-sec { padding-top: 80px; padding-bottom: 80px; display: flex; flex-direction: column; gap: 32px; }
.pc-el-head { display: flex; flex-direction: column; gap: 10px; max-width: 640px; }
.pc-el-head.text-center { max-width: none; }
.pc-el-why { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.pc-el-card { padding: 28px; display: flex; flex-direction: column; gap: 14px; }
.pc-el-card h3 { font-size: 20px; font-weight: 600; margin: 4px 0 0; }
.pc-el-card p { color: var(--pc-text-2); font-size: 15px; line-height: 1.6; margin: 0; }
.pc-el-pricing { background: var(--pc-bg); border-top: 1px solid var(--pc-line); border-bottom: 1px solid var(--pc-line); }
.pc-el-plans { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pc-el-how { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.pc-el-steps { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 22px; }
.pc-el-steps li { display: flex; gap: 16px; }
.pc-el-steps li > span { width: 36px; height: 36px; border-radius: 10px; background: var(--pc-blue-soft); color: var(--pc-blue); font-family: var(--pc-head); font-weight: 700; display: grid; place-items: center; flex-shrink: 0; }
.pc-el-steps h3 { font-size: 18px; font-weight: 600; margin: 4px 0 4px; }
.pc-el-steps p { color: var(--pc-text-2); font-size: 15px; line-height: 1.55; margin: 0; }
.pc-el-mock { padding: 24px; display: flex; flex-direction: column; gap: 12px; height: auto; background: var(--pc-bg); }
.pc-el-mock-row { background: #fff; border: 1px solid var(--pc-line); border-radius: 12px; padding: 14px; display: flex; gap: 12px; align-items: center; }
.pc-el-mock-row b { display: block; font-size: 15px; }
.pc-el-mock-row small { font-size: 13px; color: var(--pc-muted); }
.pc-el-proof { background: var(--pc-blue-soft); border-radius: 24px; padding: 40px; display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 40px; align-items: center; }
.pc-el-proof.no-quote { grid-template-columns: 1fr; }
.pc-el-proof.no-quote .pc-el-facts { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.pc-el-proof blockquote { font-size: 22px; line-height: 1.5; color: var(--pc-ink); margin: 0 0 16px; }
.pc-el-proof figcaption b { display: block; color: var(--pc-ink); }
.pc-el-proof figcaption span { font-size: 14px; color: var(--pc-muted); }
.pc-el-facts { display: grid; gap: 14px; }
.pc-el-facts .pc-card { padding: 20px; height: auto; }
.pc-el-facts b { display: block; font-family: var(--pc-head); font-size: 30px; color: var(--pc-blue); line-height: 1.1; }
.pc-el-facts span { font-size: 14px; color: var(--pc-muted); }
.pc-el-cta { background: var(--pc-ink); color: #fff; padding: 56px 0; }
.pc-el-cta h2 { color: #fff; font-size: 32px; font-weight: 700; margin: 0 0 8px; }
.pc-el-cta p { color: var(--pc-f-text); margin: 0; max-width: 620px; }
.pc-el-cta a:not(.pc-btn) { color: var(--pc-mint); }
@media (max-width: 991.98px) {
  .pc-elh-grid, .pc-el-how, .pc-el-proof { grid-template-columns: 1fr; gap: 32px; }
  .pc-el-why, .pc-el-plans { grid-template-columns: 1fr; }
  .pc-elh-copy h1 { font-size: 38px; }
}
@media (max-width: 767.98px) {
  .pc-emp-land-hero { padding: 44px 0 52px; }
  .pc-elh-copy p { font-size: 17px; }
  .pc-el-sec { padding-top: 52px; padding-bottom: 52px; }
  .pc-el-proof { padding: 24px; border-radius: 18px; }
  .pc-el-cta h2 { font-size: 26px; }
  .pc-elh-preview { padding: 20px; }
}

/* ---------- Fotogalerie (profil firmy, inzerát) ---------- */
.pc-gal { display: flex; flex-direction: column; gap: 12px; }
.pc-gal-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 12px; }
.pc-gal-item { position: relative; border-radius: 12px; overflow: hidden; border: 1px solid var(--pc-line); background: var(--pc-bg); aspect-ratio: 4 / 3; }
.pc-gal-item img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pc-gal-item.is-over img { opacity: .35; filter: grayscale(1); }
.pc-gal-badge { position: absolute; top: 8px; left: 8px; background: var(--pc-teal); color: #fff; font-size: 12px; font-weight: 700; padding: 3px 8px; border-radius: 999px; }
.pc-gal-badge.warn { background: var(--pc-amber-soft); color: var(--pc-amber); }
.pc-gal-actions { position: absolute; left: 0; right: 0; bottom: 0; display: flex; justify-content: space-between; gap: 6px; padding: 6px 8px; background: linear-gradient(transparent, rgba(10, 37, 64, .75)); }
.pc-gal-actions label { color: #fff; font-size: 12px; font-weight: 600; display: flex; align-items: center; gap: 4px; cursor: pointer; margin: 0; }
.pc-gal-actions label.rm { margin-left: auto; }
.pc-gal-add { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.pc-link-btn { border: 0; background: none; padding: 0; color: var(--pc-blue); font-weight: 600; text-decoration: underline; cursor: pointer; }
/* veřejná galerie */
.pc-photos { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.pc-photos a { border-radius: 12px; overflow: hidden; aspect-ratio: 4 / 3; display: block; background: var(--pc-bg); }
.pc-photos a:first-child { grid-column: span 2; grid-row: span 2; }
.pc-photos img { width: 100%; height: 100%; object-fit: cover; transition: transform .2s; }
.pc-photos a:hover img { transform: scale(1.03); }
.pc-photos.n1 { grid-template-columns: 1fr; }
.pc-photos.n1 a:first-child { grid-column: auto; grid-row: auto; aspect-ratio: 16 / 7; }
.pc-photos.n2 { grid-template-columns: 1fr 1fr; }
.pc-photos.n2 a:first-child { grid-column: auto; grid-row: auto; }
@media (max-width: 767.98px) {
  .pc-photos { grid-template-columns: 1fr 1fr; }
  .pc-photos a:first-child { grid-column: span 2; grid-row: auto; }
}

/* ---------- Chybové stránky (403, 404, 500) ---------- */
.pc-err { padding-top: 64px; padding-bottom: 96px; display: flex; justify-content: center; }
.pc-err-card { max-width: 640px; width: 100%; padding: 44px 40px; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 14px; height: auto; }
.pc-err-ico { width: 76px; height: 76px; border-radius: 22px; background: var(--pc-blue-soft); color: var(--pc-blue); display: grid; place-items: center; }
.pc-err-code { font-size: 13px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--pc-muted); }
.pc-err-card h1 { font-size: 32px; font-weight: 700; margin: 0; }
.pc-err-lead { font-size: 17px; color: var(--pc-text-2); line-height: 1.6; margin: 0; max-width: 520px; }
.pc-err-who { font-size: 15px; color: var(--pc-muted); margin: 0; }
.pc-err-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 8px; }
.pc-err-foot { font-size: 14px; color: var(--pc-muted); margin: 6px 0 0; }
.pc-err-search { display: flex; gap: 10px; width: 100%; max-width: 440px; }
@media (max-width: 767.98px) {
  .pc-err { padding-top: 28px; padding-bottom: 56px; }
  .pc-err-card { padding: 28px 20px; }
  .pc-err-card h1 { font-size: 25px; }
  .pc-err-actions > * { flex: 1 1 100%; }
}
/* menu účtu (jedno pro celý web) */
.pc-account-menu { min-width: 16rem; border-radius: 14px; }
.pc-avatar { overflow: visible; }
.pc-avatar img { width: 100%; height: 100%; object-fit: contain; border-radius: 50%; background: #fff; }
.pc-avatar-44 { width: 44px; height: 44px; }
.pc-drawer-account .nav-link { font-size: 16px; font-weight: 600; }
.pc-drawer-account .nav-link svg { color: var(--pc-muted); }

/* ---------- Skončená nabídka (SEO: stránka zůstává, odkazuje na podobné) ---------- */
.pc-ended { margin-top: 20px; background: #fff; border: 1.5px solid var(--pc-amber-soft); border-left: 5px solid #E4A11B; border-radius: 16px; padding: 24px; display: flex; flex-direction: column; gap: 18px; }
.pc-ended-head { display: flex; gap: 16px; align-items: flex-start; }
.pc-ended-head .pc-ico { background: var(--pc-amber-soft); color: var(--pc-amber); }
.pc-ended h2 { font-size: 22px; font-weight: 700; margin: 0 0 4px; }
.pc-ended p { margin: 0; color: var(--pc-text-2); }
.pc-ended-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.pc-ended-list a { padding: 14px 16px; display: flex; flex-direction: column; gap: 3px; height: auto; color: var(--pc-ink); }
.pc-ended-list b { font-size: 15px; line-height: 1.3; }
.pc-ended-list span { font-size: 13px; color: var(--pc-muted); }
.pc-ended-list em { font-style: normal; font-weight: 700; font-size: 14px; color: var(--pc-teal-dark); }
@media (max-width: 991.98px) { .pc-ended-list { grid-template-columns: 1fr 1fr; } }
@media (max-width: 575.98px) { .pc-ended-list { grid-template-columns: 1fr; } .pc-ended { padding: 18px; } }
.pc-btn.pc-btn-off { background: var(--pc-bg); border-color: var(--pc-line); color: var(--pc-muted); opacity: 1; }

/* ===== Blog ===== */
.pc-blog { padding-top: 48px; padding-bottom: 72px; }
.pc-blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
@media (max-width: 991.98px) { .pc-blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .pc-blog-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; } .pc-blog { padding-top: 28px; padding-bottom: 48px; } }
.pc-post-card { display: flex; flex-direction: column; overflow: hidden; text-decoration: none; }
a.pc-post-card:hover { border-color: var(--pc-blue-line); box-shadow: 0 10px 28px rgba(10, 37, 64, .08); transform: translateY(-2px); }
.pc-post-img { aspect-ratio: 16 / 9; background: var(--pc-blue-soft); display: flex; align-items: center; justify-content: center; color: var(--pc-blue); overflow: hidden; }
.pc-post-img img { width: 100%; height: 100%; object-fit: cover; }
.pc-post-body { padding: 20px 22px 24px; display: flex; flex-direction: column; gap: 8px; }
.pc-post-body h3 { font-size: 19px; font-weight: 600; line-height: 1.3; margin: 0; color: var(--pc-ink); }
.pc-post-body p { margin: 0; color: var(--pc-muted); font-size: 15px; line-height: 1.5; }
.pc-post-meta { font-size: 14px; color: var(--pc-faint); }
.pc-blog .pc-pager { margin-top: 32px; justify-content: center; }
.pc-article .pc-page-head h1 { font-size: 38px; line-height: 1.2; }
.pc-article .pc-page-head .pc-post-meta { margin-top: 14px; font-size: 15px; }
@media (max-width: 767.98px) { .pc-article .pc-page-head h1 { font-size: 28px; } }
.pc-article-wrap { max-width: 860px; }
.pc-crumbs { font-size: 15px; } .pc-crumbs a { color: var(--pc-blue); font-weight: 600; text-decoration: none; }
.pc-article-main { padding-top: 36px; padding-bottom: 56px; }
.pc-article-hero { width: 100%; border-radius: 16px; aspect-ratio: 16 / 8; object-fit: cover; margin-bottom: 28px; background: var(--pc-blue-soft); }
.pc-article-perex { font-size: 20px; line-height: 1.55; color: var(--pc-ink); margin-bottom: 8px; }
.pc-article-perex p { margin: 0 0 12px; }
.pc-article-body { max-width: none; padding: 16px 0 8px; }
.pc-prose h3 { font-size: 20px; font-weight: 600; color: var(--pc-ink); margin: 28px 0 10px; }
.pc-prose h4 { font-size: 17px; font-weight: 700; color: var(--pc-ink); margin: 22px 0 8px; }
.pc-prose ol { padding-left: 22px; display: flex; flex-direction: column; gap: 8px; }
.pc-prose blockquote { border-left: 4px solid var(--pc-teal); background: var(--pc-teal-soft); padding: 14px 18px; border-radius: 0 12px 12px 0; margin: 20px 0; color: var(--pc-ink); }
.pc-prose img { max-width: 100%; height: auto; border-radius: 12px; }
.pc-prose table { width: 100%; border-collapse: collapse; margin: 16px 0; font-size: 15px; }
.pc-prose th, .pc-prose td { border: 1px solid var(--pc-line); padding: 8px 10px; text-align: left; vertical-align: top; }
.pc-prose a:not(.pc-btn):not(.pc-btn-line) { color: var(--pc-blue); }
.pc-article-cta { display: flex; align-items: center; gap: 20px; padding: 24px 28px; margin-top: 32px; height: auto; }
@media (max-width: 767.98px) { .pc-article-cta { flex-direction: column; align-items: flex-start; } }

/* ===== Časté dotazy ===== */
.pc-faq-list { display: flex; flex-direction: column; gap: 12px; margin-bottom: 8px; }
.pc-faq-item { background: #fff; border: 1px solid var(--pc-line); border-radius: 14px; }
.pc-faq-item summary { list-style: none; cursor: pointer; padding: 18px 22px; font-weight: 600; color: var(--pc-ink); display: flex; justify-content: space-between; align-items: center; gap: 16px; font-size: 17px; }
.pc-faq-item summary::-webkit-details-marker { display: none; }
.pc-faq-item summary span { color: var(--pc-blue); transition: transform .2s; flex: none; display: flex; }
.pc-faq-item[open] summary span { transform: rotate(180deg); }
.pc-faq-answer { padding: 0 22px 18px; }
.pc-faq-answer p:last-child { margin-bottom: 0; }
