/* ============================================================
   Harmony Fields — HALLOWEEN 2026 (globální sezóna)
   Vypnutí: smaž odkaz na halloween.css ve stránkách
   ============================================================ */

:root{
  --green:#ff8c3a; /* alias against leftovers */
  --bg:#07060a;
  --bg2:#0c0a10;
  --surface:#121018;
  --surface2:#18141f;
  --elevated:#1e1a28;
  --ink:#f2ece4;
  --muted:#9a9088;
  --text2:#c8beb4;
  --line:rgba(255,180,100,.1);
  --line-solid:#2a2430;
  --accent:#ff8c3a;
  --accent-soft:rgba(255,140,58,.14);
  --accent-text:#ffb06a;
  --warn:#f0b429;
  --warn-soft:rgba(240,180,41,.12);
  --danger:#e07a7a;
  --danger-soft:rgba(224,122,122,.12);
  --info:#9b6bff;
  --gold:#e8c878;
  --gold-soft:rgba(232,200,120,.12);
}

html,body{
  background:var(--bg)!important;
  color:var(--ink);
}
body,
body.portal-dark,
body.site-dark,
body.login-page{
  background-image:
    radial-gradient(ellipse 75% 45% at 90% -8%,rgba(255,140,58,.13),transparent 52%),
    radial-gradient(ellipse 50% 40% at 0% 100%,rgba(155,107,255,.1),transparent 48%)!important;
  background-attachment:fixed;
  background-color:var(--bg)!important;
}

