/* zostavené skriptom build/make-cf.py — neupravovať ručne */
/* Dve rodiny: Instrument Serif na nadpisy sekcií, Instrument Sans
   na text a rozhranie. JetBrains Mono zostal na čísla a kódy. */

@font-face{font-family:'JetBrains Mono';font-style:normal;font-display:swap;font-weight:100 800;
  src:url(/assets/fonts/jetbrains-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-display:swap;font-weight:100 800;
  src:url(/assets/fonts/jetbrains-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* Instrument Serif — kurzíva je displejový akcent hero sekcie.
   Nie je to náhrada Archiva, len jeho protiváha: jedna elegantná
   línia v inak technickej stránke. */
@font-face{font-family:'Instrument Serif';font-style:italic;font-display:swap;font-weight:400;
  src:url(/assets/fonts/instrument-italic-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Instrument Serif';font-style:italic;font-display:swap;font-weight:400;
  src:url(/assets/fonts/instrument-italic-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Instrument Serif';font-style:normal;font-display:swap;font-weight:400;
  src:url(/assets/fonts/instrument-regular-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Instrument Serif';font-style:normal;font-display:swap;font-weight:400;
  src:url(/assets/fonts/instrument-regular-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* Instrument Sans — text aj rozhranie. Je z tej istej dielne ako
   Instrument Serif, takže sa s ním páruje zámerne, nie náhodou.
   Má vlastný charakter (úzke „a", otvorené „g") — na rozdiel od
   systémových grotesiek nepôsobí ako predvolená voľba. */
@font-face{font-family:'Instrument Sans';font-style:normal;font-display:swap;
  font-weight:400 700;font-stretch:75% 100%;
  src:url(/assets/fonts/instrumentsans-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Instrument Sans';font-style:normal;font-display:swap;
  font-weight:400 700;font-stretch:75% 100%;
  src:url(/assets/fonts/instrumentsans-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  /* teplá takmer-čierna, nie surová #000 */
  --ink:#08070A;
  --ink-2:#0B0A0E;
  --panel:#100E14;
  --panel-2:#16141B;
  --edge:#2A2730;
  --hair:rgba(237,232,226,.078);
  --hair-2:rgba(237,232,226,.036);
  --mute:#7C7682;
  --mid:#A8A2AC;
  --text:#EDE8E2;
  --pure:#FFFFFF;

  /* meď — pigment značky */
  --pig:#C87A4C;
  --pig-soft:#DCA383;
  --pig-deep:#8E5230;
  --pig-ink:#0B0A0C;
  --zn:#7E96A6;
  --fire:#C25A3E;
  /* odtiene tekutej stuhy v úvode — hrebeň a najhlbší tieň */
  --silk-soft:#F6E7DA;
  --silk-deep:#2B1C30;
  /* zlato pre zvýraznené značky — teplejšie a jasnejšie než medená */
  --gold:#C9A227;
  --gold-hi:#FFF4C9;
  --gold-deep:#9A7A1E;

  --veil:rgba(16,14,20,.62);
  --veil-2:rgba(11,10,14,.78);
  --glass:rgba(237,232,226,.045);
  --grid:rgba(237,232,226,.03);

  /* Dve rodiny, nie štyri. Serif nesie nadpisy sekcií, sans všetko
     ostatné. Monospace zostal výhradne na čísla a kódy produktov —
     ako jazyk popiskov pôsobil lacno a zle sa čítal. */
  --fs:"Instrument Serif",Georgia,"Times New Roman",serif;
  --fd:"Instrument Sans","Helvetica Neue",Arial,sans-serif;
  --fb:"Instrument Sans","Helvetica Neue",Arial,sans-serif;
  --fm:"Instrument Sans","Helvetica Neue",Arial,sans-serif;
  --fn:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;

  --max:1480px;
  --gut:clamp(20px,4.4vw,78px);
  --r-xl:26px; --r-lg:18px; --r-md:12px; --r-sm:7px;
  --e:cubic-bezier(.22,1,.28,1);
  --e2:cubic-bezier(.65,.02,.24,1);
  --t1:.5s; --t2:.85s; --t3:1.35s;

  /* rytmus sekcií — veľa vzduchu, to je liek na preplnenosť */
  --sec-y:clamp(96px,13vw,190px);
}

@media (prefers-color-scheme: light){
  :root:not([data-theme="dark"]){
    --ink:#F2F0EC; --ink-2:#F6F4F0; --panel:#FFFFFF; --panel-2:#FAF8F5;
    --edge:#DFDAD3; --hair:rgba(24,18,14,.105); --hair-2:rgba(24,18,14,.05);
    --mute:#6E6873; --mid:#4E4952; --text:#14101A; --pure:#000000;
    --pig:#A85E33; --pig-soft:#8E5230; --pig-deep:#6F3F23; --pig-ink:#FFFFFF;
    --zn:#476A80; --fire:#9A4433;
    --silk-soft:#FBF3EA; --silk-deep:#6E5540;
    --veil:rgba(255,255,255,.66); --veil-2:rgba(250,248,245,.82);
    --glass:rgba(24,18,14,.03); --grid:rgba(24,18,14,.04);
  }
}
:root[data-theme="light"]{
  --ink:#F2F0EC; --ink-2:#F6F4F0; --panel:#FFFFFF; --panel-2:#FAF8F5;
  --edge:#DFDAD3; --hair:rgba(24,18,14,.105); --hair-2:rgba(24,18,14,.05);
  --mute:#6E6873; --mid:#4E4952; --text:#14101A; --pure:#000000;
  --pig:#A85E33; --pig-soft:#8E5230; --pig-deep:#6F3F23; --pig-ink:#FFFFFF;
  --zn:#476A80; --fire:#9A4433;
  --silk-soft:#FBF3EA; --silk-deep:#6E5540;
  --veil:rgba(255,255,255,.66); --veil-2:rgba(250,248,245,.82);
  --glass:rgba(24,18,14,.03); --grid:rgba(24,18,14,.04);
}

/* ═══ PODSTRÁNKY (ochrana súkromia, 404) ═════════════════
   Písma a farebné tokeny sa sem skladajú z tých istých zdrojov ako
   hlavná stránka (build/make-cf.py), tu je len rozloženie. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--text);font-family:var(--fb);
  font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale}
a{color:inherit}
:focus-visible{outline:2px solid var(--pig);outline-offset:3px;border-radius:2px}
::selection{background:var(--pig);color:var(--pig-ink)}
.skip{position:fixed;left:-999px;top:0;z-index:99;background:var(--pig);color:var(--pig-ink);
  padding:11px 18px;font-size:.8rem;text-decoration:none}
.skip:focus{left:0}

.pbar{position:sticky;top:0;z-index:10;
  background:color-mix(in srgb,var(--ink) 88%,transparent);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid var(--hair-2);padding-top:env(safe-area-inset-top,0px)}
.pbar .in{max-width:1480px;margin:0 auto;padding:0 var(--gut);height:72px;
  display:flex;align-items:center;justify-content:space-between;gap:16px}
.lg{display:flex;align-items:center;color:var(--text);padding-block:8px}
.ctlogo{height:26px;width:calc(26px * 174 / 41.449);display:block}
.back{font-family:var(--fm);font-size:.74rem;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;text-decoration:none;color:var(--text);
  border:1px solid var(--hair);border-radius:100px;padding:12px 18px;
  display:inline-flex;align-items:center;gap:10px;min-height:42px;
  transition:border-color .35s,color .35s}
.back:hover{border-color:var(--pig);color:var(--pig)}

.doc{max-width:760px;margin:0 auto;padding:clamp(48px,8vw,104px) var(--gut) clamp(64px,9vw,120px)}
.eb{font-family:var(--fd);font-size:.72rem;font-weight:600;letter-spacing:.11em;
  text-transform:uppercase;color:var(--pig);display:inline-flex;align-items:center;
  gap:.85em;margin:0 0 18px}
.eb::before{content:"";width:24px;height:1px;background:currentColor;opacity:.6}
.doc h1{font-family:var(--fs);font-weight:400;font-size:clamp(2.2rem,5.4vw,3.6rem);
  line-height:1.06;letter-spacing:-.018em;margin:0 0 14px;text-wrap:balance}
.doc .sub{color:var(--mid);font-size:1.02rem;margin:0 0 clamp(36px,5vw,56px);max-width:56ch}
.doc h2{font-family:var(--fd);font-weight:600;font-size:clamp(1.15rem,2vw,1.4rem);
  letter-spacing:-.018em;line-height:1.25;margin:clamp(40px,5vw,56px) 0 14px;
  padding-top:22px;border-top:1px solid var(--hair-2);scroll-margin-top:96px}
.doc p,.doc li{color:var(--mid);font-size:.97rem}
.doc p{margin:0 0 1em}
.doc strong{color:var(--text);font-weight:600}
.doc ul{margin:0 0 1.1em;padding-left:1.2em}
.doc li{margin:0 0 .55em}
.doc li::marker{color:var(--pig)}
.doc ul.abc{list-style:none;padding-left:0}
.doc .addr{color:var(--text);font-size:.97rem;line-height:1.75;
  border-left:2px solid var(--pig);padding-left:16px}
.doc a{color:var(--text);text-decoration:underline;text-decoration-color:var(--pig);
  text-underline-offset:3px;overflow-wrap:anywhere}
.doc a:hover{color:var(--pig)}

.toc{margin:0 0 clamp(8px,2vw,16px);padding:18px 20px;border:1px solid var(--hair-2);
  border-radius:14px;background:var(--glass)}
.toc b{display:block;font-family:var(--fm);font-size:.7rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--mute);margin-bottom:10px;font-weight:500}
.toc ol{margin:0;padding-left:1.3em;columns:2;column-gap:28px}
.toc li{font-size:.9rem;margin:0 0 .4em;break-inside:avoid}
.toc a{text-decoration:none;color:var(--mid)}
.toc a:hover{color:var(--pig)}
@media (max-width:560px){.toc ol{columns:1}}

.pfoot{border-top:1px solid var(--hair-2)}
.pfoot .in{max-width:1480px;margin:0 auto;padding:24px var(--gut) 34px;display:flex;
  justify-content:space-between;gap:14px;flex-wrap:wrap;font-family:var(--fm);
  font-size:.74rem;letter-spacing:.06em;color:var(--mute)}
.pfoot a{color:var(--mid);text-decoration:none;min-height:40px;display:inline-flex;align-items:center}
.pfoot a:hover{color:var(--pig)}

/* 404 */
.nf{min-height:calc(100svh - 73px);display:flex;align-items:center}
.nf .doc{text-align:left}
.nf .code{font-family:var(--fn);color:var(--pig);font-size:.9rem;letter-spacing:.1em;margin:0 0 14px}
.nf .go{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;align-items:center;gap:12px;padding:15px 25px;border-radius:100px;
  font-family:var(--fm);font-size:.74rem;font-weight:500;letter-spacing:.109em;
  text-transform:uppercase;border:1px solid var(--pig);background:var(--pig);
  color:var(--pig-ink);text-decoration:none}
.btn.gh{background:transparent;border-color:var(--hair);color:var(--text)}
.btn:hover{filter:brightness(1.08)}
/* tlačidlá nie sú odkazy v texte — bez podčiarknutia a s vlastnou farbou */
.doc .btn{text-decoration:none;color:var(--pig-ink)}
.doc .btn.gh{color:var(--text)}
.doc .btn.gh:hover{border-color:var(--pig);color:var(--pig);filter:none}
