/*
Theme Name:  еВолонтер
Theme URI:   https://evolonter.rs
Description: Футуристичка тема за еВолонтер волонтерску платформу — модерна, responsive, ћирилица.
Version:     1.0.0
Author:      eVolonter Tim
Author URI:  https://evolonter.rs
Text Domain: evolonter-theme
Requires at least: 6.0
Requires PHP: 8.0
License:     GPL-2.0+
*/

/* ═══════════════════════════════════════════════
   DESIGN TOKENS
   ═══════════════════════════════════════════════ */
:root {
    --ev-primary:       #6366f1;
    --ev-primary-dark:  #4f46e5;
    --ev-primary-light: #818cf8;
    --ev-primary-glow:  rgba(99,102,241,.35);
    --ev-accent:        #06d6a0;
    --ev-accent-dark:   #05b788;
    --ev-accent-glow:   rgba(6,214,160,.30);
    --ev-hot:           #f43f5e;
    --ev-orange:        #f59e0b;
    --ev-cyan:          #22d3ee;

    --ev-bg:            #0a0e1a;
    --ev-surface:       #111827;
    --ev-surface-2:     #1e293b;
    --ev-surface-3:     #263347;
    --ev-glass:         rgba(17,24,39,.60);
    --ev-glass-border:  rgba(255,255,255,.08);

    --ev-text:          #f1f5f9;
    --ev-text-dim:      #94a3b8;
    --ev-text-muted:    #64748b;

    --ev-radius:        12px;
    --ev-radius-lg:     20px;
    --ev-container:     1200px;
    --ev-font:          'Inter','Noto Sans','Segoe UI',system-ui,-apple-system,sans-serif;
    --ev-mono:          'JetBrains Mono','Fira Code',monospace;
    --ev-shadow:        0 4px 24px rgba(0,0,0,.4);
    --ev-shadow-glow:   0 0 40px var(--ev-primary-glow);
    --ev-transition:    .25s cubic-bezier(.4,0,.2,1);
}

/* ═══════════════════════════════════════════════
   RESET / BASE
   ═══════════════════════════════════════════════ */
