/* Shared look for all pages: cream paper, gold foil, Bodoni Moda / Pinyon Script / Karla */
:root{
  --bg:#fbf8f2; --bg2:#f4ebdc; --paper:#ffffff; --ink:#2a2420; --muted:#7a7068;
  --acc:#a47e3b; --acc-deep:#7f6130; --gold:#b08a4a; --line:#ece3d3; --on-acc:#ffffff;
  --da:#4a8a5f; --ceka:#c7852e; --ne:#b5544c;
  --env1:#ece1cb; --env2:#dfcfad; --env3:#e6d8bb; --seal:#4a3815;
  --foil:linear-gradient(100deg,#8a6526 0%,#b8913f 18%,#ecd393 32%,#b48c3c 46%,#8a6526 62%,#c9a457 80%,#94702f 100%);
  --goldbtn:linear-gradient(135deg,#d2ae64 0%,#b08a4a 45%,#94702f 100%);
  --f-script:"Pinyon Script","Snell Roundhand",cursive;
  --f-head:"Bodoni Moda","Didot",Georgia,serif;
  --f-body:"Karla",system-ui,-apple-system,"Segoe UI",sans-serif;
  /* "only light": phones with dark mode for websites (Samsung Internet, Chrome) must not darken the invitation */
  color-scheme:only light;
}
/* Lux: emerald paper inside, gold stays */
:root[data-tema="smaragd"]{
  --acc:#24483f; --acc-deep:#17322b; --bg:#f5f3ec; --bg2:#e9e6da; --line:#dfe3da;
  --env1:#2c5449; --env2:#24483f; --env3:#29503f; --seal:#24483f;
}
/* Ćirilica: fonts that have Cyrillic letters (Bodoni Moda, Pinyon Script and Karla do not) */
:root[data-pismo="cirilica"]{
  --f-script:"Great Vibes","Snell Roundhand",cursive;
  --f-head:"Playfair Display","Didot",Georgia,serif;
  --f-body:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
}
:root[data-pismo="cirilica"] body{font-variant-numeric:lining-nums}
/* Grčki: fontovi sa grčkim slovima (fontovi/grcki.css); latinični znakovi i dalje dolaze iz naših fontova */
:root[lang="el"]{
  --f-script:"Grcki Script","Pinyon Script",serif;
  --f-head:"GFS Didot","Bodoni Moda","Didot",Georgia,serif;
  --f-body:"Manrope","Karla",system-ui,-apple-system,"Segoe UI",sans-serif;
}
/* A Greek invitation switched to German: the German text keeps our fonts, but the Greek names (and anything else
   Greek) still get Greek letters instead of a system font */
:root[data-grcki]:not([lang="el"]){
  --f-script:"Pinyon Script","Grcki Script",serif;
  --f-head:"Bodoni Moda","GFS Didot","Didot",Georgia,serif;
  --f-body:"Karla","Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
}
.veliko-a{font-family:"Pinyon Script",var(--f-script)}
/* Browsers that darken websites on their own (Samsung Internet, Chrome "dark mode for websites") leave a page alone
   when it has its own dark styles; ours are the same light page */
@media (prefers-color-scheme:dark){:root{color-scheme:only light}html,body{forced-color-adjust:none}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;background:linear-gradient(180deg,var(--bg) 0%,var(--bg2) 100%) fixed;color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.6}
[hidden]{display:none!important}
a{color:var(--acc)}
.foil{background:var(--foil);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--gold)}
.script{font-family:var(--f-script);font-weight:400}
.serif{font-family:var(--f-head)}
.capk{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--gold)}
.muted{color:var(--muted)}

.kartica{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:24px 20px}
h1,h2,h3{font-family:var(--f-head);font-weight:600;line-height:1.2;margin:0;text-wrap:balance}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:700;font-size:14px;letter-spacing:.04em;padding:12px 18px;border-radius:6px;border:0;background:var(--goldbtn);color:#fff;cursor:pointer;text-decoration:none;min-height:44px}
:root[data-tema="smaragd"] .btn{background:var(--acc)}
.btn:disabled{opacity:.55;cursor:default}
.btn-o{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-weight:500;font-size:14px;padding:9px 14px;border-radius:99px;border:1px solid var(--acc);background:transparent;color:var(--acc);cursor:pointer;text-decoration:none;min-height:40px}
.btn-o:hover{background:var(--acc);color:var(--paper)}
.btn-t{font:inherit;font-size:14px;background:none;border:0;padding:6px 4px;color:var(--acc);text-decoration:underline;cursor:pointer}
.btn-ne{background:none;border:1px solid var(--ne);color:var(--ne)}
.btn-ne:hover{background:var(--ne);color:#fff}
.btn:focus-visible,.btn-o:focus-visible,.btn-t:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* Form fields */
label,.lbl{font-size:13px;font-weight:700;letter-spacing:.02em}
input[type=text],input[type=tel],input[type=email],input[type=date],input[type=time],input[type=number],input[type=search],input[type=url],select,textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:10px 12px;min-height:44px}
textarea{min-height:80px;resize:vertical}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--acc);outline-offset:1px}
.polje{display:flex;flex-direction:column;gap:6px}
.pomoc{font-size:13px;color:var(--muted);margin:0}
.greska{color:var(--ne);font-size:14px;margin:0}

/* Status pills */
.pill{display:inline-block;font-size:12px;font-weight:700;padding:2px 9px;border-radius:99px;white-space:nowrap;border:1px solid currentColor}
.pill.da{color:var(--da)} .pill.ne{color:var(--ne)} .pill.ceka{color:var(--ceka)}

/* Toast */
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);background:var(--ink);color:#fff;padding:10px 16px;border-radius:99px;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:50;max-width:calc(100% - 32px);text-align:center}
.toast.vidljiv{opacity:1;transform:translate(-50%,0)}

.lokalno{position:fixed;top:0;left:0;right:0;z-index:40;background:#2a2420;color:#f4ebdc;font-size:12px;text-align:center;padding:4px 12px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
