/* EventApps — moderní vzhled nad Bootstrapem 5.3 (light/dark přes data-bs-theme) */
:root{
  --ea-accent:#6d5efc;        /* indigo/violet */
  --ea-accent-2:#22d3ee;      /* teal akcent */
  --ea-accent-grad:linear-gradient(135deg,#6d5efc 0%,#a855f7 50%,#22d3ee 120%);
  --ea-radius:16px;
  --bs-body-font-family:'Inter',system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
html[data-bs-theme="light"]{
  --bs-body-bg:#f7f8fc; --bs-body-color:#1c2030;
  --ea-card:#ffffff; --ea-border:rgba(20,20,50,.08); --ea-muted:#6a7080;
  --ea-nav-bg:rgba(255,255,255,.8);
}
html[data-bs-theme="dark"]{
  --bs-body-bg:#0c0e1a; --bs-body-color:#e7e9f3;
  --ea-card:#151829; --ea-border:rgba(255,255,255,.08); --ea-muted:#9aa0b8;
  --ea-nav-bg:rgba(12,14,26,.72);
}
body{background:var(--bs-body-bg);color:var(--bs-body-color);font-family:var(--bs-body-font-family);
  -webkit-font-smoothing:antialiased;letter-spacing:.1px;min-height:100vh;display:flex;flex-direction:column}
h1,h2,h3,h4,.display-1,.display-2,.display-3,.navbar-brand{font-family:'Jakarta','Inter',sans-serif;font-weight:800;letter-spacing:-.02em}
main{flex:1 0 auto}
a{color:var(--ea-accent);text-decoration:none}
a:hover{color:var(--ea-accent)}

/* Navbar */
.ea-nav{backdrop-filter:saturate(160%) blur(14px);background:var(--ea-nav-bg);
  border-bottom:1px solid var(--ea-border);position:sticky;top:0;z-index:1030}
.navbar-brand{display:flex;align-items:center;gap:.55rem;font-size:1.25rem}
.ea-logo{width:34px;height:34px;border-radius:10px;background:var(--ea-accent-grad);
  display:grid;place-items:center;color:#fff;font-weight:800;box-shadow:0 6px 18px rgba(109,94,252,.35)}
.ea-nav .nav-link{font-weight:600;color:var(--bs-body-color);opacity:.85}
.ea-nav .nav-link:hover{opacity:1;color:var(--ea-accent)}
.ea-iconbtn{border:1px solid var(--ea-border);background:transparent;color:var(--bs-body-color);
  width:40px;height:40px;border-radius:12px;display:inline-grid;place-items:center}
.ea-iconbtn:hover{border-color:var(--ea-accent);color:var(--ea-accent)}
.ea-cart-badge{position:absolute;top:-6px;right:-6px;font-size:.65rem}

/* Buttons */
.btn-accent{background:var(--ea-accent-grad);border:0;color:#fff;font-weight:700;border-radius:12px;padding:.6rem 1.25rem}
.btn-accent:hover{color:#fff;filter:brightness(1.06);transform:translateY(-1px)}
.btn-outline-soft{border:1px solid var(--ea-border);color:var(--bs-body-color);border-radius:12px;font-weight:600}
.btn-outline-soft:hover{border-color:var(--ea-accent);color:var(--ea-accent)}

/* Cards */
.ea-card{background:var(--ea-card);border:1px solid var(--ea-border);border-radius:var(--ea-radius);
  box-shadow:0 1px 2px rgba(10,10,30,.04)}
.ea-card:hover{box-shadow:0 18px 50px -18px rgba(60,40,160,.35)}
.app-card{transition:transform .18s ease,box-shadow .18s ease;height:100%}
.app-card:hover{transform:translateY(-4px)}
.app-icon{width:56px;height:56px;border-radius:14px;background:var(--ea-accent-grad);color:#fff;
  display:grid;place-items:center;font-size:1.6rem;box-shadow:0 8px 22px rgba(109,94,252,.32)}
.badge-free{background:rgba(34,211,238,.16);color:#0ea5b7;font-weight:700}
html[data-bs-theme=dark] .badge-free{color:#22d3ee}

/* Hero */
.hero{position:relative;overflow:hidden;border-radius:28px;padding:4.5rem 2rem;
  background:radial-gradient(1200px 400px at 10% -10%,rgba(109,94,252,.22),transparent 60%),
             radial-gradient(900px 500px at 100% 0%,rgba(34,211,238,.16),transparent 55%);
  border:1px solid var(--ea-border)}
.hero h1{font-size:clamp(2.1rem,5vw,3.6rem);line-height:1.05}
.hero .lead{color:var(--ea-muted);max-width:620px}
.text-grad{background:var(--ea-accent-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.text-muted-2{color:var(--ea-muted)!important}

/* Feature */
.feature-ico{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;
  background:rgba(109,94,252,.12);color:var(--ea-accent);font-size:1.3rem}

/* Dashboard */
.ea-side{background:var(--ea-card);border:1px solid var(--ea-border);border-radius:var(--ea-radius);padding:.5rem}
.ea-side a{display:flex;align-items:center;gap:.6rem;padding:.65rem .85rem;border-radius:10px;color:var(--bs-body-color);font-weight:600}
.ea-side a:hover{background:rgba(109,94,252,.08);color:var(--ea-accent)}
.ea-side a.active{background:var(--ea-accent-grad);color:#fff}
.stat{padding:1.25rem 1.4rem;border-radius:var(--ea-radius)}
.stat .n{font-size:1.9rem;font-weight:800;font-family:'Jakarta'}
.lic-key{font-family:ui-monospace,Menlo,Consolas,monospace;letter-spacing:.5px}

/* QR */
.qr-box{background:#fff;padding:16px;border-radius:16px;display:inline-block}
.table thead th{color:var(--ea-muted);font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}
.form-control,.form-select{border-radius:11px;background:var(--ea-card);border-color:var(--ea-border);color:var(--bs-body-color)}
.form-control:focus{border-color:var(--ea-accent);box-shadow:0 0 0 .2rem rgba(109,94,252,.18);background:var(--ea-card);color:var(--bs-body-color)}
footer.ea-foot{border-top:1px solid var(--ea-border);background:var(--ea-card);margin-top:4rem}