*,*::before,*::after { box-sizing:border-box }
html { scroll-behavior:smooth; }
body {
    margin:0;
    font-family:var(--ev-font);
    font-size:16px;
    line-height:1.7;
    color:var(--ev-text);
    background:var(--ev-bg);
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
}
a       { color:var(--ev-primary-light); text-decoration:none; transition:color var(--ev-transition); }
a:hover { color:var(--ev-accent); text-decoration:none; }
img { max-width:100%; height:auto; display:block; }
h1,h2,h3,h4,h5,h6 { margin-top:0; line-height:1.25; }
::selection { background:var(--ev-primary); color:#fff; }

/* ═══════════════════════════════════════════════
   UTILITY
   ═══════════════════════════════════════════════ */
.evt-container { max-width:var(--ev-container); margin:0 auto; padding:0 24px; }
.evt-main { min-height:60vh; }
.ev-gradient-text {
    background:linear-gradient(135deg,var(--ev-primary-light),var(--ev-accent));
    -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}

/* ═══════════════════════════════════════════════
   BUTTONS
   ═══════════════════════════════════════════════ */
.evt-btn {
    display:inline-flex; align-items:center; gap:8px;
    padding:12px 28px;
    border:none; border-radius:var(--ev-radius);
    font-family:var(--ev-font); font-size:.95rem; font-weight:600;
    cursor:pointer; text-decoration:none;
    transition:all var(--ev-transition);
    background:linear-gradient(135deg,var(--ev-primary),var(--ev-primary-dark));
    color:#fff;
    box-shadow:0 2px 12px var(--ev-primary-glow);
    position:relative; overflow:hidden;
}
.evt-btn::after {
    content:''; position:absolute; inset:0;
    background:linear-gradient(135deg,transparent 40%,rgba(255,255,255,.1) 50%,transparent 60%);
    transform:translateX(-100%); transition:transform .5s;
}
.evt-btn:hover::after { transform:translateX(100%); }
.evt-btn:hover {
    transform:translateY(-2px);
    box-shadow:0 6px 24px var(--ev-primary-glow);
    color:#fff;
}
.evt-btn:active { transform:translateY(0); }
.evt-btn--lg { padding:16px 36px; font-size:1.05rem; border-radius:14px; }
.evt-btn--outline {
    background:transparent;
    border:2px solid var(--ev-primary-light);
    color:var(--ev-primary-light);
    box-shadow:none;
}
.evt-btn--outline:hover {
    background:var(--ev-primary); color:#fff; border-color:var(--ev-primary);
    box-shadow:0 4px 20px var(--ev-primary-glow);
}
.evt-btn--accent {
    background:linear-gradient(135deg,var(--ev-accent),var(--ev-accent-dark));
    box-shadow:0 2px 12px var(--ev-accent-glow);
}
.evt-btn--accent:hover { box-shadow:0 6px 24px var(--ev-accent-glow); }
.evt-btn--success {
    background:var(--ev-accent) !important;
    box-shadow:0 2px 12px var(--ev-accent-glow) !important;
    pointer-events:none;
}

/* ═══════════════════════════════════════════════
   HEADER
   ═══════════════════════════════════════════════ */
.evt-header {
    position:sticky; top:0; z-index:1000;
    background:rgba(10,14,26,.85);
    backdrop-filter:blur(20px) saturate(1.4);
    -webkit-backdrop-filter:blur(20px) saturate(1.4);
    border-bottom:1px solid var(--ev-glass-border);
    transition:box-shadow var(--ev-transition);
}

/* ── Fix WP admin bar pushing layout ─── */
body.admin-bar .evt-header {
    top:32px;
}
@media screen and (max-width:782px) {
    body.admin-bar .evt-header {
        top:46px;
    }
}
.evt-header.scrolled { box-shadow:0 4px 30px rgba(0,0,0,.5); }
.evt-header__inner {
    display:flex; align-items:center; justify-content:space-between;
    max-width:var(--ev-container); margin:0 auto; padding:14px 24px;
}
.evt-header__logo { display:flex; align-items:center; gap:8px; text-decoration:none; }
.evt-header__logo img { height:38px; width:auto; }
.evt-header__logo-text {
    font-size:1.4rem; font-weight:800;
    background:linear-gradient(135deg,var(--ev-primary-light),var(--ev-accent));
    -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.evt-nav { display:flex; align-items:center; gap:4px; }
.evt-nav a {
    padding:8px 16px; border-radius:8px;
    font-weight:500; font-size:.92rem; color:var(--ev-text-dim);
    transition:all var(--ev-transition);
}
.evt-nav a:hover { color:#fff; background:rgba(255,255,255,.06); }
.evt-nav a[aria-current="page"] { color:#fff; background:var(--ev-primary); }
.evt-nav__user { display:flex; align-items:center; gap:4px; margin-left:8px; }
.evt-nav__cta {
    background:linear-gradient(135deg,var(--ev-primary),var(--ev-accent)) !important;
    color:#fff !important; font-weight:600 !important;
    box-shadow:0 2px 10px var(--ev-primary-glow);
}
.evt-nav__cta:hover { box-shadow:0 4px 20px var(--ev-primary-glow) !important; transform:translateY(-1px); }

/* Mobile toggle */
.evt-header__toggle {
    display:none; background:none; border:none; cursor:pointer; padding:8px;
    flex-direction:column; gap:5px; align-items:center; justify-content:center;
    width:40px; height:40px;
}
.evt-header__toggle span {
    display:block; width:24px; height:2px; background:var(--ev-text); border-radius:2px;
    transition:all .3s;
}
.evt-header__toggle.open span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.evt-header__toggle.open span:nth-child(2) { opacity:0; }
.evt-header__toggle.open span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

.evt-mobile-nav {
    display:none; flex-direction:column; gap:4px;
    padding:16px 24px 24px;
    background:rgba(10,14,26,.95); backdrop-filter:blur(20px);
    border-bottom:1px solid var(--ev-glass-border);
}
.evt-mobile-nav a {
    display:block; padding:12px 16px; border-radius:8px;
    color:var(--ev-text-dim); font-weight:500;
}
.evt-mobile-nav a:hover { background:rgba(255,255,255,.06); color:#fff; }
.evt-mobile-nav.open { display:flex; }

.evt-header__right-mobile {
    display:none; align-items:center; gap:8px;
}

@media (max-width:768px) {
    .evt-nav { display:none; }
    .evt-header__right-mobile { display:flex; }
    .evt-header__toggle { display:flex; }
}

/* ═══════════════════════════════════════════════
   HERO
   ═══════════════════════════════════════════════ */
.evt-hero {
    position:relative; min-height:92vh;
    display:flex; align-items:center; justify-content:center;
    text-align:center; padding:80px 24px; overflow:hidden;
    background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(99,102,241,.25),transparent 50%),
               radial-gradient(ellipse 60% 40% at 80% 80%,rgba(6,214,160,.15),transparent 50%),
               var(--ev-bg);
}
.evt-hero::before {
    content:''; position:absolute; inset:0;
    background-image:
        linear-gradient(rgba(99,102,241,.06) 1px,transparent 1px),
        linear-gradient(90deg,rgba(99,102,241,.06) 1px,transparent 1px);
    background-size:60px 60px;
    mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 20%,transparent 80%);
    -webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 20%,transparent 80%);
    animation:gridFloat 20s linear infinite;
}
@keyframes gridFloat { 0%{transform:translate(0,0)} 100%{transform:translate(60px,60px)} }
.evt-hero::after {
    content:''; position:absolute;
    width:500px; height:500px;
    background:radial-gradient(circle,var(--ev-primary-glow),transparent 70%);
    top:10%; left:50%; transform:translateX(-50%);
    border-radius:50%; filter:blur(60px);
    animation:orbPulse 6s ease-in-out infinite alternate;
    pointer-events:none;
}
@keyframes orbPulse { 0%{opacity:.4;transform:translateX(-50%) scale(1)} 100%{opacity:.7;transform:translateX(-50%) scale(1.15)} }

.evt-hero__inner { position:relative; z-index:2; max-width:800px; margin:0 auto; }
.evt-hero__badge {
    display:inline-flex; align-items:center; gap:8px;
    padding:8px 20px; margin-bottom:24px;
    background:var(--ev-glass); border:1px solid var(--ev-glass-border);
    border-radius:999px;
    font-size:.85rem; font-weight:500; color:var(--ev-accent);
    backdrop-filter:blur(10px);
}
.evt-hero__badge-dot {
    width:8px; height:8px; border-radius:50%;
    background:var(--ev-accent); box-shadow:0 0 8px var(--ev-accent-glow);
    animation:dotPulse 2s ease-in-out infinite;
}
@keyframes dotPulse { 0%,100%{opacity:1} 50%{opacity:.4} }

.evt-hero h1 {
    font-size:clamp(2.4rem,6vw,4rem);
    font-weight:800; margin:0 0 20px; line-height:1.1; letter-spacing:-.02em;
}
.evt-hero__sub {
    font-size:clamp(1.05rem,2vw,1.25rem);
    color:var(--ev-text-dim); max-width:560px; margin:0 auto 40px; line-height:1.7;
}
.evt-hero__cta { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }
.evt-hero__features {
    display:flex; gap:32px; justify-content:center;
    margin-top:56px; flex-wrap:wrap;
}
.evt-hero__feature {
    display:flex; align-items:center; gap:10px;
    font-size:.9rem; color:var(--ev-text-dim);
}
.evt-hero__feature-icon {
    width:36px; height:36px;
    display:flex; align-items:center; justify-content:center;
    border-radius:10px;
    background:var(--ev-glass); border:1px solid var(--ev-glass-border);
    font-size:1.1rem;
}

/* ═══════════════════════════════════════════════
   STATS BAR
   ═══════════════════════════════════════════════ */
.evt-stats-bar {
    position:relative; z-index:10;
    margin:-60px auto 0; padding:0 24px; max-width:900px;
}
.evt-stats-bar__inner {
    display:grid; grid-template-columns:repeat(4,1fr);
    gap:1px; background:var(--ev-glass-border);
    border:1px solid var(--ev-glass-border);
    border-radius:var(--ev-radius-lg);
    overflow:hidden;
    box-shadow:var(--ev-shadow),0 0 60px rgba(99,102,241,.1);
}
.evt-stats-bar__item {
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    padding:28px 16px; background:var(--ev-surface); backdrop-filter:blur(10px);
}
.evt-stats-bar__num {
    font-size:2rem; font-weight:800;
    background:linear-gradient(135deg,var(--ev-primary-light),var(--ev-accent));
    -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
    line-height:1.2;
}
.evt-stats-bar__label {
    font-size:.82rem; color:var(--ev-text-muted); margin-top:4px;
    text-transform:uppercase; letter-spacing:.04em; font-weight:500;
}
@media (max-width:600px) { .evt-stats-bar__inner { grid-template-columns:repeat(2,1fr); } }

/* ═══════════════════════════════════════════════
   SECTION
   ═══════════════════════════════════════════════ */
.evt-section { padding:80px 0; position:relative; }
.evt-section--alt { background:var(--ev-surface); }
.evt-section__header { text-align:center; margin-bottom:48px; }
.evt-section__tag {
    display:inline-flex; align-items:center; gap:6px;
    padding:6px 16px; margin-bottom:16px; border-radius:999px;
    background:rgba(99,102,241,.1); border:1px solid rgba(99,102,241,.2);
    font-size:.8rem; font-weight:600; color:var(--ev-primary-light);
    text-transform:uppercase; letter-spacing:.06em;
}
.evt-section__title {
    font-size:clamp(1.6rem,3.5vw,2.4rem);
    font-weight:800; margin:0 0 12px; letter-spacing:-.01em;
}
.evt-section__sub {
    font-size:1.05rem; color:var(--ev-text-dim); max-width:580px; margin:0 auto;
}

/* ═══════════════════════════════════════════════
   ACTION CARDS
   ═══════════════════════════════════════════════ */
.evt-actions-grid {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
    gap:24px;
}
.ev-card {
    display:flex; flex-direction:column;
    background:var(--ev-surface); border:1px solid var(--ev-glass-border);
    border-radius:var(--ev-radius-lg); overflow:hidden;
    transition:all var(--ev-transition);
    text-decoration:none; color:var(--ev-text); position:relative;
}
.ev-card:hover {
    transform:translateY(-4px);
    border-color:rgba(99,102,241,.3);
    box-shadow:0 8px 32px rgba(0,0,0,.3),0 0 40px var(--ev-primary-glow);
    color:var(--ev-text);
}
.ev-card__image { height:200px; overflow:hidden; position:relative; }
.ev-card__image img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.ev-card:hover .ev-card__image img { transform:scale(1.05); }
.ev-card__image::after {
    content:''; position:absolute; bottom:0; left:0; right:0; height:60px;
    background:linear-gradient(transparent,var(--ev-surface));
}
.ev-card__body { padding:20px 24px 24px; flex:1; display:flex; flex-direction:column; gap:8px; }
.ev-card__title { font-size:1.15rem; font-weight:700; margin:0; line-height:1.35; }
.ev-card__meta {
    font-size:.85rem; color:var(--ev-text-muted); margin:0;
    display:flex; align-items:center; gap:6px;
}
.ev-card__excerpt {
    font-size:.9rem; color:var(--ev-text-dim); margin:4px 0 0;
    display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}

.ev-badge {
    display:inline-flex; padding:4px 12px; border-radius:999px;
    font-size:.75rem; font-weight:600;
    background:rgba(99,102,241,.15); color:var(--ev-primary-light);
    border:1px solid rgba(99,102,241,.2);
}

/* ═══════════════════════════════════════════════
   HOW IT WORKS STEPS
   ═══════════════════════════════════════════════ */
.evt-steps {
    display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:24px; counter-reset:step;
}
.evt-step {
    position:relative; padding:32px 28px;
    background:var(--ev-surface); border:1px solid var(--ev-glass-border);
    border-radius:var(--ev-radius-lg); text-align:center;
    transition:all var(--ev-transition); counter-increment:step;
}
.evt-step:hover {
    border-color:rgba(99,102,241,.25);
    box-shadow:var(--ev-shadow-glow); transform:translateY(-4px);
}
.evt-step__icon {
    width:56px; height:56px; margin:0 auto 16px;
    display:flex; align-items:center; justify-content:center;
    border-radius:16px;
    background:linear-gradient(135deg,rgba(99,102,241,.2),rgba(6,214,160,.2));
    border:1px solid var(--ev-glass-border);
    font-size:1.6rem;
}
.evt-step__num {
    position:absolute; top:12px; right:16px;
    font-size:.75rem; font-weight:700; color:var(--ev-text-muted);
    font-family:var(--ev-mono);
}
.evt-step__num::before { content:'0' counter(step); }
.evt-step h3 { font-size:1.05rem; font-weight:700; margin:0 0 8px; }
.evt-step p { font-size:.9rem; color:var(--ev-text-dim); margin:0; }

/* ═══════════════════════════════════════════════
   CTA SECTION
   ═══════════════════════════════════════════════ */
.evt-cta-section { padding:80px 0; position:relative; overflow:hidden; }
.evt-cta-card {
    position:relative; max-width:800px; margin:0 auto;
    padding:56px 48px; border-radius:var(--ev-radius-lg);
    text-align:center;
    background:linear-gradient(135deg,var(--ev-surface-2),var(--ev-surface));
    border:1px solid var(--ev-glass-border); overflow:hidden;
}
.evt-cta-card::before {
    content:''; position:absolute; inset:0;
    background:radial-gradient(circle at 30% 0%,var(--ev-primary-glow),transparent 50%),
               radial-gradient(circle at 70% 100%,var(--ev-accent-glow),transparent 50%);
    pointer-events:none;
}
.evt-cta-card > * { position:relative; z-index:1; }
.evt-cta-card h2 { font-size:clamp(1.5rem,3vw,2rem); font-weight:800; margin:0 0 12px; }
.evt-cta-card p { font-size:1.05rem; color:var(--ev-text-dim); max-width:500px; margin:0 auto 28px; }

/* ═══════════════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════════════ */
.evt-footer {
    background:var(--ev-surface); border-top:1px solid var(--ev-glass-border);
    padding:64px 0 0; margin-top:0;
}
.evt-footer__grid {
    display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr;
    gap:40px;
}
@media (max-width:768px) { .evt-footer__grid { grid-template-columns:1fr; gap:32px; } }
.evt-footer__col h4 {
    font-size:.95rem; font-weight:700; color:var(--ev-text);
    margin:0 0 16px; text-transform:uppercase; letter-spacing:.04em;
}
.evt-footer__col p { font-size:.9rem; color:var(--ev-text-dim); line-height:1.7; margin:0; }
.evt-footer__col a { color:var(--ev-text-muted); font-size:.9rem; }
.evt-footer__col a:hover { color:var(--ev-accent); }
.evt-footer__nav { display:flex; flex-direction:column; gap:10px; }
.evt-footer__nav a { display:inline-block; color:var(--ev-text-dim); font-size:.9rem; }
.evt-footer__nav a:hover { color:var(--ev-accent); }
.evt-footer__socials { display:flex; gap:12px; margin-top:16px; }
.evt-footer__socials a {
    width:36px; height:36px;
    display:flex; align-items:center; justify-content:center;
    border-radius:10px; background:var(--ev-surface-2);
    border:1px solid var(--ev-glass-border);
    color:var(--ev-text-dim); font-size:1rem; transition:all var(--ev-transition);
}
.evt-footer__socials a:hover { background:var(--ev-primary); color:#fff; border-color:var(--ev-primary); }
.evt-footer__bottom {
    text-align:center; padding:24px 24px; margin-top:48px;
    border-top:1px solid var(--ev-glass-border);
    font-size:.82rem; color:var(--ev-text-muted);
}
.evt-footer__bottom p { margin:0; }

/* ═══════════════════════════════════════════════
   PAGE TITLE
   ═══════════════════════════════════════════════ */
.evt-page-title {
    position:relative; padding:64px 24px 48px; text-align:center;
    background:radial-gradient(ellipse 60% 50% at 50% 0%,rgba(99,102,241,.15),transparent 60%),var(--ev-bg);
    border-bottom:1px solid var(--ev-glass-border);
}
.evt-page-title h1 {
    font-size:clamp(1.6rem,4vw,2.4rem); font-weight:800; margin:0 0 8px;
}
.evt-page-title p { font-size:1.05rem; color:var(--ev-text-dim); max-width:500px; margin:0 auto; }
.evt-page-content { padding:48px 0 80px; }

/* ═══════════════════════════════════════════════
   SINGLE ACTION DETAIL
   ═══════════════════════════════════════════════ */
.evt-action-detail { display:grid; grid-template-columns:1fr 360px; gap:40px; align-items:start; }
@media (max-width:900px) { .evt-action-detail { grid-template-columns:1fr; } }
.evt-action-detail__main { min-width:0; }
.evt-action-detail__image { border-radius:var(--ev-radius-lg); overflow:hidden; margin-bottom:24px; }
.evt-action-detail__image img { width:100%; height:auto; display:block; }
.evt-action-detail__content {
    line-height:1.8; font-size:1.02rem; color:var(--ev-text-dim); margin-bottom:32px;
}
.evt-action-detail__content p { margin:0 0 16px; }
.evt-action-detail__content h2,.evt-action-detail__content h3 { color:var(--ev-text); }
.evt-action-detail__apply { display:flex; gap:16px; flex-wrap:wrap; }
.evt-action-detail__sidebar { display:flex; flex-direction:column; gap:20px; position:sticky; top:90px; }
.evt-action-sidebar-card {
    background:var(--ev-surface); border:1px solid var(--ev-glass-border);
    border-radius:var(--ev-radius-lg); padding:24px;
}
.evt-action-sidebar-card h3 {
    font-size:1rem; font-weight:700; margin:0 0 16px;
    padding-bottom:12px; border-bottom:1px solid var(--ev-glass-border);
}
.evt-action-dl { margin:0; }
.evt-action-dl dt {
    font-size:.75rem; font-weight:600; color:var(--ev-text-muted);
    text-transform:uppercase; letter-spacing:.04em; margin-bottom:4px;
}
.evt-action-dl dd { margin:0 0 16px; font-size:.95rem; color:var(--ev-text); }
.evt-action-dl dd:last-child { margin-bottom:0; }
.evt-action-dl dd a { color:var(--ev-primary-light); }

.ev-apply-btn { cursor:pointer; }
.ev-apply-btn:disabled { opacity:.5; cursor:not-allowed; }

/* ═══════════════════════════════════════════════
   FILTER BAR
   ═══════════════════════════════════════════════ */
.ev-filter-form { width:100%; }
.ev-filter-row { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.ev-input,.ev-select {
    padding:10px 16px; background:var(--ev-surface);
    border:1px solid var(--ev-glass-border); border-radius:var(--ev-radius);
    color:var(--ev-text); font-size:.92rem; font-family:var(--ev-font);
    transition:border-color var(--ev-transition); min-width:0;
}
.ev-input:focus,.ev-select:focus {
    outline:none; border-color:var(--ev-primary-light);
    box-shadow:0 0 0 3px var(--ev-primary-glow);
}
.ev-select {
    appearance:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
    background-repeat:no-repeat; background-position:right 12px center; padding-right:36px;
}
.ev-select option { background:var(--ev-surface); color:var(--ev-text); }
.ev-input { flex:1; min-width:200px; }

/* ═══════════════════════════════════════════════
   PAGINATION
   ═══════════════════════════════════════════════ */
.evt-pagination { margin-top:48px; text-align:center; }
.evt-pagination .nav-links { display:flex; gap:6px; justify-content:center; }
.evt-pagination a,.evt-pagination span {
    display:inline-flex; align-items:center; justify-content:center;
    min-width:40px; height:40px; padding:0 12px; border-radius:var(--ev-radius);
    font-size:.9rem; font-weight:500;
    background:var(--ev-surface); border:1px solid var(--ev-glass-border);
    color:var(--ev-text-dim); transition:all var(--ev-transition);
}
.evt-pagination a:hover {
    border-color:var(--ev-primary-light); color:var(--ev-primary-light);
    box-shadow:0 0 8px var(--ev-primary-glow);
}
.evt-pagination .current { background:var(--ev-primary); color:#fff; border-color:var(--ev-primary); }

/* ═══════════════════════════════════════════════
   BLOG GRID
   ═══════════════════════════════════════════════ */
.evt-blog-grid {
    display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)); gap:24px;
}
.evt-blog-card {
    background:var(--ev-surface); border:1px solid var(--ev-glass-border);
    border-radius:var(--ev-radius-lg); overflow:hidden; transition:all var(--ev-transition);
}
.evt-blog-card:hover {
    transform:translateY(-3px); border-color:rgba(99,102,241,.25);
    box-shadow:0 8px 24px rgba(0,0,0,.3);
}
.evt-blog-card__thumb img { width:100%; height:200px; object-fit:cover; }
.evt-blog-card__body { padding:20px 24px 24px; }
.evt-blog-card__body h2 { font-size:1.15rem; font-weight:700; margin:0 0 8px; }
.evt-blog-card__body h2 a { color:var(--ev-text); }
.evt-blog-card__body h2 a:hover { color:var(--ev-primary-light); }
.evt-blog-card__body time { font-size:.82rem; color:var(--ev-text-muted); }
.evt-blog-card__body p { font-size:.9rem; color:var(--ev-text-dim); margin:8px 0 0; }

/* ═══════════════════════════════════════════════
   EMPTY STATE
   ═══════════════════════════════════════════════ */
.evt-empty {
    text-align:center; padding:48px 24px;
    font-size:1rem; color:var(--ev-text-dim);
    background:var(--ev-surface); border:1px dashed var(--ev-glass-border);
    border-radius:var(--ev-radius-lg);
}

/* ═══════════════════════════════════════════════
   SCROLL REVEAL
   ═══════════════════════════════════════════════ */
.evt-reveal {
    opacity:0; transform:translateY(30px);
    transition:opacity .6s,transform .6s cubic-bezier(.4,0,.2,1);
}
.evt-reveal.visible { opacity:1; transform:translateY(0); }

/* ═══════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════ */
@media (max-width:480px) {
    .evt-hero { min-height:80vh; padding:48px 16px; }
    .evt-actions-grid { grid-template-columns:1fr; }
    .evt-steps { grid-template-columns:1fr; }
    .evt-cta-card { padding:36px 24px; }
    .evt-footer__grid { grid-template-columns:1fr; }
    .ev-filter-row { flex-direction:column; }
    .ev-filter-row .ev-input { width:100%; }
}

/* ═══════════════════════════════════════════════
   THEME TOGGLE BUTTON
   ═══════════════════════════════════════════════ */
.evt-theme-toggle {
    display:inline-flex; align-items:center; justify-content:center;
    width:36px; height:36px; padding:0; margin-left:8px;
    border:1px solid var(--ev-glass-border); border-radius:10px;
    background:var(--ev-glass); color:var(--ev-text-dim);
    cursor:pointer; transition:all var(--ev-transition);
    backdrop-filter:blur(8px);
    flex-shrink:0;
}
.evt-theme-toggle:hover {
    color:var(--ev-accent); border-color:var(--ev-accent);
    background:rgba(6,214,160,.1);
}
/* Show moon in dark mode, sun in light mode */
.evt-theme-toggle__sun { display:none; }
.evt-theme-toggle__moon { display:block; }
[data-theme="light"] .evt-theme-toggle__sun { display:block; }
[data-theme="light"] .evt-theme-toggle__moon { display:none; }

.evt-header__right-mobile .evt-theme-toggle--mobile { display:inline-flex; }

@media (max-width:768px) {
    .evt-nav .evt-theme-toggle { display:none; }
}

/* ═══════════════════════════════════════════════
   VIEW TOGGLE (grid / calendar)
   ═══════════════════════════════════════════════ */
.ev-actions-toolbar {
    display:flex; align-items:center; justify-content:space-between;
    flex-wrap:wrap; gap:16px;
    margin-bottom:24px;
}
.ev-actions-toolbar .ev-filter-form { flex:1; min-width:300px; }

.ev-view-toggle {
    display:flex; gap:4px;
    background:var(--ev-surface); border:1px solid var(--ev-glass-border);
    border-radius:var(--ev-radius); padding:4px;
}
.ev-view-toggle__btn {
    display:flex; align-items:center; justify-content:center;
    width:36px; height:36px;
    border:none; border-radius:8px;
    background:transparent; color:var(--ev-text-muted);
    cursor:pointer; transition:all var(--ev-transition);
}
.ev-view-toggle__btn:hover { color:var(--ev-text); background:rgba(255,255,255,.06); }
.ev-view-toggle__btn.active {
    background:var(--ev-primary); color:#fff;
    box-shadow:0 2px 8px var(--ev-primary-glow);
}

.ev-view-panel { display:none; }
.ev-view-panel--active { display:block; animation:evFadeView .3s ease; }
@keyframes evFadeView { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }

@media (max-width:600px) {
    .ev-actions-toolbar { flex-direction:column; }
    .ev-actions-toolbar .ev-filter-form { min-width:0; width:100%; }
    .ev-view-toggle { align-self:flex-end; }
}

/* ═══════════════════════════════════════════════
   LIGHT THEME
   ═══════════════════════════════════════════════ */
[data-theme="light"] {
    --ev-bg:            #f0f2f5;
    --ev-surface:       #ffffff;
    --ev-surface-2:     #f8f9fb;
    --ev-surface-3:     #eef0f4;
    --ev-glass:         rgba(255,255,255,.80);
    --ev-glass-border:  rgba(0,0,0,.08);

    --ev-text:          #1e293b;
    --ev-text-dim:      #475569;
    --ev-text-muted:    #64748b;

    --ev-shadow:        0 4px 24px rgba(0,0,0,.08);
    --ev-shadow-glow:   0 0 40px rgba(99,102,241,.12);
}

/* Header in light mode */
[data-theme="light"] .evt-header {
    background:rgba(255,255,255,.90);
    border-bottom-color:rgba(0,0,0,.06);
}
[data-theme="light"] .evt-header.scrolled {
    box-shadow:0 2px 20px rgba(0,0,0,.08);
}
[data-theme="light"] .evt-nav a { color:var(--ev-text-dim); }
[data-theme="light"] .evt-nav a:hover { color:var(--ev-text); background:rgba(0,0,0,.04); }
[data-theme="light"] .evt-nav a[aria-current="page"] { color:#fff; }
[data-theme="light"] .evt-header__toggle span { background:var(--ev-text); }

/* Mobile nav in light mode */
[data-theme="light"] .evt-mobile-nav {
    background:rgba(255,255,255,.97);
    border-bottom-color:rgba(0,0,0,.06);
}
[data-theme="light"] .evt-mobile-nav a { color:var(--ev-text-dim); }
[data-theme="light"] .evt-mobile-nav a:hover { color:var(--ev-text); background:rgba(0,0,0,.04); }

/* Hero in light mode */
[data-theme="light"] .evt-hero {
    background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(99,102,241,.12),transparent 50%),
               radial-gradient(ellipse 60% 40% at 80% 80%,rgba(6,214,160,.08),transparent 50%),
               var(--ev-bg);
}
[data-theme="light"] .evt-hero::before {
    background-image:
        linear-gradient(rgba(99,102,241,.04) 1px,transparent 1px),
        linear-gradient(90deg,rgba(99,102,241,.04) 1px,transparent 1px);
}
[data-theme="light"] .evt-hero::after {
    background:radial-gradient(circle,rgba(99,102,241,.12),transparent 70%);
}
[data-theme="light"] .evt-hero__badge {
    background:rgba(255,255,255,.8);
    border-color:rgba(0,0,0,.08);
}

/* Cards in light mode */
[data-theme="light"] .ev-card {
    background:#fff;
    border-color:rgba(0,0,0,.08);
    box-shadow:0 1px 4px rgba(0,0,0,.04);
}
[data-theme="light"] .ev-card:hover {
    border-color:rgba(99,102,241,.25);
    box-shadow:0 8px 32px rgba(99,102,241,.08);
}
[data-theme="light"] .ev-card__image::after {
    background:linear-gradient(transparent,#fff);
}

/* Steps */
[data-theme="light"] .evt-step { background:#fff; box-shadow:0 1px 4px rgba(0,0,0,.04); }
[data-theme="light"] .evt-step:hover { box-shadow:0 4px 20px rgba(99,102,241,.1); }

/* Stats bar */
[data-theme="light"] .evt-stats-bar__item { background:#fff; }
[data-theme="light"] .evt-stats-bar__inner { box-shadow:0 4px 24px rgba(0,0,0,.06); }

/* CTA section */
[data-theme="light"] .evt-cta-card {
    background:linear-gradient(135deg,#f8f9fb,#fff);
    box-shadow:0 4px 24px rgba(0,0,0,.06);
}

/* Footer */
[data-theme="light"] .evt-footer { background:#fff; border-top-color:rgba(0,0,0,.06); }
[data-theme="light"] .evt-footer__socials a { background:var(--ev-surface-2); border-color:rgba(0,0,0,.06); }
[data-theme="light"] .evt-footer__bottom { border-top-color:rgba(0,0,0,.06); }

/* filter inputs */
[data-theme="light"] .ev-input,
[data-theme="light"] .ev-select {
    background:#fff; border-color:rgba(0,0,0,.12); color:var(--ev-text);
}
[data-theme="light"] .ev-select option { background:#fff; color:var(--ev-text); }

/* Page title */
[data-theme="light"] .evt-page-title {
    background:radial-gradient(ellipse 60% 50% at 50% 0%,rgba(99,102,241,.08),transparent 60%),var(--ev-bg);
    border-bottom-color:rgba(0,0,0,.06);
}

/* Pagination */
[data-theme="light"] .evt-pagination a,
[data-theme="light"] .evt-pagination span {
    background:#fff; border-color:rgba(0,0,0,.08); color:var(--ev-text-dim);
}
[data-theme="light"] .evt-pagination a:hover { border-color:var(--ev-primary-light); color:var(--ev-primary); }
[data-theme="light"] .evt-pagination .current { background:var(--ev-primary); color:#fff; border-color:var(--ev-primary); }

/* Blog cards */
[data-theme="light"] .evt-blog-card {
    background:#fff; border-color:rgba(0,0,0,.08);
    box-shadow:0 1px 4px rgba(0,0,0,.04);
}
[data-theme="light"] .evt-blog-card:hover { box-shadow:0 8px 24px rgba(0,0,0,.06); border-color:rgba(99,102,241,.2); }
[data-theme="light"] .evt-blog-card__body h2 a { color:var(--ev-text); }

/* Single action detail */
[data-theme="light"] .evt-action-sidebar-card {
    background:#fff; border-color:rgba(0,0,0,.08);
    box-shadow:0 1px 4px rgba(0,0,0,.04);
}

/* View toggle */
[data-theme="light"] .ev-view-toggle {
    background:#fff; border-color:rgba(0,0,0,.08);
}
[data-theme="light"] .ev-view-toggle__btn:hover {
    background:rgba(0,0,0,.04); color:var(--ev-text);
}

/* Empty state */
[data-theme="light"] .evt-empty {
    background:#fff; border-color:rgba(0,0,0,.1);
}