/* Buttons — dýně místo zelené */
.btn:not(.secondary):not(.danger):not(.ghost){
  background:linear-gradient(180deg,#ff9a4a,#d45a12)!important;
  color:#1a0c04!important;
  box-shadow:0 4px 16px rgba(255,140,58,.28)!important;
}
.btn:not(.secondary):not(.danger):hover{
  filter:brightness(1.06);
}
.btn.secondary:hover{
  border-color:rgba(255,140,58,.45)!important;
  color:var(--accent-text)!important;
}

/* Sidebar */
.sidebar,
aside.sidebar,
#sidebar{
  background:linear-gradient(180deg,rgba(255,140,58,.07) 0%,transparent 140px),#0c0a10!important;
  border-right-color:var(--line)!important;
}
.sidenav a.active,
.nav a.active,
.sidenav a.on{
  background:var(--accent-soft)!important;
  color:var(--accent-text)!important;
  box-shadow:inset 2px 0 0 var(--accent)!important;
}
.brandmark,
.side-brand .brandmark,
.logo i{
  background:linear-gradient(145deg,#ff9a4a,#d45a12)!important;
  box-shadow:0 0 18px rgba(255,140,58,.35)!important;
}

/* Hero / page headers */
.page-hero,
.ov-hero,
.biz-hero{
  background:var(--surface)!important;
  border-color:var(--line)!important;
  border-left:3px solid var(--accent)!important;
  box-shadow:0 8px 28px rgba(0,0,0,.25),0 0 32px rgba(255,140,58,.05)!important;
}
.page-hero .eyebrow,
.ov-hero .eyebrow,
.eyebrow{
  color:var(--accent)!important;
}

/* Cards / panels */
.panel,
.panel-pad,
.ov-panel,
.ov-stat,
.stat,
.stat-card,
.card,
.onshift-panel,
.onshift-card{
  background:var(--surface)!important;
  border-color:var(--line)!important;
}
.ov-stat-green .ov-stat-val,
.ov-stat-val.acc,
.text-link,
.table strong,
.sz-pill.on,
.pill.on{
  color:var(--accent-text)!important;
}
.onshift-card,
.onshift-av{
  background:var(--accent-soft)!important;
  border-color:rgba(255,140,58,.2)!important;
  color:var(--accent-text)!important;
}
.onshift-count,
.onshift-time,
.onshift-pulse{
  background:var(--accent-soft)!important;
  color:var(--accent-text)!important;
}
.onshift-pulse{background:var(--accent)!important}

/* Inputs focus */
.input:focus,
.select:focus,
.textarea:focus{
  border-color:rgba(255,140,58,.5)!important;
  box-shadow:0 0 0 3px rgba(255,140,58,.12)!important;
}

/* Alerts success */
.alert.success{
  background:rgba(255,140,58,.1)!important;
  border-color:rgba(255,140,58,.28)!important;
  color:#ffd0a0!important;
}

/* Tables */
.table tbody tr:hover{
  background:rgba(255,140,58,.05)!important;
}

/* Topbar landing */
.topbar{
  background:rgba(7,6,10,.92)!important;
  border-bottom-color:var(--line)!important;
}

/* Login */
.login-page .login-box,
.login-card,
.auth-card{
  background:var(--surface)!important;
  border:1px solid var(--line)!important;
  box-shadow:0 16px 48px rgba(0,0,0,.4),0 0 40px rgba(255,140,58,.06)!important;
}

/* Tags / badges */
.tag,
.badge,
.sz-pill.on{
  background:var(--accent-soft)!important;
  color:var(--accent-text)!important;
}

/* Links accent */
a.text-link,
.sidenav a:hover{
  color:var(--accent-text);
}

/* Soft moon glow corner decoration on portal main */
body.portal-dark .main::before{
  content:'';
  position:fixed;
  top:24px;right:28px;
  width:42px;height:42px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 35%,#fff5d6,#e8c878);
  box-shadow:0 0 28px rgba(255,220,120,.35);
  opacity:.45;
  pointer-events:none;
  z-index:5;
}

/* Falling leaves layer (injected via JS) */
.hf-leaves{
  pointer-events:none;
  position:fixed;
  inset:0;
  overflow:hidden;
  z-index:9998;
}
.hf-leaf{
  position:absolute;
  top:-24px;
  opacity:.3;
  animation:hf-fall linear infinite;
  font-size:14px;
  user-select:none;
}
@keyframes hf-fall{
  0%{transform:translateY(-8vh) rotate(0deg);opacity:0}
  12%{opacity:.35}
  100%{transform:translateY(110vh) rotate(380deg);opacity:0}
}

/* Scrollbar */
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{
  background:rgba(255,140,58,.25);
  border-radius:8px;
}
::-webkit-scrollbar-thumb:hover{background:rgba(255,140,58,.4)}

/* ============================================================
   HARD overrides — zabít zbývající zelenou z style.css (!important)
   ============================================================ */

/* body green glow from style.css */
body{
  background-image:
    radial-gradient(ellipse 75% 45% at 90% -8%,rgba(255,140,58,.13),transparent 52%),
    radial-gradient(ellipse 50% 40% at 0% 100%,rgba(155,107,255,.1),transparent 48%)!important;
}

/* Buttons — all variants with hardcoded green */
.btn,
.btn:not(.secondary),
button.btn,
a.btn{
  background:linear-gradient(180deg,#ff9a4a,#d45a12)!important;
  color:#1a0c04!important;
  box-shadow:0 4px 16px rgba(255,140,58,.28)!important;
}
.btn.secondary,
a.btn.secondary,
button.btn.secondary{
  background:var(--elevated)!important;
  color:var(--text2)!important;
  border:1px solid var(--line)!important;
  box-shadow:none!important;
}
.btn.secondary:hover,
a.btn.secondary:hover{
  border-color:rgba(255,140,58,.45)!important;
  color:var(--accent-text)!important;
}
.btn:hover{box-shadow:0 6px 18px rgba(255,140,58,.3)!important}

/* Brand / logo marks */
.brandmark,
.side-brand .brandmark,
.logo .brandmark,
a.brand .brandmark{
  background:linear-gradient(145deg,#ff9a4a,#d45a12)!important;
  color:#1a0c04!important;
  box-shadow:0 4px 14px rgba(255,140,58,.3)!important;
}

/* Landing hover greens */
.farm-card:hover,
.product:hover,
.step:hover{
  border-color:rgba(255,140,58,.35)!important;
}

/* Login page */
.login-page{
  background:
    radial-gradient(500px 280px at 30% 0%,rgba(255,140,58,.18),transparent 65%),
    radial-gradient(ellipse 50% 40% at 100% 100%,rgba(155,107,255,.12),transparent 50%),
    var(--bg)!important;
}
.switch a.active{
  background:var(--accent)!important;
  color:#1a0c04!important;
}

/* Sidebar hard greens from polish */
.sidebar,
aside.sidebar,
#sidebar,
.side{
  background:
    linear-gradient(180deg,rgba(255,140,58,.1) 0%,transparent 140px),
    #0c0a10!important;
  border-right:1px solid rgba(255,140,58,.14)!important;
}
.side-bottom,
.sidebar .side-bottom{
  border-top-color:rgba(255,140,58,.12)!important;
  background:#0c0a10!important;
}
.sidenav a.active,
.sidenav a.on,
nav.sidenav a.active{
  background:rgba(255,140,58,.14)!important;
  color:#ffb06a!important;
  box-shadow:inset 2px 0 0 #ff8c3a!important;
  -webkit-text-fill-color:#ffb06a!important;
}
.sidenav a:hover{color:#ffd0a0!important}
.nav-group,
.sidenav .nav-group,
.side .g{
  color:#6a6058!important;
}
.side-brand small{color:#6a6058!important}
.profile,
.user-chip{
  background:rgba(255,140,58,.08)!important;
  border-color:rgba(255,140,58,.2)!important;
}
.avatar,
.profile .avatar{
  background:rgba(255,140,58,.16)!important;
  color:#ffb06a!important;
}

/* Page heroes — kill green left border + gradients */
.page-hero,
.ov-hero,
.biz-hero,
.hero-panel{
  background:
    linear-gradient(120deg,rgba(255,140,58,.08),transparent 42%),
    linear-gradient(135deg,#1a1410 0%,#0c0a10 100%)!important;
  border:1px solid rgba(255,140,58,.14)!important;
  border-left:3px solid #ff8c3a!important;
}
.page-hero h1,
.ov-hero h1{color:#f2ece4!important}
.page-hero .eyebrow,
.ov-hero .eyebrow,
.eyebrow{color:#ff8c3a!important}

/* Stats / KPI cards */
.ov-stat,
.stat,
.stat-card,
.stat.green,
.ov-stat-green{
  border-color:rgba(255,140,58,.14)!important;
  background:linear-gradient(145deg,rgba(255,140,58,.08),transparent 55%),var(--surface)!important;
}
.stat.green::after,
.ov-stat-green::before,
.ov-stat::before{
  background:var(--accent)!important;
}
.ov-stat-green .ov-stat-val,
.ov-stat-val,
.stat-card strong,
.stat b{
  color:#ffb06a!important;
}
.stat-card.on{
  border-color:rgba(255,140,58,.4)!important;
  background:linear-gradient(160deg,#1a1410,#0e0c12)!important;
}

/* Panels */
.panel,
.panel-pad,
.ov-panel,
.card{
  border-color:rgba(255,140,58,.12)!important;
  background:var(--surface)!important;
}
.panel:hover,
.panel-pad:hover{
  border-color:rgba(255,140,58,.28)!important;
}

/* Focus rings */
.input:focus,
.select:focus,
.textarea:focus,
input:focus,
select:focus,
textarea:focus{
  border-color:rgba(255,140,58,.5)!important;
  box-shadow:0 0 0 3px rgba(255,140,58,.12)!important;
}

/* Table headers / rows */
.table th{
  border-bottom-color:rgba(255,140,58,.15)!important;
}
.table tbody tr:hover{
  background:rgba(255,140,58,.06)!important;
}

/* On-shift */
.onshift-card,
.onshift-av,
.onshift-count,
.onshift-time{
  background:rgba(255,140,58,.12)!important;
  border-color:rgba(255,140,58,.22)!important;
  color:#ffb06a!important;
}
.onshift-pulse{background:#ff8c3a!important}

/* Text accents */
.text-link,
a.text-link,
.sz-pill.on,
.pill.on,
.tag.ok,
.badge.ok{
  color:#ffb06a!important;
}
.tag.ok,
.badge.ok,
.sz-pill.on,
.pill.on{
  background:rgba(255,140,58,.14)!important;
}

/* Scrollbar */
.sidenav::-webkit-scrollbar-thumb,
.sidebar::-webkit-scrollbar-thumb{
  background:rgba(255,140,58,.3)!important;
}

/* Success alerts that were green-tinted */
.alert.success,
.flash.success{
  background:rgba(255,140,58,.12)!important;
  border-color:rgba(255,140,58,.3)!important;
  color:#ffd0a0!important;
}

/* Any leftover green text utilities */
.text-success,
.text-green,
.color-accent,
.accent-color{
  color:#ffb06a!important;
}

/* Landing specific */
.site-dark .btn,
.site-dark a.btn{
  background:linear-gradient(180deg,#ff9a4a,#d45a12)!important;
  color:#1a0c04!important;
}
.site-dark .brandmark{
  background:linear-gradient(145deg,#ff9a4a,#d45a12)!important;
}


/* Stats page */
.ms-hero{
  background:linear-gradient(135deg,#1a1410,#0c0a10)!important;
  border-color:rgba(255,140,58,.2)!important;
}
.ms-card.accent{
  border-color:rgba(255,140,58,.35)!important;
  background:linear-gradient(160deg,#1a1410,#0e0c12)!important;
}
.ms-pay{
  background:linear-gradient(135deg,#1a1410,#121018)!important;
}

/* Order codes / table accents */
.table td strong,
.table strong,
.ov-stock-row b,
.ov-stock b{
  color:#ffb06a!important;
}

/* Status dots that were lime green */
.status-dot,
.dot-live,
.onshift-pulse,
span[style*="background:#ff8c3a"],
.st-ready,
.badge-ready{
  background:#ff8c3a!important;
}


/* LOGIN — full override */
body.login-page,
.login-page{
  background:
    radial-gradient(600px 320px at 25% -5%,rgba(255,140,58,.22),transparent 60%),
    radial-gradient(ellipse 45% 35% at 100% 100%,rgba(155,107,255,.14),transparent 50%),
    #07060a!important;
}
.login-page .btn,
.login-page button.btn,
.login-page a.btn,
.login-page .btn.full{
  background:linear-gradient(180deg,#ff9a4a,#d45a12)!important;
  color:#1a0c04!important;
  border:0!important;
  box-shadow:0 4px 18px rgba(255,140,58,.35)!important;
}
.login-page .brandmark,
.login-page .brand .brandmark{
  background:linear-gradient(145deg,#ff9a4a,#d45a12)!important;
  box-shadow:0 0 20px rgba(255,140,58,.4)!important;
}
.login-page .switch a.active{
  background:#ff8c3a!important;
  color:#1a0c04!important;
}
.login-page a{color:#ffb06a}
.login-page .input:focus{
  border-color:rgba(255,140,58,.55)!important;
  box-shadow:0 0 0 3px rgba(255,140,58,.15)!important;
}

/* Návody page chips/cards */
.nv-chip,
.nv-ico,
.nv-badge,
.nv-tip,
.nv-card[open],
.nv-card:hover{
  border-color:rgba(255,140,58,.35)!important;
}
.nv-chip,
.nv-ico,
.nv-badge{
  background:rgba(255,140,58,.14)!important;
  color:#ffb06a!important;
}

/* Soutěže pills */
.pill.on,
.sz-pill.on,
.tabs a.on{
  background:rgba(255,140,58,.14)!important;
  color:#ffb06a!important;
  border-color:rgba(255,140,58,.3)!important;
}
.sum-pos{color:#ffb06a!important}

/* Sidebar muted text that was olive */
.sidenav a,
.side-brand small,
.nav-group{
  /* keep mute, but not olive-green */
}
.sidenav a:not(.active):not(.on){color:#9a9088!important}


/* ========== FINAL LOCK v5 — login / landing / everything ========== */
body.login-page,
.login-page{
  background:
    radial-gradient(ellipse 70% 50% at 50% -15%,rgba(255,140,58,.2),transparent 55%),
    radial-gradient(ellipse 40% 35% at 100% 100%,rgba(155,107,255,.12),transparent 50%),
    #07060a !important;
}
.login-card,
.login-page .login-card{
  background:#121018 !important;
  border:1px solid rgba(255,180,100,.12) !important;
  box-shadow:0 20px 50px rgba(0,0,0,.45),0 0 40px rgba(255,140,58,.08) !important;
}
.login-page .btn,
.login-page .btn.full,
.login-card .btn,
.login-card .btn.full,
.login-page button.btn{
  background:linear-gradient(180deg,#ff9a4a,#d45a12) !important;
  color:#1a0c04 !important;
  box-shadow:0 4px 16px rgba(255,140,58,.3) !important;
  border:0 !important;
}
.login-page .brandmark,
.login-card .brandmark{
  background:linear-gradient(145deg,#ff9a4a,#d45a12) !important;
  color:#1a0c04 !important;
  box-shadow:0 4px 14px rgba(255,140,58,.35) !important;
}
.login-page .switch a.active{
  background:rgba(255,140,58,.18) !important;
  color:#ffb06a !important;
}
.login-page a:not(.btn){color:#ffb06a !important}

body.site-dark .hero,
.site-dark .hero{
  background:
    radial-gradient(ellipse 900px 420px at 80% 10%,rgba(255,140,58,.14),transparent 55%),
    #07060a !important;
}
.site-dark .topbar{
  background:rgba(7,6,10,.94) !important;
  border-bottom:1px solid rgba(255,140,58,.14) !important;
}
.site-dark .btn:not(.secondary){
  background:linear-gradient(180deg,#ff9a4a,#d45a12) !important;
  color:#1a0c04 !important;
}

/* progress bars / money positive that were emerald */
.ql-bar.done > span,
.badge-prijem,
.sum-pos,
.ql-ok{
  background:linear-gradient(90deg,#d45a12,#ff8c3a) !important;
  color:#ffb06a !important;
}
.badge-prijem{background:rgba(255,140,58,.18) !important}


/* FINAL sweep v4 — nic zeleného */
:root{
  --accent:#ff8c3a!important;
  --accent-soft:rgba(255,140,58,.14)!important;
  --accent-text:#ffb06a!important;
  --green:#ff8c3a!important;
}
.login-page,
body.login-page{
  background:
    radial-gradient(500px 280px at 30% 0%,rgba(255,140,58,.2),transparent 65%),
    radial-gradient(ellipse 45% 35% at 100% 100%,rgba(155,107,255,.12),transparent 50%),
    #07060a!important;
}
.login-card,
.login-box,
.auth-card,
.login-page .panel,
.login-page .card{
  background:#121018!important;
  border:1px solid rgba(255,180,100,.12)!important;
}
.login-page .btn,
.login-page button.btn,
.login-page a.btn{
  background:linear-gradient(180deg,#ff9a4a,#d45a12)!important;
  color:#1a0c04!important;
}
.login-page .switch a.active,
.switch a.active{
  background:#ff8c3a!important;
  color:#1a0c04!important;
}
.login-page a,
.login-page .text-link{color:#ffb06a!important}
.login-page .brandmark{
  background:linear-gradient(145deg,#ff9a4a,#d45a12)!important;
}

/* Landing index */
.site-dark .eyebrow,
.hero .eyebrow,
.farm-card .eyebrow,
.portal-banner .eyebrow{
  color:#ff8c3a!important;
}
.site-dark .btn:not(.secondary){
  background:linear-gradient(180deg,#ff9a4a,#d45a12)!important;
  color:#1a0c04!important;
}
.site-dark .brandmark{
  background:linear-gradient(145deg,#ff9a4a,#d45a12)!important;
}

/* Generic green class names still used in HTML */
.ov-stat-green .ov-stat-val,
.stat.green .val,
.dot-green,
.status-dot.dot-green{
  color:#ffb06a!important;
  background-color:transparent;
}
.status-dot.dot-green{background:#ff8c3a!important}
