/* NOVA Rozvoz – spoločný vzhľad (farby a tlačidlá podľa systému NOVA: hlavné tmavé so zlatým lemom, vedľajšie biele) */
@font-face { font-family: 'SS3'; src: url('/spolocne/ss3-Regular.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'SS3'; src: url('/spolocne/ss3-Bold.ttf') format('truetype'); font-weight: 700; font-display: swap; }
:root {
  --tmava: #2b2723; --tmava2: #3a352f; --zlata: #e3c77d; --zlata-t: #8a6d2b; --pozadie: #f4efe6; --karta: #ffffff; --svetla: #f7f3ec;
  --ciara: #e3d9c6; --text: #2b2723; --text2: #6b6258; --zelena: #2f6b3a; --zelena-bg: #e6f0e4; --cervena: #a3352b; --cervena-bg: #f7e4e1; --oranzova: #9a5b12; --oranzova-bg: #fbeedb;
  --r: 10px; --tien: 0 1px 3px rgba(43,39,35,.08), 0 4px 14px rgba(43,39,35,.06);
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--pozadie); color: var(--text); font: 16px/1.45 'SS3', 'Source Sans 3', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; }
a { color: var(--zlata-t); }
h1, h2, h3 { margin: 0 0 .4em; line-height: 1.2; }
h1 { font-size: 1.45rem; } h2 { font-size: 1.2rem; } h3 { font-size: 1.05rem; }
.skryte { display: none !important; }
.tlac { display: inline-flex; align-items: center; justify-content: center; gap: .45em; min-height: 48px; padding: .7em 1.2em; border-radius: var(--r); border: 1px solid var(--zlata); background: var(--tmava); color: #fff; font: inherit; font-weight: 700; text-decoration: none; cursor: pointer; -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
.tlac:active { transform: translateY(1px); }
.tlac:disabled { opacity: .45; cursor: default; }
.tlac.vedlajsie { background: #fff; color: var(--tmava); border-color: var(--ciara); }
.tlac.nebezpecne { background: #fff; color: var(--cervena); border-color: #e2b8b2; }
.tlac.zelene { background: var(--zelena); border-color: var(--zelena); }
.tlac.male { min-height: 38px; padding: .45em .85em; font-size: .92rem; }
.tlac.plne { width: 100%; }
.karta { background: var(--karta); border-radius: 14px; box-shadow: var(--tien); padding: 16px; }
.stitok { display: inline-block; padding: .15em .6em; border-radius: 999px; font-size: .8rem; font-weight: 700; background: var(--svetla); color: var(--text2); white-space: nowrap; }
.stitok.ok { background: var(--zelena-bg); color: var(--zelena); }
.stitok.zle { background: var(--cervena-bg); color: var(--cervena); }
.stitok.pozor { background: var(--oranzova-bg); color: var(--oranzova); }
.stitok.tmavy { background: var(--tmava); color: var(--zlata); }
label { display: block; font-weight: 700; font-size: .92rem; margin: .8em 0 .3em; }
input[type=text], input[type=email], input[type=tel], input[type=password], input[type=number], input[type=date], select, textarea {
  width: 100%; min-height: 48px; padding: .6em .75em; border: 1px solid var(--ciara); border-radius: var(--r); background: #fff; color: var(--text); font: inherit; }
textarea { min-height: 90px; resize: vertical; }
input:focus, select:focus, textarea:focus { outline: 2px solid var(--zlata); outline-offset: 1px; border-color: var(--zlata); }
.chyba-text { color: var(--cervena); font-weight: 700; margin: .6em 0; }
.jemny { color: var(--text2); font-size: .9rem; }
.riadok { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.medzera { flex: 1; }
.hlavicka { background: var(--tmava); color: #fff; border-bottom: 3px solid var(--zlata); padding: 10px 16px; padding-top: calc(10px + env(safe-area-inset-top)); display: flex; align-items: center; gap: 12px; position: sticky; top: 0; z-index: 10; }
.hlavicka img.logo { height: 22px; display: block; }
.hlavicka .nazov-app { white-space: nowrap; color: var(--zlata); font-weight: 700; font-size: .85rem; letter-spacing: .08em; text-transform: uppercase; }
.oznam { position: fixed; left: 50%; bottom: calc(18px + env(safe-area-inset-bottom)); transform: translateX(-50%); background: var(--tmava); color: #fff; border: 1px solid var(--zlata); padding: .7em 1.1em; border-radius: var(--r); z-index: 100; max-width: calc(100% - 32px); box-shadow: var(--tien); }
