/* ============================================================
   AP2 Industry – tmavý chromový vzhled (společný základ)
   ============================================================ */
:root {
  --dark: #0b0d10;
  --graphite: #121519;
  --light: #15181d;
  --white: #ffffff;
  --text: #d7dbe0;
  --text-light: #f2f4f6;
  --muted: #9aa3ad;
  --accent: #c9ced5;
  --accent-dark: #ffffff;
  --border: rgba(200, 208, 218, 0.14);
  --border-dark: rgba(200, 208, 218, 0.14);
  --steel-1: #f4f6f8;
  --steel-2: #c3c9d0;
  --steel-3: #7d8590;
  --panel: #14171b;
  --panel-2: #191d22;
  --shadow: 0 14px 34px rgba(0, 0, 0, 0.45);
  --chrome: linear-gradient(180deg, #ffffff 0%, #e3e7eb 30%, #9aa2ab 50%, #eef1f4 64%, #b7bec6 100%);
  --chrome-btn: linear-gradient(180deg, #f7f8fa 0%, #d6dbe0 45%, #aeb5bd 55%, #e4e7ea 100%);
  --mono: ui-monospace, "SFMono-Regular", "Cascadia Mono", Menlo, Consolas, monospace;
}

body { background: var(--dark); color: var(--text); }
a { color: var(--steel-1); }
section { background: var(--dark); }
.section-alt { background: var(--graphite); }
h1, h2, h3 { color: var(--text-light); }

/* chromová typografie */
h1, h2, .stat strong, .cd-stat strong {
  background: var(--chrome);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.accent { color: inherit; }
.eyebrow, .hero .eyebrow { color: var(--steel-2); }

/* hlavička a navigace */
.site-header {
  background: rgba(10, 12, 15, 0.92);
  border-bottom: 1px solid var(--border-dark);
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.04);
}
.main-nav a { color: #aeb5bd; }
.main-nav a:hover, .main-nav a.active { color: #fff; }
.main-nav a.active { border-bottom-color: var(--steel-2); }
.main-nav .nav-cta, .btn-primary, .cd-btn.primary, .cd-chip.active {
  background: var(--chrome-btn);
  color: #0b0d10;
  border-color: transparent;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), inset 0 -1px 0 rgba(0,0,0,.25), 0 6px 18px rgba(0,0,0,.45);
}
.main-nav .nav-cta:hover, .btn-primary:hover, .cd-btn.primary:hover { background: linear-gradient(180deg,#fff,#e6e9ec 45%,#c2c8ce 55%,#f2f4f6); color: #0b0d10; }
.main-nav .nav-cta.active { color: #0b0d10; }
.btn-ghost { border-color: rgba(200,208,218,.35); color: var(--text-light); }
.btn-ghost:hover { border-color: #fff; }
.lang-switch a { opacity: .45; filter: grayscale(.35); }
.lang-switch a.active { box-shadow: 0 0 0 2px var(--steel-2); filter: none; }
.lang-switch a:hover { filter: none; }
.nav-toggle { color: var(--text-light); }
@media (max-width: 680px) {
  .main-nav { background: #0b0d10; }
  .main-nav a.active { color: #fff; }
}

/* hero */
.hero {
  background:
    radial-gradient(ellipse at 78% 30%, rgba(210, 218, 228, 0.09), transparent 55%),
    linear-gradient(170deg, #0e1114 0%, #07080a 100%);
}
.hero p { color: #b9c0c8; }
.stat span { color: var(--muted); }

/* karty, panely */
.card, .contact-form, table.data, .cd-card, .cd-dialog {
  background: var(--panel);
  border-color: var(--border);
  color: var(--text);
}
.card:hover { border-color: rgba(220,226,232,.4); box-shadow: 0 18px 40px rgba(0,0,0,.55); }
.card p, .card ul li, .section-head p, .tl-item p { color: var(--muted); }
.card ul li::before { background: var(--steel-2); }
.icon { background: linear-gradient(180deg, #2a2f36, #15181c); color: var(--steel-1); border: 1px solid rgba(220,226,232,.18); box-shadow: inset 0 1px 0 rgba(255,255,255,.12); }
.lead { color: #c3c9d0; }
.quote { border-left-color: var(--steel-2); background: rgba(220,226,232,.05); }
.quote p { color: var(--text-light); }
.portrait { box-shadow: 0 20px 50px rgba(0,0,0,.6); filter: grayscale(.15); }

/* CTA pás */
.cta-band { background: radial-gradient(ellipse at 50% 0%, rgba(210,218,228,.10), transparent 60%), #08090b; border-top: 1px solid var(--border); }
.cta-band p { color: #b9c0c8; }

/* časová osa */
.timeline { border-left-color: rgba(200,208,218,.22); }
.tl-item::before { background: var(--chrome-btn); box-shadow: 0 0 0 4px rgba(200,208,218,.12); }
.tl-item time { color: var(--steel-2); font-family: var(--mono); letter-spacing: .06em; }
.tl-item .role { color: #c3c9d0; }

/* štítky */
.chip, .section-alt .chip { background: #1a1e23; border-color: var(--border); color: #c3c9d0; }
.chip.blue { background: rgba(220,226,232,.08); border-color: rgba(220,226,232,.3); color: #eef1f4; }

/* tabulky */
table.data thead th { background: #1f2329; color: #f2f4f6; }
table.data tbody tr:nth-child(even) { background: #171a1f; }
table.data td { color: var(--text); }
.source { color: var(--muted); }

/* kontakt */
.contact-info .val, .contact-info a { color: var(--text-light); }
.contact-info a:hover { color: #fff; text-decoration: underline; }
.field label { color: #c3c9d0; }
.req { color: var(--steel-1); }
.field input, .field textarea { background: #0e1013; border-color: rgba(200,208,218,.2); color: var(--text-light); }
.field input:focus, .field textarea:focus { background: #111418; border-color: var(--steel-2); box-shadow: 0 0 0 3px rgba(200,208,218,.15); }
.error-msg { color: #f87171; }
.field.invalid input, .field.invalid textarea { border-color: #f87171; }
.form-status.ok { background: rgba(34,197,94,.12); color: #86efac; }
.form-status.err { background: rgba(248,113,113,.12); color: #fca5a5; }

/* patička */
.site-footer { background: #07080a; color: var(--muted); }
.footer-nav a { color: #9aa3ad; }

/* certifikáty */
.cd-stat { background: rgba(255,255,255,.03); }
.cd-chip { background: #15181c; border-color: var(--border); color: #c3c9d0; }
.cd-chip:hover { border-color: var(--steel-2); color: #fff; }
.cd-card:hover, .cd-card:focus-visible { border-color: rgba(220,226,232,.45); box-shadow: 0 18px 40px rgba(0,0,0,.55); }
.cd-thumb, .cd-big { background: #0e1013; }
.cd-badge { background: #0b0d10; border: 1px solid rgba(220,226,232,.25); }
.cd-badge.is-main, .cd-tag.plus { background: var(--chrome-btn); color: #0b0d10; }
.cd-tag { background: rgba(11,13,16,.85); color: #e6e9ec; }
.cd-blurb, .cd-mods { color: #b9c0c8; }
.cd-mods { background: rgba(220,226,232,.06); }
.cd-meta { border-top-color: var(--border); }
.cd-meta b, .cd-info dd { color: var(--text-light); }
.cd-modal { background: rgba(4,5,6,.86); }
.cd-btn { border-color: rgba(220,226,232,.4); }
.cd-btn.ghost { background: transparent; color: var(--text-light); }
.cd-btn.ghost:hover, .cd-mod:hover, .cd-mod.active { background: rgba(220,226,232,.08); border-color: var(--steel-2); }
.cd-close { background: #1a1e23; border-color: var(--border); color: #fff; }
.cd-mod { background: #121519; border-color: var(--border); }
.cd-mod a, .cd-nav button { color: var(--steel-1); }
.cd-info h2 { -webkit-text-fill-color: transparent; }

/* chromové logo – výraznější lesk */
.shield3d-sheen { background: linear-gradient(105deg, transparent 32%, rgba(255,255,255,.75) 45%, rgba(255,255,255,.2) 50%, rgba(255,255,255,.55) 54%, transparent 64%) 0 0 / 300% 100% no-repeat; }
.shield3d-layer.front { filter: contrast(1.12) brightness(1.04) drop-shadow(0 0 1px rgba(0,0,0,.6)); }
/* Varianta A – Kartáčovaná ocel: kovové panely, frézované hrany */
:root { --radius: 6px; }
.card, .contact-form, .cd-card, table.data, .cd-stat {
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.018) 0 1px, transparent 1px 3px),
    linear-gradient(180deg, #1d2127 0%, #14171b 100%);
  border: 1px solid rgba(0,0,0,.6);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), inset 0 -1px 0 rgba(0,0,0,.5), 0 0 0 1px rgba(200,208,218,.08), 0 14px 30px rgba(0,0,0,.5);
}
.section-alt { background: repeating-linear-gradient(90deg, rgba(255,255,255,.012) 0 1px, transparent 1px 4px), linear-gradient(180deg,#14171b,#101215); }
.site-header { background: linear-gradient(180deg, #1b1f24, #0f1215); box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 1px 0 rgba(0,0,0,.6); }
h1, h2, h3 { text-transform: uppercase; letter-spacing: .03em; }
.btn, .main-nav .nav-cta, .cd-btn { border-radius: 4px; text-transform: uppercase; letter-spacing: .08em; font-size: .86rem; }
.chip, .cd-chip, .cd-badge, .cd-tag { border-radius: 3px; }
.icon { border-radius: 6px; }
.section-head h2 { position: relative; padding-bottom: 18px; }
.section-head h2::after { content: ""; position: absolute; left: 0; bottom: 0; width: 72px; height: 3px; background: var(--chrome-btn); box-shadow: 0 1px 0 rgba(0,0,0,.6); }
.stat { padding: 18px 20px; background: linear-gradient(180deg,#1b1f24,#121519); border: 1px solid rgba(0,0,0,.6); box-shadow: inset 0 1px 0 rgba(255,255,255,.1); border-radius: 4px; }
.stats { border-top: none; }

/* Tablety: hamburger menu místo přeplněné navigace */
@media (min-width: 681px) and (max-width: 1000px) {
  .nav-toggle { display: block; }
  .main-nav {
    display: none; position: absolute; top: 100%; left: 0; right: 0;
    flex-direction: column; align-items: stretch; gap: 0;
    background: #0b0d10; border-bottom: 1px solid var(--border-dark); padding: 10px 4%;
  }
  .main-nav.open { display: flex; }
  .main-nav a { padding: 13px 6px; border-bottom: 1px solid var(--border-dark); }
  .main-nav a.active { border-bottom-color: var(--border-dark); color: #fff; }
  .main-nav .nav-cta { margin: 12px 0 6px; text-align: center; justify-content: center; display: flex; }
}
