/*
Theme Name: Rajzpályázatok (Hero Art Sketch Version)
Theme URI: https://rajzpalyazatok.hu
Author: Rajzpályázatok Fejlesztő
Description: A hero banner festett, kézzel rajzolt, akvarell-illusztrációs vizuális világára épülő WordPress sablon.
Version: 4.3.9
Text Domain: rajzpalyazatok
*/

:root {
    --chibi-pink: #ff758c;
    --chibi-pink-light: #fff0f3;
    --chibi-purple: #6c5ce7;
    --chibi-blue: #00cec9;
    --chibi-yellow: #fffa65;
    --chibi-dark: #2d3436;
    --chibi-gray: #636e72;
    --chibi-bg: #f7f9fc;
    --chibi-card-bg: #ffffff;
    --chibi-radius: 20px;
    --chibi-shadow: 0 10px 30px rgba(108, 92, 231, 0.08);
}

* { box-sizing: border-box; }

body {
    font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
    color: var(--chibi-dark);
    background-color: var(--chibi-bg);
    margin: 0;
    padding: 0;
    line-height: 1.6;
}

h1, h2, h3, h4, .chibi-brand-title {
    font-family: 'Fredoka', cursive, sans-serif;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* NAVBAR */
.chibi-navbar {
    background: #ffffff;
    padding: 16px 0;
    border-bottom: 2px solid #edf2f7;
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: 0 4px 20px rgba(0,0,0,0.03);
}

.chibi-nav-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.chibi-logo-link {
    display: flex;
    align-items: center;
    gap: 15px;
    text-decoration: none;
}

.chibi-logo-badge {
    width: 64px;
    height: 64px;
    flex: 0 0 64px;
    overflow: hidden;
    border-radius: 16px;
}

.chibi-nav-logo {
    display: block;
    width: 64px;
    height: 64px;
    border-radius: 16px;
    object-fit: contain;
    transition: transform 0.3s ease, filter 0.3s ease;
}

.chibi-logo-link:hover .chibi-nav-logo {
    transform: scale(1.06) rotate(-2deg);
    filter: saturate(1.08);
}

.chibi-brand-title {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--chibi-dark);
    line-height: 1.1;
    display: block;
}

.dot-pop { color: var(--chibi-pink); }

.chibi-brand-tagline {
    font-size: 0.8rem;
    color: var(--chibi-gray);
    font-weight: 600;
    letter-spacing: 0.5px;
}

.chibi-nav-menu {
    display: flex;
    align-items: center;
    gap: 25px;
}

.chibi-nav-menu ul {
    display: flex;
    list-style: none;
    gap: 20px;
    margin: 0;
    padding: 0;
}

.chibi-nav-menu a {
    text-decoration: none;
    color: var(--chibi-dark);
    font-weight: 700;
    font-size: 0.95rem;
    transition: color 0.2s;
}

.chibi-nav-menu a:hover {
    color: var(--chibi-pink);
}

.chibi-btn-cta {
    background: linear-gradient(135deg, #ff758c 0%, #ff7eb3 100%);
    color: white;
    border: none;
    padding: 10px 22px;
    border-radius: 30px;
    font-family: 'Fredoka', sans-serif;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    box-shadow: 0 6px 18px rgba(255, 117, 140, 0.35);
    transition: transform 0.2s, box-shadow 0.2s;
}

.chibi-btn-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(255, 117, 140, 0.45);
}

/* MODERN CHIBI HERO BANNER */
.chibi-hero-section {
    background: linear-gradient(135deg, #fff0f3 0%, #e0f7fa 50%, #f3e5f5 100%);
    padding: 60px 0 70px;
    position: relative;
    overflow: hidden;
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
}

.chibi-floating-sparkles .sparkle {
    position: absolute;
    font-size: 1.8rem;
    opacity: 0.7;
}

.sp-1 { top: 15%; left: 8%; }
.sp-2 { top: 75%; left: 4%; }
.sp-3 { top: 20%; right: 45%; }
.sp-4 { top: 10%; right: 10%; }
.sp-5 { bottom: 15%; right: 8%; }

.chibi-hero-grid {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 40px;
    align-items: center;
}

.chibi-pill-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #ffffff;
    padding: 6px 16px;
    border-radius: 30px;
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--chibi-purple);
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    margin-bottom: 18px;
}

.pulse-dot {
    width: 8px;
    height: 8px;
    background: var(--chibi-pink);
    border-radius: 50%;
}

.chibi-hero-title {
    font-size: 3.2rem;
    line-height: 1.15;
    color: var(--chibi-dark);
    margin-top: 0;
    margin-bottom: 18px;
}

.gradient-text {
    background: linear-gradient(135deg, #ff758c 0%, #6c5ce7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.chibi-hero-sub {
    font-size: 1.15rem;
    color: var(--chibi-gray);
    margin-bottom: 28px;
    max-width: 540px;
}

/* Modern Search Bar */
.chibi-search-box {
    display: flex;
    background: #ffffff;
    padding: 8px;
    border-radius: 40px;
    box-shadow: 0 12px 30px rgba(0,0,0,0.08);
    max-width: 520px;
    border: 2px solid #ffffff;
    transition: border-color 0.2s;
}

.chibi-search-box:focus-within {
    border-color: var(--chibi-purple);
}

.search-input-wrapper {
    display: flex;
    align-items: center;
    flex: 1;
    padding-left: 15px;
    gap: 10px;
}

.search-icon { font-size: 1.1rem; }

.search-input-wrapper input {
    border: none;
    outline: none;
    width: 100%;
    font-size: 1rem;
    font-family: inherit;
    color: var(--chibi-dark);
}

.chibi-search-btn {
    background: var(--chibi-dark);
    color: white;
    border: none;
    padding: 12px 26px;
    border-radius: 30px;
    font-family: 'Fredoka', sans-serif;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.2s;
}

.chibi-search-btn:hover {
    background: var(--chibi-purple);
}

/* Hero Mascot Visual Card */
.chibi-hero-avatar-wrap {
    display: flex;
    justify-content: center;
}

.chibi-avatar-card {
    background: #ffffff;
    padding: 30px;
    border-radius: 30px;
    box-shadow: 0 20px 40px rgba(108, 92, 231, 0.15);
    text-align: center;
    position: relative;
    border: 4px solid #ffffff;
}

.chibi-hero-avatar-img {
    width: 220px;
    height: 220px;
    object-fit: contain;
}

.avatar-badge-tag {
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    background: #ffffff;
    padding: 8px 18px;
    border-radius: 20px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.1);
    display: flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
}

.avatar-badge-tag .emoji { font-size: 1.5rem; }
.avatar-badge-tag strong { display: block; font-size: 0.85rem; color: var(--chibi-dark); }
.avatar-badge-tag small { color: var(--chibi-gray); font-size: 0.75rem; }

.chibi-demo-banner {
    margin-top: 20px;
    background: rgba(255,255,255,0.7);
    padding: 10px 16px;
    border-radius: 12px;
    font-size: 0.85rem;
    display: inline-block;
}

.btn-demo-link {
    background: var(--chibi-blue);
    color: white;
    padding: 4px 12px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
    margin-left: 8px;
}

/* Features Bar */
.chibi-features-bar {
    margin-top: -30px;
    position: relative;
    z-index: 10;
}

.chibi-features-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    background: #ffffff;
    padding: 20px;
    border-radius: 24px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}

.chibi-feature-card {
    display: flex;
    align-items: center;
    gap: 15px;
}

.icon-wrap {
    width: 48px;
    height: 48px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.bg-pink { background: #ffeaa7; }
.bg-purple { background: #e8e8e8; }
.bg-blue { background: #dff9fb; }
.bg-yellow { background: #fff200; }

/* Rajzolt ikonok a feature kártyákon */
.icon-wrap.art-icon {
    width: 80px;
    height: 80px;
    border-radius: 22px;
    padding: 7px;
    background: #fffdf8;
    border: 2px solid #efe3d2;
    box-shadow: 3px 4px 0 rgba(120, 96, 70, .07);
    flex: 0 0 auto;
}
.icon-wrap.art-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.chibi-feature-card h4 { margin: 0; font-size: 0.95rem; }
.chibi-feature-card p { margin: 0; font-size: 0.8rem; color: var(--chibi-gray); }

/* Layout Grid */
.layout-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 30px;
    margin-top: 40px;
    margin-bottom: 60px;
}

/* Featured Card */
.chibi-featured-card {
    background: #ffffff;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: var(--chibi-shadow);
    position: relative;
}

.chibi-badge-featured {
    position: absolute;
    top: 15px; left: 15px;
    background: var(--chibi-purple);
    color: white;
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 700;
    z-index: 5;
}

.chibi-featured-grid { display: flex; }
.chibi-featured-img { flex: 1; min-height: 260px; background-size: cover; background-position: center; }
.chibi-featured-body { flex: 1; padding: 30px; }
.chibi-featured-body h3 { margin-top: 0; font-size: 1.6rem; color: var(--chibi-dark); }
.chibi-meta-list { list-style: none; padding: 0; margin: 15px 0 20px; font-size: 0.9rem; }
.chibi-meta-list li { margin-bottom: 6px; }

.btn-chibi-primary {
    display: inline-block;
    background: var(--chibi-pink);
    color: white;
    padding: 10px 22px;
    border-radius: 20px;
    text-decoration: none;
    font-weight: 700;
    font-size: 0.9rem;
    box-shadow: 0 4px 12px rgba(255, 117, 140, 0.3);
}

/* Section Title */
.section-title-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.section-title-flex h2 { font-size: 1.8rem; margin: 0; }
.link-more { color: var(--chibi-purple); text-decoration: none; font-weight: 700; }

/* List Items */
.chibi-list-item {
    display: flex;
    align-items: center;
    gap: 18px;
    background: #ffffff;
    padding: 16px;
    border-radius: 20px;
    margin-bottom: 14px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.02);
    transition: transform 0.2s;
}

.chibi-list-item:hover {
    transform: translateY(-2px);
}

.item-thumb img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 16px;
}

.item-content { flex: 1; }
.item-content h4 { margin: 0 0 4px; font-size: 1.1rem; }
.item-content h4 a { text-decoration: none; color: var(--chibi-dark); }
.item-meta { font-size: 0.85rem; color: var(--chibi-gray); }

.chibi-age-pill {
    background: var(--chibi-pink-light);
    color: var(--chibi-pink);
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 0.8rem;
}

/* Sidebar Widgets */
.chibi-quick-menu { display: flex; flex-direction: column; gap: 12px; }

.chibi-q-card {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 16px 20px;
    border-radius: 20px;
    text-decoration: none;
    color: var(--chibi-dark);
    background: #ffffff;
    box-shadow: 0 4px 15px rgba(0,0,0,0.03);
    transition: transform 0.2s;
}

.chibi-q-card:hover { transform: translateY(-2px); }
.q-icon { font-size: 1.6rem; }
.chibi-q-card strong { display: block; font-size: 0.95rem; }
.chibi-q-card small { color: var(--chibi-gray); font-size: 0.8rem; }

.chibi-widget-card {
    background: #ffffff;
    border-radius: 20px;
    padding: 24px;
    box-shadow: var(--chibi-shadow);
}

.bg-soft-pink { background: #fff0f3; }
.widget-title { font-size: 1.3rem; margin-top: 0; margin-bottom: 15px; }

.chibi-deadline-row {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 10px 0;
    border-bottom: 1px dashed #edf2f7;
}

.chibi-deadline-row:last-child { border-bottom: none; }

.chibi-date-badge {
    background: var(--chibi-purple);
    color: white;
    border-radius: 12px;
    padding: 6px 12px;
    text-align: center;
    min-width: 50px;
}

.chibi-date-badge .m { font-size: 0.7rem; font-weight: 800; display: block; opacity: 0.8; }
.chibi-date-badge .d { font-size: 1.1rem; font-weight: 800; }

.deadline-info a { text-decoration: none; color: var(--chibi-dark); font-weight: 700; font-size: 0.9rem; display: block; }
.deadline-info small { color: var(--chibi-gray); font-size: 0.8rem; }

/* Modal Popup */
.modal-overlay {
    display: none;
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(45, 52, 54, 0.6);
    backdrop-filter: blur(6px);
    z-index: 9999;
    align-items: center;
    justify-content: center;
    overflow-y: auto;
    padding: 24px;
    box-sizing: border-box;
}

.modal-card {
    background: #ffffff;
    border-radius: 24px;
    padding: 32px;
    max-width: 550px;
    width: 90%;
    box-shadow: 0 25px 50px rgba(0,0,0,0.15);
    position: relative;
    max-height: calc(100vh - 48px);
    overflow-y: auto;
    margin: auto;
}

.modal-close {
    position: absolute;
    top: 15px; right: 20px;
    font-size: 1.8rem;
    cursor: pointer;
    color: var(--chibi-gray);
    background: none;
    border: none;
}

.bekuldes-form-group { margin-bottom: 15px; }
.bekuldes-form-group label { display: block; font-weight: 700; margin-bottom: 5px; font-size: 0.9rem; }
.bekuldes-form-group input, 
.bekuldes-form-group textarea, 
.bekuldes-form-group select {
    width: 100%;
    padding: 12px 16px;
    border: 2px solid #edf2f7;
    border-radius: 12px;
    font-size: 0.95rem;
    outline: none;
}

.bekuldes-form-group input:focus { border-color: var(--chibi-purple); }

.btn-submit-form {
    background: var(--chibi-pink);
    color: white;
    border: none;
    padding: 14px;
    border-radius: 30px;
    font-family: 'Fredoka', sans-serif;
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
    width: 100%;
}

.site-footer {
    background: #ffffff;
    border-top: 2px solid #edf2f7;
    padding: 40px 0 20px;
    text-align: center;
}

.footer-motto { font-size: 1.5rem; margin-bottom: 15px; color: var(--chibi-dark); }
.footer-nav ul { display: flex; justify-content: center; list-style: none; gap: 20px; padding: 0; margin-bottom: 20px; }
.footer-nav a { color: var(--chibi-gray); text-decoration: none; font-weight: 600; }
.copyright { color: #a0aec0; font-size: 0.85rem; }

@media (max-width: 900px) {
    .chibi-hero-grid { grid-template-columns: 1fr; text-align: center; }
    .chibi-hero-sub { margin-left: auto; margin-right: auto; }
    .chibi-search-box { margin: 0 auto; }
    .chibi-features-grid { grid-template-columns: repeat(2, 1fr); }
    .layout-grid { grid-template-columns: 1fr; }
    .chibi-featured-grid { flex-direction: column; }
}


/* VÁLTAKOZÓ LEGÚJABB PÁLYÁZATOK CAROUSEL SLIDER STÍLUSOK */
.chibi-slider-wrap {
    background: #ffffff;
    border-radius: 24px;
    padding: 24px;
    box-shadow: 0 10px 30px rgba(108, 92, 231, 0.08);
    position: relative;
}

.chibi-slider-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.btn-slider-nav {
    background: #fff0f3;
    color: var(--chibi-pink);
    border: none;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    font-size: 1.2rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-slider-nav:hover {
    background: var(--chibi-pink);
    color: #ffffff;
}

.chibi-slider-container {
    position: relative;
    min-height: 180px;
}

.chibi-slide-item {
    display: none;
    animation: fadeInSlide 0.5s ease-in-out;
}

.chibi-slide-item.active-slide {
    display: block;
}

@keyframes fadeInSlide {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
}

.chibi-slide-inner {
    display: flex;
    gap: 20px;
    align-items: center;
}

.slide-img {
    width: 180px;
    height: 140px;
    border-radius: 18px;
    background-size: cover;
    background-position: center;
    flex-shrink: 0;
}

.slide-img-placeholder {
    width: 140px;
    height: 140px;
    border-radius: 18px;
    background: #fff0f3;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 3rem;
    flex-shrink: 0;
}

.slide-info {
    flex: 1;
}

.slide-badge {
    background: #e8e8e8;
    color: var(--chibi-purple);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 4px 12px;
    border-radius: 12px;
    display: inline-block;
    margin-bottom: 8px;
}

.slide-info h4 {
    margin: 0 0 6px;
    font-size: 1.3rem;
}

.slide-info h4 a {
    text-decoration: none;
    color: var(--chibi-dark);
}

.slide-meta {
    font-size: 0.85rem;
    color: var(--chibi-gray);
    margin-bottom: 8px;
}

.slide-excerpt {
    font-size: 0.9rem;
    color: #636e72;
    margin: 0 0 12px;
}

.btn-slide-link {
    display: inline-block;
    background: var(--chibi-purple);
    color: white;
    padding: 6px 16px;
    border-radius: 15px;
    text-decoration: none;
    font-weight: 700;
    font-size: 0.85rem;
    transition: background 0.2s;
}

.btn-slide-link:hover {
    background: var(--chibi-pink);
}

.chibi-slider-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 15px;
}

.dot-item {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #dfe6e9;
    cursor: pointer;
    transition: all 0.2s;
}

.dot-item.active-dot {
    background: var(--chibi-pink);
    width: 24px;
    border-radius: 10px;
}

@media (max-width: 600px) {
    .chibi-slide-inner {
        flex-direction: column;
    }
    .slide-img, .slide-img-placeholder {
        width: 100%;
        height: 160px;
    }
}

/* ILLUSTRATED HERO – rajzos, játékos főbanner */
.illustrated-hero { padding: 48px 0 58px; background: linear-gradient(180deg, #fff6df 0%, #fff0f3 100%); border-radius: 0 0 44px 44px; }
.illustrated-hero .chibi-hero-grid { grid-template-columns: 1fr; gap: 34px; min-height: auto; }
.illustrated-hero .chibi-hero-text { background: transparent; border: none; border-radius: 0; padding: 0; box-shadow: none; backdrop-filter: none; max-width: 780px; margin: 0 auto; text-align: center; }
.hero-kicker { display:inline-block; background:#4d4261; color:#fff; padding:8px 15px; border-radius:999px; font-weight:800; font-size:.78rem; letter-spacing:.08em; margin-bottom:15px; transform:rotate(-1deg); }
.illustrated-hero .chibi-hero-title { font-size:clamp(2.3rem,4vw,3.6rem); text-shadow:2px 3px 0 #fff; margin-bottom:14px; }
.illustrated-hero .chibi-hero-sub { color:#51495d; font-weight:500; margin-left:auto; margin-right:auto; max-width:640px; }
.illustrated-hero .chibi-search-box { max-width:560px; margin:0 auto; text-align:left; }
.illustrated-hero .chibi-demo-banner { text-align:left; }
.illustrated-hero .chibi-hero-text { display:flex; flex-direction:column; align-items:center; }
.hero-art-wrap { position:relative; border-radius:28px; border:6px solid #fff; box-shadow:0 18px 45px rgba(75,55,100,.16); overflow:hidden; background:#fff; }
.hero-art-img { display:block; width:100%; height:auto; }
@media(max-width:850px){
 .illustrated-hero { padding:38px 0 44px; }
 .illustrated-hero .chibi-hero-grid { grid-template-columns:1fr; gap:26px; }
 .illustrated-hero .chibi-hero-text { margin:0; }
 .illustrated-hero .chibi-search-box { flex-direction:column; border-radius:28px; }
 .illustrated-hero .search-input-wrapper { padding:12px 15px; }
 .illustrated-hero .chibi-search-btn { border-radius:22px; }
}

/* ===== RAJZOLT, AKVARELL HANGULAT AZ EGÉSZ LAPON (v1.7.0) ===== */
body {
    background-color: #fffaf2;
    background-image:
        radial-gradient(circle at 12% 8%, rgba(255,214,165,.35) 0, transparent 38%),
        radial-gradient(circle at 88% 14%, rgba(191,219,254,.35) 0, transparent 40%),
        radial-gradient(circle at 20% 72%, rgba(255,205,222,.30) 0, transparent 42%),
        radial-gradient(circle at 82% 86%, rgba(198,239,206,.32) 0, transparent 44%);
    background-attachment: fixed;
}

/* Kártyák "kézzel rajzolt" keretet kapnak */
.chibi-feature-card,
.chibi-widget-card,
.chibi-list-item,
.chibi-slide-inner,
.chibi-q-card,
.chibi-featured-card,
.chibi-empty-box,
.modal-card {
    border: 3px solid #efe3d2 !important;
    box-shadow: 6px 8px 0 rgba(120, 96, 70, .08) !important;
}

/* Szekciócím alá rajzolt aláhúzás */
.section-title-flex h2,
.widget-title,
.chibi-slider-header h3 {
    position: relative;
}
.section-title-flex h2::after,
.chibi-slider-header h3::after {
    content: "";
    display: block;
    height: 8px;
    width: 92px;
    margin-top: 6px;
    border-radius: 8px;
    background: linear-gradient(90deg, #ffb3c6, #ffd6a5 55%, transparent);
}

/* Lebegő rajzolt figurák */
.deco-art { position: absolute; pointer-events: none; user-select: none; z-index: 2; }
.deco-art img { display: block; width: 100%; height: auto; filter: drop-shadow(0 10px 18px rgba(110,90,70,.18)); }
.illustrated-hero { position: relative; overflow: hidden; }
.deco-hero-cat { width: 132px; left: 18px; bottom: 10px; transform: rotate(-4deg); }
.deco-hero-tools { width: 122px; right: 20px; top: 14px; transform: rotate(5deg); }

/* Rajzolt szekciósáv (elválasztó illusztráció) */
.chibi-deco-strip {
    position: relative;
    max-width: 1200px;
    margin: 40px auto 10px;
    padding: 0 20px;
    display: flex;
    align-items: center;
    gap: 18px;
    justify-content: center;
    text-align: center;
}
.chibi-deco-strip img { width: 92px; height: auto; }
.chibi-deco-strip p {
    font-family: 'Fredoka', sans-serif;
    font-size: 1.15rem;
    color: #6b5b4a;
    margin: 0;
}

/* Rajzolt oldalsáv-kártya */
.chibi-art-card {
    background: #fff;
    border: 3px solid #efe3d2;
    border-radius: var(--chibi-radius);
    box-shadow: 6px 8px 0 rgba(120,96,70,.08);
    overflow: hidden;
    text-align: center;
    padding: 18px 18px 22px;
}
.chibi-art-card img { width: 78%; max-width: 220px; height: auto; margin: 0 auto 6px; display: block; }
.chibi-art-card strong { display: block; font-family: 'Fredoka', sans-serif; font-size: 1.1rem; color: #4d4261; }
.chibi-art-card small { color: var(--chibi-gray); }

/* Lábléc rajzolt tájsávval */
.footer-art-band {
    height: 210px;
    background-image: url('images/deco-footer-band.jpg');
    background-size: cover;
    background-position: center top;
    border-top: 4px solid #fff;
}
.site-footer { background: #fffaf2; border-top: none; position: relative; }

@media (max-width: 850px) {
    .deco-hero-cat { width: 84px; left: 6px; bottom: 4px; }
    .deco-hero-tools { width: 76px; right: 8px; top: 8px; }
    .chibi-deco-strip { flex-direction: column; gap: 8px; }
    .chibi-deco-strip img { width: 74px; }
    .footer-art-band { height: 130px; }
}

/* Kereső az oldalsávban */
.chibi-side-search {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 25px;
    background: #fffdf8;
    border: 2px solid #efe3d2;
    border-radius: 22px;
    padding: 14px;
    box-shadow: 6px 8px 0 rgba(120, 96, 70, .08);
}
.chibi-side-search .search-input-wrapper { width: 100%; }
.chibi-side-search .search-input-wrapper input { width: 100%; }
.chibi-side-search .chibi-search-btn { width: 100%; justify-content: center; }

/* Responsive navbar logo sizing */
@media (max-width: 900px) {
    .chibi-navbar { padding: 12px 0; }
    .chibi-nav-container { gap: 14px; }
    .chibi-logo-link { min-width: 0; gap: 11px; }
    .chibi-logo-badge { width: 52px; height: 52px; flex-basis: 52px; border-radius: 13px; }
    .chibi-nav-logo { width: 52px; height: 52px; border-radius: 13px; }
    .chibi-brand { min-width: 0; }
    .chibi-brand-title { font-size: 1.45rem; white-space: nowrap; }
    .chibi-brand-tagline { display: none; }
    .chibi-nav-menu { flex: 0 0 auto; gap: 10px; }
    .chibi-nav-menu ul { display: none; }
    .chibi-btn-cta { padding: 9px 13px; font-size: 0.82rem; }
}

@media (max-width: 480px) {
    .container.chibi-nav-container { padding-left: 14px; padding-right: 14px; }
    .chibi-logo-badge { width: 48px; height: 48px; flex-basis: 48px; border-radius: 12px; }
    .chibi-nav-logo { width: 48px; height: 48px; border-radius: 12px; }
    .chibi-brand-title { font-size: clamp(1.05rem, 5.2vw, 1.3rem); }
    .chibi-btn-cta { width: 44px; height: 44px; padding: 0; overflow: hidden; font-size: 0; border-radius: 12px; }
    .chibi-btn-cta::before { content: '+'; font-size: 1.65rem; line-height: 1; }
}

/* --- Pályázat oldali beküldött kép + Díjazás blokk --- */
.palyazat-kep-box {
    margin: 25px 0 30px;
    width: min(100%, 760px);
    padding: 0;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid #e2e8f0;
    background: #fff;
    box-shadow: 0 10px 25px rgba(15, 23, 42, 0.08);
}
.palyazat-kep-box a {
    display: grid;
    place-items: center;
    padding: 14px;
    background: #f8fafc;
}
.palyazat-kep-box img.palyazat-kep {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 420px;
    object-fit: contain;
}
.palyazat-kep-box figcaption {
    padding: 12px 16px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #64748b;
    border-top: 1px solid #e2e8f0;
}
.palyazat-dijazas {
    margin-top: 30px;
    padding: 20px 24px;
    border-left: 5px solid var(--accent-green);
    background: #f0fdf4;
    border-radius: 14px;
}
.palyazat-dijazas h3 {
    margin: 0 0 8px;
    font-size: 1.15rem;
    color: var(--primary-blue);
}
.palyazat-dijazas p {
    margin: 0;
    line-height: 1.7;
    color: #334155;
}
.palyazat-bekuldesi-hely,
.palyazat-eredmenyhirdetes {
    margin-top: 25px;
    padding: 20px 24px;
    border-radius: 14px;
}
.palyazat-bekuldesi-hely {
    border-left: 5px solid var(--chibi-pink);
    background: var(--chibi-pink-light);
}
.palyazat-eredmenyhirdetes {
    border-left: 5px solid var(--primary-blue);
    background: #eef4ff;
}
.palyazat-bekuldesi-hely h3,
.palyazat-eredmenyhirdetes h3 {
    margin: 0 0 8px;
    font-size: 1.15rem;
    color: var(--primary-blue);
}
.palyazat-bekuldesi-hely p,
.palyazat-eredmenyhirdetes p {
    margin: 0 0 6px;
    line-height: 1.7;
    color: #334155;
}
.palyazat-eredmenyhirdetes p:last-child,
.palyazat-bekuldesi-hely p:last-child {
    margin-bottom: 0;
}
.palyazat-letoltes-sor {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid #e2e8f0;
}
.palyazat-letoltes-gomb {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-height: 58px;
    padding: 8px 20px 8px 10px;
    border: 2px solid #4d3b78;
    border-radius: 18px;
    background: #ff8fa3;
    color: #2d2145;
    text-decoration: none;
    font-weight: 800;
    box-shadow: 0 6px 0 #4d3b78;
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.palyazat-letoltes-gomb:hover,
.palyazat-letoltes-gomb:focus-visible {
    color: #2d2145;
    background: #ffb3c1;
    transform: translateY(-2px);
    box-shadow: 0 8px 0 #4d3b78;
}
.palyazat-letoltes-gomb img {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    object-fit: contain;
}
.palyazat-letoltes-gomb small {
    font-size: .78em;
    font-weight: 700;
}
.palyazat-nincs-letoltes {
    padding: 12px 20px;
    border-radius: 16px;
    background: #e2e8f0;
    color: #475569;
    font-weight: 700;
}

/* --- Beküldő űrlap képelőnézet --- */
.kep-elonezet {
    display: none;
    align-items: center;
    gap: 10px;
    width: fit-content;
    max-width: 100%;
    margin-top: 10px;
    padding: 10px;
    border: 1px dashed #cbd5e1;
    border-radius: 14px;
    background: #f8fafc;
}
.kep-elonezet.is-visible { display: flex; }
.kep-elonezet img {
    width: 68px;
    height: 68px;
    flex: 0 0 68px;
    object-fit: cover;
    border-radius: 12px;
    background: #fff;
}
.kep-elonezet span {
    font-size: 0.85rem;
    font-weight: 600;
    color: #475569;
    word-break: break-all;
}

@media (max-width: 600px) {
    .palyazat-kep-box a { padding: 10px; }
    .palyazat-kep-box img.palyazat-kep { max-height: 320px; }
    .palyazat-letoltes-gomb { width: 100%; justify-content: center; padding-right: 14px; }
    .kep-elonezet img { width: 60px; height: 60px; flex-basis: 60px; }
}

/* ============================================================
   HERO-ART VISUAL SYSTEM — the whole site follows the hero banner
   ============================================================ */
:root{
  --art-ink:#173d63;
  --art-orange:#ef6c18;
  --art-yellow:#f4bd27;
  --art-sky:#dceef5;
  --art-paper:#fffdf7;
  --art-paper-warm:#fff8e9;
  --art-wood:#d9a66a;
  --art-line:rgba(31,57,76,.72);
  --art-shadow:0 10px 28px rgba(64,48,30,.12);
}

html{scroll-behavior:smooth}
body{
  font-family:'Plus Jakarta Sans',system-ui,sans-serif;
  color:#30424d;
  background:
    radial-gradient(circle at 12% 8%,rgba(244,189,39,.10),transparent 23%),
    radial-gradient(circle at 88% 24%,rgba(91,170,205,.10),transparent 24%),
    linear-gradient(180deg,#fffdf8 0%,#f8f2e7 100%);
  background-attachment:fixed;
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.17;
  background-image:repeating-linear-gradient(0deg,rgba(70,55,35,.025) 0 1px,transparent 1px 5px);
}
h1,h2,h3,h4,.chibi-brand-title,.footer-motto,.hero-kicker{
  font-family:'Kalam','Patrick Hand','Fredoka',cursive,sans-serif;
}
h1,h2,h3,h4{color:var(--art-ink)}

/* Hand-drawn paper header */
.chibi-navbar{
  background:rgba(255,253,247,.96);
  border-bottom:0;
  box-shadow:0 4px 16px rgba(69,54,35,.08);
  position:sticky;
}
.chibi-navbar::after{
  content:"";position:absolute;left:0;right:0;bottom:-5px;height:10px;
  background:linear-gradient(177deg,transparent 0 28%,rgba(239,108,24,.18) 29% 42%,transparent 43% 57%,rgba(23,61,99,.13) 58% 72%,transparent 73%);
  opacity:.8;pointer-events:none;
}
.chibi-logo-badge{border-radius:50%;background:#fff;border:3px solid #fff;box-shadow:0 3px 12px rgba(30,50,60,.13);transform:rotate(-2deg)}
.chibi-nav-logo{border-radius:50%}
.chibi-brand-title{font-size:2rem;color:var(--art-ink);letter-spacing:.01em}
.dot-pop{color:var(--art-orange)}
.chibi-brand-tagline{color:#6d6a62;font-family:'Kalam',cursive;font-size:.95rem}
.chibi-nav-menu ul{gap:10px}
.chibi-nav-menu ul a{
  color:var(--art-ink);padding:8px 12px;display:block;font-family:'Kalam',cursive;font-size:1.08rem;
  position:relative;transform:rotate(-.7deg)
}
.chibi-nav-menu ul a:hover{color:var(--art-orange)}
.chibi-nav-menu ul a:hover::after{content:"";position:absolute;left:8px;right:8px;bottom:3px;height:4px;background:rgba(239,108,24,.35);border-radius:50%;transform:rotate(-2deg)}
.chibi-btn-cta,.btn-chibi-primary,.btn-submit-form{
  background:var(--art-orange)!important;color:#fff!important;border:2px solid var(--art-ink)!important;
  border-radius:10px 12px 9px 11px!important;box-shadow:3px 4px 0 var(--art-ink)!important;
  font-family:'Kalam',cursive!important;font-size:1.12rem!important;font-weight:700!important;
}
.chibi-btn-cta:hover,.btn-chibi-primary:hover,.btn-submit-form:hover{transform:translate(1px,2px) rotate(-1deg);box-shadow:1px 2px 0 var(--art-ink)!important}

/* Hero remains the visual reference; make it the site's visual language */
.illustrated-hero{
  background:#fff8e9!important;padding:34px 0 46px!important;border-radius:0!important;
}
.hero-art-wrap{
  border:7px solid #fff!important;border-radius:8px 16px 10px 13px!important;
  box-shadow:8px 10px 0 rgba(23,61,99,.12),0 20px 45px rgba(64,48,30,.15)!important;
  transform:rotate(-.35deg);
}
.hero-art-wrap::before{content:"";position:absolute;inset:7px;border:2px dashed rgba(23,61,99,.20);pointer-events:none;z-index:2}
.hero-art-img{filter:saturate(.98) contrast(1.02)}
.hero-kicker{background:var(--art-ink)!important;border:2px solid var(--art-ink);border-radius:5px 11px 6px 9px!important;box-shadow:4px 4px 0 rgba(239,108,24,.55);font-size:1rem!important;letter-spacing:.04em!important}
.illustrated-hero .chibi-hero-title{font-size:clamp(2.6rem,5vw,4.5rem)!important;color:var(--art-ink)!important;text-shadow:2px 2px 0 #fff,4px 5px 0 rgba(23,61,99,.10)!important}
.gradient-text{color:var(--art-orange)!important;background:none!important;-webkit-text-fill-color:initial!important}
.illustrated-hero .chibi-hero-sub{font-family:'Kalam',cursive;font-size:1.3rem;color:#4f5960}

/* Every content block becomes an illustrated sheet of paper */
.chibi-features-bar,.layout-grid,.main-column,.sidebar-column{position:relative}
.chibi-features-bar{background:transparent!important;padding:22px 0 10px!important}
.chibi-feature-card,.chibi-featured-card,.chibi-slide-inner,.chibi-widget-card,.chibi-q-card,.chibi-list-item,.chibi-art-card,.chibi-slider-wrap,.chibi-side-search,.chibi-empty-box{
  background:var(--art-paper)!important;
  border:2px solid rgba(23,61,99,.72)!important;
  border-radius:7px 12px 9px 14px!important;
  box-shadow:5px 6px 0 rgba(23,61,99,.10),0 12px 24px rgba(64,48,30,.07)!important;
  position:relative;overflow:hidden;
}
.chibi-feature-card::before,.chibi-featured-card::before,.chibi-slide-inner::before,.chibi-widget-card::before,.chibi-q-card::before,.chibi-art-card::before,.chibi-slider-wrap::before{
  content:"";position:absolute;left:10px;right:10px;top:6px;height:3px;
  background:rgba(239,108,24,.18);border-radius:50%;transform:rotate(-.7deg);pointer-events:none;
}
.chibi-feature-card{transform:rotate(-.4deg)}
.chibi-feature-card:nth-child(even){transform:rotate(.55deg)}
.chibi-feature-card h4{font-size:1.25rem}
.chibi-feature-card p,.chibi-widget-card,.chibi-list-item small{color:#65645e}
.icon-wrap.art-icon{background:transparent!important;border-radius:50%;border:2px dashed rgba(23,61,99,.3);padding:4px}

/* Section headings get the brush-stroke feel from the hero */
.section-title-flex{align-items:end;border-bottom:0!important;position:relative;margin-bottom:22px}
.section-title-flex::after,.chibi-slider-header::after{
  content:"";position:absolute;left:0;bottom:-7px;width:210px;height:8px;
  background:rgba(239,108,24,.38);border-radius:50% 20% 45% 12%;transform:rotate(-1.5deg)
}
.section-title-flex h2,.chibi-slider-header h3{font-size:2rem!important;color:var(--art-ink)!important}
.link-more,.btn-slide-link{color:var(--art-orange)!important;font-family:'Kalam',cursive;font-size:1.05rem;font-weight:700}

/* Search/filter areas */
.chibi-search-box,.chibi-side-search{background:var(--art-paper)!important;border:2px solid var(--art-ink)!important;border-radius:8px!important;box-shadow:4px 5px 0 rgba(23,61,99,.10)!important}
.chibi-search-box input,.chibi-side-search input,.bekuldes-form-group input,.bekuldes-form-group textarea,.bekuldes-form-group select{
  background:#fffdf8!important;border:2px solid rgba(23,61,99,.35)!important;border-radius:6px!important;font-family:'Kalam',cursive;font-size:1.05rem;color:#354651!important
}
.chibi-search-btn{background:var(--art-ink)!important;border:2px solid var(--art-ink)!important;border-radius:6px!important}

/* Cards feel like loose sheets pinned onto a drawing table */
.chibi-slide-item,.chibi-featured-card{background:transparent!important;border:0!important;box-shadow:none!important}
.chibi-slide-inner{transform:rotate(.2deg)}
.chibi-slide-item:nth-child(2n) .chibi-slide-inner{transform:rotate(-.35deg)}
.slide-img,.chibi-featured-img{border-radius:5px!important;border:4px solid #fff!important;box-shadow:3px 4px 0 rgba(23,61,99,.14)!important}
.slide-badge,.chibi-badge-featured,.chibi-age-pill{background:var(--art-yellow)!important;color:var(--art-ink)!important;border:2px solid var(--art-ink)!important;border-radius:5px 9px 4px 8px!important;font-family:'Kalam',cursive!important}
.btn-slider-nav{background:#fff!important;border:2px solid var(--art-ink)!important;color:var(--art-ink)!important;border-radius:50%!important;box-shadow:2px 3px 0 rgba(23,61,99,.18)}
.btn-slider-nav:hover{background:var(--art-orange)!important;color:#fff!important}

.chibi-deco-strip{
  background:var(--art-paper-warm)!important;border:2px solid rgba(23,61,99,.65)!important;
  border-radius:6px 14px 8px 11px!important;box-shadow:5px 5px 0 rgba(23,61,99,.09)!important;
  transform:rotate(-.4deg);position:relative
}
.chibi-deco-strip p{font-family:'Kalam',cursive!important;color:var(--art-ink)!important;font-size:1.35rem!important}
.chibi-art-card{transform:rotate(-1deg)}
.chibi-art-card:nth-child(even){transform:rotate(1deg)}

/* Single-pályázat content: same paper/ink/orange language */
.palyazat-kep-box,.palyazat-dijazas,.palyazat-eredmenyhirdetes,.palyazat-bekuldesi-hely,.palyazat-letoltes-sor{
  background:var(--art-paper)!important;border:2px solid rgba(23,61,99,.65)!important;
  border-radius:7px 13px 8px 12px!important;box-shadow:5px 6px 0 rgba(23,61,99,.09)!important;
}
.palyazat-letoltes-gomb{background:var(--art-orange)!important;border:2px solid var(--art-ink)!important;box-shadow:3px 3px 0 var(--art-ink)!important;border-radius:7px!important}

/* Footer = painted strip + paper */
.footer-art-band{height:90px!important;background-image:url('images/deco-footer-band.jpg')!important;background-size:cover!important;background-position:center!important;border:0!important}
.site-footer{background:#fff8e9!important;border-top:2px solid var(--art-ink)!important}
.footer-motto{color:var(--art-ink)!important;font-size:1.8rem!important}
.footer-nav a{color:var(--art-ink)!important;font-family:'Kalam',cursive;font-size:1.05rem}
.copyright{color:#7b786f!important}

/* Modal should look like a sheet pinned over the drawing desk */
.modal-overlay{background:rgba(23,61,99,.45)!important;backdrop-filter:blur(3px)}
.modal-card{background:var(--art-paper)!important;border:3px solid var(--art-ink)!important;border-radius:7px 15px 9px 13px!important;box-shadow:9px 10px 0 rgba(23,61,99,.25)!important}
.modal-card h2{color:var(--art-ink)!important}
.modal-close{background:var(--art-orange)!important;color:#fff!important;border:2px solid var(--art-ink)!important;box-shadow:2px 2px 0 var(--art-ink)!important;border-radius:50%!important}

/* Small hand-painted marks around major blocks */
.layout-grid::before{content:"✦";position:absolute;left:-18px;top:18px;color:var(--art-orange);font-size:1.7rem;transform:rotate(-14deg)}
.layout-grid::after{content:"✎";position:absolute;right:-8px;bottom:30px;color:var(--art-ink);font-size:2rem;transform:rotate(16deg);opacity:.55}

@media(max-width:900px){
  .chibi-nav-menu ul{display:none}
  .chibi-brand-title{font-size:1.6rem}
  .illustrated-hero .chibi-hero-title{font-size:2.7rem!important}
  .chibi-features-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:600px){
  .chibi-navbar{padding:10px 0}
  .chibi-brand-tagline{display:none}
  .chibi-logo-badge,.chibi-nav-logo{width:52px;height:52px}
  .chibi-logo-badge{flex-basis:52px}
  .chibi-brand-title{font-size:1.4rem}
  .chibi-btn-cta{padding:7px 10px!important;font-size:.95rem!important}
  .illustrated-hero{padding:25px 0 30px!important}
  .illustrated-hero .chibi-hero-title{font-size:2.25rem!important}
  .illustrated-hero .chibi-hero-sub{font-size:1.12rem}
  .chibi-features-grid{grid-template-columns:1fr!important}
  .deco-hero-cat,.deco-hero-tools{opacity:.45;transform:scale(.75)}
  .section-title-flex h2,.chibi-slider-header h3{font-size:1.65rem!important}
}


/* ============================================================
   FULL-SITE HAND-DRAWN ART LAYER
   A hero-banner-matching pencil / sketch visual system.
   ============================================================ */
:root{
  --sketch-ink:#244b62;
  --sketch-orange:#ef6c18;
  --sketch-paper:#fffdf7;
  --sketch-pencil:rgba(36,75,98,.58);
  --sketch-line:rgba(36,75,98,.20);
}

/* A subtle illustrated paper surface is present behind the entire site. */
body{
  background-color:#fbf7ee!important;
  background-image:
    url('images/doodle-pattern.svg'),
    radial-gradient(circle at 10% 15%,rgba(239,108,24,.09),transparent 20%),
    radial-gradient(circle at 90% 38%,rgba(71,151,184,.10),transparent 22%),
    linear-gradient(180deg,#fffdf8 0%,#f5eee2 100%)!important;
  background-size:520px 360px,auto,auto,auto!important;
  background-attachment:fixed!important;
}

/* Pencil grain over the whole viewport. */
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:9998;
  opacity:.055;
  background-image:
    repeating-linear-gradient(0deg,rgba(35,55,65,.7) 0 1px,transparent 1px 5px),
    repeating-linear-gradient(90deg,rgba(239,108,24,.35) 0 1px,transparent 1px 8px);
  mix-blend-mode:multiply;
}

/* Header: notebook strip with doodles. */
.chibi-navbar{
  background:#fffdf7!important;
  border-bottom:3px solid var(--sketch-ink)!important;
  box-shadow:0 5px 0 rgba(36,75,98,.08)!important;
}
.chibi-navbar::before{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-12px;height:16px;
  background:url('images/doodle-divider.svg') center/900px 220px no-repeat;
  opacity:.23;
  pointer-events:none;
  z-index:-1;
}
.chibi-logo-link::after{
  content:"✎  ✦  ♡";
  position:absolute;
  left:145px;
  bottom:4px;
  color:var(--sketch-orange);
  font:700 18px 'Kalam',cursive;
  transform:rotate(-6deg);
  opacity:.65;
}

/* Every major region gets its own hand-drawn margin illustration. */
.chibi-features-bar,
.layout-grid,
.site-footer,
.single-post-card,
.main-column,
.sidebar-column{
  position:relative;
}
.chibi-features-bar::after,
.layout-grid::after,
.single-post-card::after,
.sidebar-column::after{
  content:"";
  position:absolute;
  width:110px;height:90px;
  background:url('images/doodle-pattern.svg') center/300px auto no-repeat;
  opacity:.22;
  pointer-events:none;
}
.chibi-features-bar::after{right:-35px;top:-12px;transform:rotate(9deg)}
.layout-grid::after{right:-30px;top:120px;transform:rotate(-8deg)}
.sidebar-column::after{right:-15px;bottom:30px;transform:rotate(12deg)}
.single-post-card::after{right:15px;top:12px;transform:rotate(7deg)}

/* Feature area itself is a sketchbook spread. */
.chibi-features-grid{
  background:rgba(255,253,247,.90)!important;
  border:3px solid var(--sketch-ink)!important;
  box-shadow:7px 8px 0 rgba(36,75,98,.10)!important;
  border-radius:8px 15px 9px 13px!important;
  position:relative;
}
.chibi-features-grid::before{
  content:"";
  position:absolute;left:18px;right:18px;bottom:-9px;height:8px;
  background:rgba(239,108,24,.22);border-radius:50%;
  transform:rotate(-1deg);
}

/* Cards: paper, pencil border, tiny hand-drawn corner marks. */
.chibi-feature-card,
.chibi-widget-card,
.chibi-q-card,
.chibi-list-item,
.chibi-slider-wrap,
.chibi-featured-card,
.chibi-art-card,
.chibi-side-search,
.chibi-empty-box,
.chibi-slide-inner{
  background:rgba(255,253,247,.96)!important;
  border:2px solid var(--sketch-ink)!important;
  box-shadow:5px 7px 0 rgba(36,75,98,.10)!important;
}
.chibi-feature-card::after,
.chibi-widget-card::after,
.chibi-q-card::after,
.chibi-list-item::after,
.chibi-slider-wrap::after,
.chibi-featured-card::after,
.chibi-art-card::after{
  content:"✦";
  position:absolute;
  right:10px;top:7px;
  color:var(--sketch-orange);
  font:700 18px 'Kalam',cursive;
  opacity:.55;
  transform:rotate(12deg);
}
.chibi-feature-card:nth-child(3n)::after{content:"♡"}
.chibi-feature-card:nth-child(4n)::after{content:"✎"}

/* Headings look hand-lettered, with a pencil underline. */
.section-title-flex h2,
.chibi-slider-header h3,
.widget-title{
  text-shadow:1px 1px 0 #fff;
}
.section-title-flex h2::after,
.chibi-slider-header h3::after,
.widget-title::after{
  content:"";
  display:block;
  width:125px;height:7px;
  margin-top:6px;
  background:var(--sketch-orange);
  opacity:.38;
  border-radius:60% 20% 55% 15%;
  transform:rotate(-2deg);
}

/* Lists have sketch separators. */
.chibi-list-item{
  background-image:linear-gradient(transparent 94%,rgba(36,75,98,.08) 95%,transparent 96%)!important;
}
.chibi-list-item + .chibi-list-item{transform:rotate(.25deg)}
.chibi-list-item:nth-child(odd){transform:rotate(-.3deg)}
.chibi-list-item:hover{transform:translateY(-3px) rotate(-.3deg)!important}

/* Search is a drawn search sheet. */
.chibi-search-box,
.chibi-side-search{
  position:relative;
}
.chibi-search-box::after,
.chibi-side-search::after{
  content:"⌕";
  position:absolute;
  right:14px;bottom:-20px;
  color:var(--sketch-ink);
  font:700 34px 'Kalam',cursive;
  opacity:.22;
  transform:rotate(-15deg);
}

/* Inputs resemble ruled notebook paper. */
.bekuldes-form-group input,
.bekuldes-form-group textarea,
.bekuldes-form-group select,
.chibi-search-box input,
.chibi-side-search input{
  background:
    linear-gradient(transparent 31px,rgba(36,75,98,.09) 32px,transparent 33px),
    #fffdf7!important;
  background-size:100% 33px!important;
  border:2px solid var(--sketch-ink)!important;
  box-shadow:2px 3px 0 rgba(36,75,98,.08)!important;
}

/* Buttons look like marker / pencil labels. */
.chibi-btn-cta,
.btn-chibi-primary,
.btn-submit-form,
.btn-slide-link,
.palyazat-letoltes-gomb{
  position:relative;
  border:2px solid var(--sketch-ink)!important;
  box-shadow:4px 4px 0 var(--sketch-ink)!important;
}
.chibi-btn-cta::after,
.btn-chibi-primary::after,
.btn-submit-form::after{
  content:"✦";
  position:absolute;right:8px;top:-10px;
  color:var(--sketch-orange);
  font-size:18px;
  transform:rotate(15deg);
}

/* Main content gets a continuous sketchbook rhythm. */
.main-column > *,
.sidebar-column > *{
  margin-bottom:24px;
}
.main-column > *:last-child,
.sidebar-column > *:last-child{margin-bottom:0}

/* Featured item: add a taped-paper illusion. */
.chibi-featured-card::before{
  content:"";
  position:absolute;
  top:-10px;left:34px;
  width:82px;height:24px;
  background:rgba(244,189,39,.42);
  border:1px solid rgba(36,75,98,.18);
  transform:rotate(-4deg);
  z-index:8;
}

/* Slider image gets a drawn frame. */
.slide-img,
.chibi-featured-img,
.item-thumb img{
  border:4px solid #fff!important;
  outline:2px solid var(--sketch-ink);
  box-shadow:4px 5px 0 rgba(36,75,98,.16)!important;
}

/* Sidebar deadline badges become pencil stickers. */
.chibi-date-badge{
  background:var(--sketch-orange)!important;
  border:2px solid var(--sketch-ink)!important;
  box-shadow:3px 3px 0 var(--sketch-ink)!important;
  border-radius:5px 9px 5px 8px!important;
}

/* Single post: a full sheet of illustrated paper. */
.single-post-card{
  background:rgba(255,253,247,.97)!important;
  border:3px solid var(--sketch-ink)!important;
  border-radius:8px 15px 10px 13px!important;
  box-shadow:8px 9px 0 rgba(36,75,98,.12)!important;
  padding:34px!important;
}
.single-post-card h1{
  font-size:clamp(2rem,4vw,3.2rem)!important;
  text-decoration:underline;
  text-decoration-color:rgba(239,108,24,.38);
  text-decoration-thickness:7px;
  text-underline-offset:8px;
}
.entry-content{
  background:
    repeating-linear-gradient(0deg,transparent 0 34px,rgba(36,75,98,.055) 35px 36px),
    #fffdf7;
  padding:22px!important;
  border:2px dashed rgba(36,75,98,.38);
  border-radius:5px 10px 7px 12px;
}
.palyazat-kep-box{
  border:3px solid var(--sketch-ink)!important;
  box-shadow:6px 7px 0 rgba(36,75,98,.12)!important;
  transform:rotate(-.5deg);
}
.palyazat-dijazas,
.palyazat-bekuldesi-hely,
.palyazat-eredmenyhirdetes{
  border:2px solid var(--sketch-ink)!important;
  border-left:8px solid var(--sketch-orange)!important;
  position:relative;
}
.palyazat-dijazas::after,
.palyazat-bekuldesi-hely::after,
.palyazat-eredmenyhirdetes::after{
  content:"✎";
  position:absolute;right:15px;top:10px;
  color:var(--sketch-ink);opacity:.28;
  font-size:30px;transform:rotate(15deg);
}

/* Submission modal = an illustrated clipboard sheet. */
.modal-card{
  background:
    repeating-linear-gradient(0deg,transparent 0 34px,rgba(36,75,98,.045) 35px 36px),
    #fffdf7!important;
  border:3px solid var(--sketch-ink)!important;
}
.modal-card::before{
  content:"RAJZOS ÖTLET ✦";
  position:absolute;
  top:-16px;left:50%;
  transform:translateX(-50%) rotate(-2deg);
  background:#f4bd27;
  border:2px solid var(--sketch-ink);
  padding:5px 15px;
  font:700 16px 'Kalam',cursive;
  box-shadow:3px 3px 0 var(--sketch-ink);
}

/* Footer gets an actual drawn horizon + notebook marks. */
.footer-art-band{
  height:130px!important;
  background-image:url('images/doodle-divider.svg'),url('images/deco-footer-band.jpg')!important;
  background-size:900px 220px,cover!important;
  background-position:center,center!important;
  background-repeat:no-repeat!important;
  border-top:3px solid var(--sketch-ink)!important;
  border-bottom:3px solid var(--sketch-ink)!important;
  position:relative;
}
.footer-art-band::after{
  content:"✎  🎨  ✦  ♡  ☁";
  position:absolute;left:50%;top:50%;
  transform:translate(-50%,-50%) rotate(-2deg);
  color:var(--sketch-ink);
  font:700 26px 'Kalam',cursive;
  letter-spacing:18px;
  opacity:.45;
  white-space:nowrap;
}
.site-footer{
  background:#fff8e9!important;
  position:relative;
}
.site-footer::before{
  content:"";
  display:block;
  height:26px;
  margin-top:-1px;
  background:url('images/doodle-pattern.svg') center/520px 360px;
  opacity:.20;
}

/* Make every standalone paragraph/list section feel illustrated. */
.entry-content p,
.chibi-widget-card p,
.chibi-list-item p{
  position:relative;
}
.entry-content blockquote{
  margin:22px 0;
  padding:18px 22px;
  border-left:7px solid var(--sketch-orange);
  background:#fff8e9;
  border-top:2px dashed rgba(36,75,98,.3);
  border-bottom:2px dashed rgba(36,75,98,.3);
  transform:rotate(-.4deg);
}

/* Mobile: keep doodles visible but lighter. */
@media(max-width:700px){
  body{background-size:360px 250px,auto,auto,auto!important}
  .chibi-logo-link::after{display:none}
  .chibi-features-bar::after,
  .layout-grid::after,
  .single-post-card::after,
  .sidebar-column::after{opacity:.12}
  .single-post-card{padding:20px!important}
  .entry-content{padding:16px!important}
  .footer-art-band{height:105px!important}
  .footer-art-band::after{font-size:20px;letter-spacing:8px}
}

/* ============================
   Archív szűrő sáv és rács (v1.5.0)
   ============================ */
.archive-header { text-align: center; margin-bottom: 25px; }
.archive-title { font-family: 'Fredoka', sans-serif; font-size: 2.2rem; color: var(--chibi-dark, #1f2937); margin: 0 0 6px; }
.archive-sub { color: #64748b; margin: 0; }

.archive-filter-bar {
    display: flex; flex-wrap: wrap; gap: 14px; align-items: flex-end;
    background: var(--art-paper, #fffdf7); border: 2px solid var(--art-ink, #173d63);
    border-radius: 18px; padding: 18px 20px; box-shadow: 4px 5px 0 rgba(23,61,99,.10);
    margin-bottom: 22px;
}
.filter-field { display: flex; flex-direction: column; gap: 6px; flex: 1 1 170px; min-width: 150px; }
.filter-field-text { flex: 2 1 220px; }
.filter-field label { font-weight: 700; font-size: .85rem; color: var(--chibi-dark, #1f2937); }
.filter-field input, .filter-field select {
    border: 2px solid var(--art-ink, #173d63); border-radius: 10px;
    padding: 10px 12px; font-size: .95rem; background: #fff; width: 100%;
    font-family: inherit;
}
.filter-field input:focus, .filter-field select:focus { outline: 3px solid rgba(59,130,246,.25); }
.filter-actions { display: flex; flex-direction: column; gap: 8px; align-items: stretch; }
.filter-reset-link { font-size: .82rem; color: #ef4444; text-decoration: none; text-align: center; font-weight: 600; }
.filter-reset-link:hover { text-decoration: underline; }

.archive-active-filters { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 20px; color: #475569; }
.active-filter-chip {
    background: #e0f2fe; border: 1.5px solid #38bdf8; color: #0369a1;
    border-radius: 999px; padding: 4px 12px; font-size: .85rem; font-weight: 600;
}

.archive-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 22px; }
.archive-card {
    background: #fff; border: 2px solid var(--art-ink, #173d63); border-radius: 18px;
    overflow: hidden; box-shadow: 4px 5px 0 rgba(23,61,99,.10);
    display: flex; flex-direction: column; transition: transform .15s ease;
}
.archive-card:hover { transform: translateY(-4px); }
.archive-card-thumb { display: block; height: 160px; background: #f1f5f9; overflow: hidden; }
.archive-card-thumb img { width: 100%; height: 100%; object-fit: cover; }
.archive-card-placeholder { display: flex; align-items: center; justify-content: center; height: 100%; font-size: 3rem; }
.archive-card-body { padding: 16px 18px 18px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.archive-card-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.archive-tag-kat {
    background: #fdf2f8; border: 1.5px solid #f9a8d4; color: #be185d;
    border-radius: 999px; padding: 2px 10px; font-size: .75rem; font-weight: 700; text-decoration: none;
}
.archive-tag-kat:hover { background: #fbcfe8; }
.archive-card-title { margin: 0; font-family: 'Fredoka', sans-serif; font-size: 1.15rem; line-height: 1.3; }
.archive-card-title a { color: var(--chibi-dark, #1f2937); text-decoration: none; }
.archive-card-title a:hover { color: #e11d78; }
.archive-card-meta { font-size: .85rem; color: #64748b; line-height: 1.5; }
.archive-card-footer { margin-top: auto; display: flex; justify-content: space-between; align-items: center; gap: 10px; }

.archive-pagination { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 32px; }
.archive-pagination .page-numbers {
    display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px;
    padding: 0 12px; border: 2px solid var(--art-ink, #173d63); border-radius: 10px;
    background: #fff; color: var(--chibi-dark, #1f2937); text-decoration: none; font-weight: 700;
}
.archive-pagination .page-numbers.current { background: var(--art-ink, #173d63); color: #fff; }
.archive-pagination .page-numbers:hover:not(.current):not(.dots) { background: #f1f5f9; }

.kategoria-chip-list { display: flex; flex-wrap: wrap; gap: 8px; }
.kategoria-chip {
    display: inline-block; background: #fff; border: 2px solid var(--art-ink, #173d63);
    border-radius: 999px; padding: 5px 13px; font-size: .82rem; font-weight: 700;
    color: var(--chibi-dark, #1f2937); text-decoration: none; box-shadow: 2px 3px 0 rgba(23,61,99,.10);
    transition: transform .12s ease;
}
.kategoria-chip:hover { transform: translateY(-2px); background: #fdf2f8; color: #e11d78; }

@media (max-width: 720px) {
    .archive-filter-bar { flex-direction: column; align-items: stretch; }
    .filter-field { min-width: 0; }
    .archive-title { font-size: 1.7rem; }
}


/* ===== v2.1.0 – Archívum és hátralévő idő jelvények ===== */
.chibi-time-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.78rem;font-weight:700;line-height:1.4;white-space:nowrap;vertical-align:middle;}
.chibi-badge-active{background:#dcfce7;color:#166534;}
.chibi-badge-warning{background:#fef3c7;color:#92400e;}
.chibi-badge-urgent{background:#fee2e2;color:#b91c1c;animation:chibiPulse 1.4s ease-in-out infinite;}
.chibi-badge-expired{background:#e5e7eb;color:#4b5563;}
@keyframes chibiPulse{0%,100%{box-shadow:0 0 0 0 rgba(239,68,68,.45);}50%{box-shadow:0 0 0 6px rgba(239,68,68,0);}}
.archive-status-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px;}
.status-tab{padding:9px 16px;border-radius:999px;background:#fff;border:2px solid #e5e7eb;font-weight:700;text-decoration:none;color:#334155;transition:.2s;}
.status-tab:hover{border-color:#f472b6;}
.status-tab.is-active{background:#fce7f3;border-color:#ec4899;color:#9d174d;}
.archive-card{position:relative;}
.archive-card.is-expired{opacity:.72;filter:grayscale(.45);}
.archive-card.is-expired:hover{opacity:1;filter:none;}
.archive-expired-corner{position:absolute;top:10px;right:10px;z-index:2;background:#4b5563;color:#fff;font-size:.75rem;font-weight:700;padding:4px 10px;border-radius:999px;}
.palyazat-archiv-notice{background:#f3f4f6;border-left:5px solid #6b7280;padding:14px 18px;border-radius:12px;margin:12px 0 18px;color:#374151;}
.chibi-q-card.q-archive{background:#f1f5f9;}


/* ===== v2.2.0 – Naptár gombok + korcsoport gyorsszűrő ===== */
.naptar-gombok{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 14px;}
.naptar-cim{font-weight:700;}
.btn-naptar{display:inline-block;padding:7px 14px;border-radius:999px;font-weight:700;font-size:.85rem;text-decoration:none;border:2px solid transparent;transition:.2s;}
.btn-naptar-google{background:#e0f2fe;color:#075985;border-color:#7dd3fc;}
.btn-naptar-ics{background:#fce7f3;color:#9d174d;border-color:#f9a8d4;}
.btn-naptar:hover{transform:translateY(-1px);filter:brightness(.97);}
.naptar-megj{width:100%;color:#64748b;}
.naptar-gombok.is-compact{margin:4px 0 0;gap:5px;}
.naptar-gombok.is-compact .btn-naptar{padding:2px 8px;font-size:.7rem;border-width:1px;}
.korcsoport-gyorsszuro{margin:18px 0 4px;}
.korcsoport-gyorsszuro-inner{background:#fff;border-radius:20px;padding:14px 18px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;box-shadow:0 4px 14px rgba(0,0,0,.05);}
.korcsoport-cim{font-family:'Fredoka',sans-serif;font-weight:700;}
.korcsoport-chipek{display:flex;flex-wrap:wrap;gap:8px;}
.korcsoport-chip{padding:7px 14px;border-radius:999px;background:#f5f3ff;border:2px solid #ddd6fe;color:#5b21b6;font-weight:700;text-decoration:none;transition:.2s;}
.korcsoport-chip:hover{background:#ede9fe;border-color:#a78bfa;transform:translateY(-1px);}
.korcsoport-chip.is-all{background:#fef3c7;border-color:#fcd34d;color:#92400e;}
.korcsoport-db{display:inline-block;margin-left:4px;background:#fff;border-radius:999px;padding:0 7px;font-size:.75rem;}

/* ===== FIX KOROSZTÁLYOK – beküldés checkboxok + szűrőgombok ===== */
.korosztaly-checkbox-lista{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-top:6px;}
.korosztaly-check{display:flex;align-items:center;gap:10px;padding:10px 12px;border:2px solid #e2e8f0;border-radius:14px;background:#fff;cursor:pointer;transition:.18s;}
.korosztaly-check:hover{border-color:#a78bfa;background:#faf5ff;transform:translateY(-1px);}
.korosztaly-check input{width:20px;height:20px;accent-color:#7c3aed;flex-shrink:0;cursor:pointer;}
.korosztaly-check-ikon{font-size:22px;line-height:1;}
.korosztaly-check-text{display:flex;flex-direction:column;min-width:0;}
.korosztaly-check-text strong{font-size:14px;color:#1e293b;}
.korosztaly-check-text small{font-size:12px;color:#64748b;}
.korosztaly-check:has(input:checked){border-color:#7c3aed;background:#f5f3ff;box-shadow:0 4px 12px rgba(124,58,237,.14);}

.korcsoport-chip{display:inline-flex;align-items:center;gap:8px;}
.korcsoport-chip-ikon{font-size:20px;line-height:1;}
.korcsoport-chip-text{display:flex;flex-direction:column;line-height:1.2;text-align:left;}
.korcsoport-chip-text strong{font-size:14px;}
.korcsoport-chip-text small{font-size:11px;font-weight:600;opacity:.75;}
.korcsoport-db{background:#ede9fe;border-radius:999px;padding:1px 8px;font-size:12px;}

.korosztaly-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 22px;}
.korosztaly-tab{display:inline-flex;align-items:center;gap:9px;padding:9px 14px;border-radius:999px;border:2px solid #ddd6fe;background:#f5f3ff;color:#5b21b6;text-decoration:none;font-weight:700;transition:.18s;}
.korosztaly-tab:hover{background:#ede9fe;border-color:#a78bfa;transform:translateY(-1px);}
.korosztaly-tab.is-active{background:#7c3aed;border-color:#7c3aed;color:#fff;box-shadow:0 6px 16px rgba(124,58,237,.28);}
.korosztaly-tab-ikon{font-size:20px;line-height:1;}
.korosztaly-tab-text{display:flex;flex-direction:column;line-height:1.2;text-align:left;}
.korosztaly-tab-text strong{font-size:14px;}
.korosztaly-tab-text small{font-size:11px;font-weight:600;opacity:.8;}
.korosztaly-tab-db{background:rgba(124,58,237,.14);border-radius:999px;padding:1px 8px;font-size:12px;}
.korosztaly-tab.is-active .korosztaly-tab-db{background:rgba(255,255,255,.25);}
@media (max-width:600px){
  .korosztaly-checkbox-lista{grid-template-columns:1fr;}
  .korosztaly-tabs{gap:8px;}
  .korosztaly-tab,.korcsoport-chip{padding:8px 11px;}
  .korosztaly-tab-text small,.korcsoport-chip-text small{font-size:10px;}
}


/* ===== v3.0.0 – Kedvencek, szűrők, kiírás, spam-védelem ===== */
.rajz-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.bekuldes-hiba-uzenet{background:#fff4e5;border:2px dashed #f0a04b;color:#7a4b12;padding:14px 18px;border-radius:14px;margin:18px 0;font-weight:600}
.bekuldes-chip-lista{display:flex;flex-wrap:wrap;gap:8px}
.bekuldes-chip{display:inline-flex;align-items:center;gap:6px;background:var(--chibi-pink-light);border:1px solid #ffd0da;border-radius:999px;padding:5px 12px;font-size:.88rem;cursor:pointer}
.archive-card{position:relative}
.kedvenc-gomb{position:absolute;top:10px;right:10px;z-index:3;display:inline-flex;align-items:center;gap:6px;background:#fff;border:2px solid var(--chibi-pink);color:var(--chibi-pink);border-radius:999px;width:38px;height:38px;justify-content:center;font-size:1.2rem;cursor:pointer;box-shadow:0 3px 10px rgba(0,0,0,.08);transition:transform .15s}
.kedvenc-gomb:hover{transform:scale(1.08)}
.kedvenc-gomb.is-active{background:var(--chibi-pink);color:#fff}
.kedvenc-gomb.is-nagy{position:static;width:auto;height:auto;padding:8px 16px;font-size:1rem;margin:4px 0 14px;font-weight:600}
.kedvencek-lebego{position:fixed;left:18px;bottom:18px;z-index:9998;background:var(--chibi-pink);color:#fff;border:0;border-radius:999px;padding:11px 18px;font-weight:700;cursor:pointer;box-shadow:0 6px 18px rgba(255,117,140,.4)}
.kedvencek-db{display:inline-block;background:#fff;color:var(--chibi-pink);border-radius:999px;min-width:22px;padding:0 6px;margin-left:4px;font-size:.85rem}
.kedvencek-panel{position:fixed;left:18px;bottom:74px;z-index:9999;width:min(340px,calc(100vw - 36px));max-height:60vh;overflow:auto;background:#fff;border-radius:var(--chibi-radius);box-shadow:0 12px 40px rgba(0,0,0,.18);padding:16px}
.kedvencek-panel[hidden]{display:none}
.kedvencek-fej{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;color:var(--chibi-dark)}
.kedvencek-zar,.kedvenc-torol{background:none;border:0;font-size:1.3rem;cursor:pointer;color:var(--chibi-gray);line-height:1}
.kedvencek-lista{list-style:none;margin:0;padding:0}
.kedvencek-lista li{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:8px 0;border-bottom:1px dashed #eee}
.kedvencek-lista a{color:var(--chibi-purple);font-weight:600;text-decoration:none}
.kedvencek-ures,.kedvencek-megj{color:var(--chibi-gray);font-size:.85rem}
.archive-tag-technika{background:#e8f7f6;color:#0a7c78}
.archive-tag-tema{background:#f0edff;color:#5443c9}
.archive-tag-hatokor{background:#fff8d6;color:#7a6400;border-radius:999px;padding:3px 10px;font-size:.78rem}
.palyazat-letoltes-sor{display:flex;flex-wrap:wrap;gap:12px}
.palyazat-kiiras-gomb{border-color:var(--chibi-purple)}


/* ========== v4.0: faliújság, kiemelt, eredmények, emlékeztető, éves címke ========== */

/* Kiemelt pályázat kártya */
.kartya-kiemelt {
    border: 2px solid #f59e0b !important;
    box-shadow: 0 8px 24px rgba(245, 158, 11, 0.18);
    position: relative;
    overflow: hidden;
}
.szalag-kiemelt {
    position: absolute;
    top: 14px;
    right: -32px;
    background: #f59e0b;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 36px;
    transform: rotate(45deg);
    letter-spacing: 0.5px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.15);
    z-index: 2;
}

/* Évente ismétlődő pályázat címke */
.badge-annual {
    display: inline-block;
    background: #e0f2fe;
    color: #0369a1;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 20px;
    margin-left: 8px;
    vertical-align: middle;
}

/* Eredmények doboz */
.palyazat-eredmenyek-box {
    background: #fefce8;
    border: 2px solid #fef08a;
    border-radius: 12px;
    padding: 20px;
    margin: 25px 0;
}
.palyazat-eredmenyek-box h3 { margin-top: 0; color: #854d0e; }
.btn-eredmenyek-link {
    display: inline-block;
    background: #ca8a04;
    color: #fff;
    padding: 10px 20px;
    border-radius: 8px;
    font-weight: bold;
    text-decoration: none;
    margin-top: 10px;
}
.btn-eredmenyek-link:hover { background: #a16207; }

/* E-mailes emlékeztető doboz */
.palyazat-emlekezteto-card {
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 12px;
    padding: 18px 20px;
    margin: 25px 0;
}
.emlekezteto-fejlec { font-size: 1.1rem; color: #166534; margin-bottom: 6px; }
.emlekezteto-leiras { font-size: 0.9rem; color: #374151; margin: 0 0 12px; }
.emlekezteto-form { display: flex; gap: 10px; flex-wrap: wrap; }
.emlekezteto-input {
    flex: 1;
    min-width: 220px;
    padding: 10px 14px;
    border: 1px solid #86efac;
    border-radius: 8px;
    font-size: 14px;
}
.emlekezteto-btn {
    background: #16a34a;
    color: #fff;
    border: none;
    padding: 10px 18px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
}
.emlekezteto-btn:hover { background: #15803d; }
.emlekezteto-siker { background: #dcfce7; color: #15803d; padding: 10px 14px; border-radius: 8px; font-weight: 600; }

/* Kérdés a szervezőhöz gomb */
.btn-kerdes-szervezonek {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #e2e8f0;
    color: #334155;
    padding: 10px 18px;
    border-radius: 8px;
    font-weight: 600;
    text-decoration: none;
    border: 1px solid #cbd5e1;
    margin: 10px 0;
}
.btn-kerdes-szervezonek:hover { background: #cbd5e1; }

/* Faliújság nyomtatás gomb */
.btn-faliujsag-nyomtatas {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #fff;
    color: #0f172a;
    border: 1px solid #cbd5e1;
    padding: 8px 16px;
    border-radius: 8px;
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 2px 4px rgba(0,0,0,0.04);
}
.btn-faliujsag-nyomtatas:hover { background: #f8fafc; }

/* Kedvencek csoportos naptárexport */
.btn-kedvencek-export {
    display: block;
    width: 100%;
    text-align: center;
    background: #0284c7;
    color: #fff;
    padding: 10px;
    border-radius: 8px;
    font-weight: bold;
    text-decoration: none;
    margin-top: 12px;
}
.btn-kedvencek-export:hover { background: #0369a1; }


/* ========== v4.1: Firkavár kapcsolatok és alapértelmezett illusztráció ========== */
.chibi-facebook-link,
.footer-facebook-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--art-ink, var(--chibi-dark));
    font-weight: 700;
    text-decoration: none;
}
.chibi-facebook-link::before,
.footer-facebook-link::before {
    content: "f";
    display: inline-grid;
    place-items: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #1877f2;
    color: #fff;
    font-family: Arial, sans-serif;
    font-size: 17px;
    font-weight: 700;
}
.chibi-facebook-link:hover,
.footer-facebook-link:hover,
.copyright a:hover { color: var(--chibi-pink); }
.footer-facebook-link { justify-content: center; margin: 0 auto 14px; }
.copyright a { color: inherit; font-weight: 700; }
.slide-img.is-default-illustration,
.chibi-featured-img.is-default-illustration {
    background-size: contain;
    background-repeat: no-repeat;
    background-color: var(--art-paper-warm, #fff8e9);
}
.default-thumbnail { object-fit: contain !important; background: var(--art-paper-warm, #fff8e9); }
@media (max-width: 900px) {
    .chibi-nav-menu { gap: 12px; }
    .chibi-facebook-link { font-size: .85rem; }
}
@media (max-width: 480px) {
    .chibi-facebook-link { width: 24px; overflow: hidden; font-size: 0; }
}

/* Faliújság képes elérés a kezdőlapon */
.faliujsag-image-link { display: block; margin: 25px auto 0; width: 100%; max-width: min(698px, 100%); overflow: hidden; border-radius: 12px; box-shadow: var(--chibi-shadow); box-sizing: border-box; }
.faliujsag-image-link img { display: block; width: 100%; max-width: 100%; height: auto; }
/* Biztonsági szabály: egyetlen kép sem nyomhatja szét az oldalt */
img { max-width: 100%; height: auto; }
.faliujsag-image-link:focus-visible { outline: 3px solid var(--chibi-purple); outline-offset: 3px; }

/* ========== v4.3.3: Kompakt kereső a felső menüben, a Facebook előtt ========== */
.chibi-nav-search {
    display: flex;
    align-items: center;
    gap: 4px;
    background: #fffdf8;
    border: 2px solid var(--art-ink, var(--chibi-dark));
    border-radius: 30px;
    padding: 4px 5px 4px 12px;
    max-width: 260px;
    min-width: 0;
    flex: 1 1 auto;
    box-shadow: 3px 4px 0 rgba(23,61,99,.08);
}
.chibi-nav-search .search-icon { font-size: .95rem; }
.chibi-nav-search input[type="search"] {
    border: none !important;
    outline: none;
    background: transparent !important;
    box-shadow: none !important;
    width: 100%;
    min-width: 0;
    padding: 6px 4px;
    font-size: .9rem;
    font-family: inherit;
    color: var(--chibi-dark);
}
.chibi-nav-search input::placeholder { color: #8a97a5; }
.chibi-nav-search .chibi-search-btn.nav-search-btn {
    background: var(--art-ink, var(--chibi-dark));
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 34px;
    height: 34px;
    padding: 0;
    flex: 0 0 34px;
    cursor: pointer;
    font-size: .95rem;
    line-height: 1;
    transition: background-color 0.2s;
}
.chibi-nav-search .chibi-search-btn.nav-search-btn:hover { background: var(--art-orange, var(--chibi-pink)); }
@media (max-width: 900px) {
    .chibi-nav-search { max-width: 150px; padding: 3px 4px 3px 10px; }
    .chibi-nav-search input[type="search"] { padding: 5px 2px; font-size: .85rem; }
    .chibi-nav-search .chibi-search-btn.nav-search-btn { width: 30px; height: 30px; flex-basis: 30px; }
}
@media (max-width: 480px) {
    .chibi-nav-search input[type="search"] { font-size: .8rem; }
}

/* ===== v4.3.4 – korcsoport sáv egy sorban ===== */
@media (min-width: 900px){
  .korcsoport-gyorsszuro-inner{flex-wrap:nowrap;gap:10px;}
  .korcsoport-chipek{flex-wrap:nowrap;flex:1;justify-content:flex-start;gap:6px;}
  .korcsoport-chip{padding:6px 10px;gap:6px;white-space:nowrap;}
  .korcsoport-chip-text small{display:none;}
  .korcsoport-cim{white-space:nowrap;}
}

/* v4.3.9 – festett, lap tetején maradó Firkavár-fejléc */
.chibi-navbar {
    position: sticky !important;
    top: 0 !important;
    left: auto;
    right: auto;
    z-index: 1000;
    padding: 8px 0;
    background: #dff3ff url('images/header-art.jpg') center center / cover no-repeat !important;
    border-bottom: 2px solid var(--art-ink) !important;
    box-shadow: 0 3px 9px rgba(23,61,99,.14) !important;
}
.chibi-navbar::after { bottom: -6px; }
.chibi-navbar::before { display: none; }
.chibi-nav-container { min-height: 72px; gap: 16px; }
.chibi-logo-link { position: relative; flex: 0 0 auto; gap: 10px; }
.chibi-logo-link::after { display: none; }
.chibi-logo-badge,
.chibi-nav-logo {
    width: 82px;
    height: 82px;
    border-radius: 50%;
}
.chibi-logo-badge { flex-basis: 82px; }
.chibi-brand-title { font-size: 1.75rem; white-space: nowrap; }
.chibi-brand-tagline { font-size: .82rem; }
.chibi-nav-menu { min-width: 0; gap: 10px; }
.chibi-nav-menu ul { flex-shrink: 0; gap: 3px; }
.chibi-nav-menu ul a { padding: 7px 5px; }
.chibi-nav-search { min-width: 0; flex: 1 1 150px; max-width: 210px; }
.chibi-facebook-link, .chibi-btn-cta { flex-shrink: 0; white-space: nowrap; }
.chibi-nav-search input[type="search"] { padding-left: 8px; }
.chibi-nav-search .chibi-search-btn.nav-search-btn,
.chibi-nav-search .chibi-search-btn.nav-search-btn:hover,
.chibi-nav-search .chibi-search-btn.nav-search-btn:focus-visible {
    background: transparent !important;
    color: var(--art-ink, var(--chibi-dark));
    border: 0 !important;
    box-shadow: none;
    border-radius: 0 !important;
    outline-offset: 2px;
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    flex-basis: 30px;
}
.chibi-nav-search .chibi-search-btn.nav-search-btn:hover { transform: scale(1.12); }

/* Minden korcsoport látható egy sorban; nincs oldalirányú görgetés. */
.korcsoport-cim-mobile, .korcsoport-name-mobile, .korcsoport-all-mobile { display: none; }
.korcsoport-gyorsszuro-inner { display: flex; flex-wrap: nowrap; gap: 8px; }
.korcsoport-cim { flex: 0 0 auto; white-space: nowrap; font-size: .92rem; }
.korcsoport-chipek {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    flex-wrap: nowrap;
    gap: 5px;
    overflow: visible;
}
.korcsoport-chip {
    flex: 1 1 auto;
    min-width: 0;
    justify-content: center;
    padding: 6px 7px;
    gap: 4px;
    white-space: nowrap;
}
.korcsoport-chip-ikon { font-size: 16px; }
.korcsoport-chip-text { min-width: 0; }
.korcsoport-chip-text strong { font-size: 12px; }
.korcsoport-chip-text small, .korcsoport-db { display: none; }

@media (max-width: 900px) {
    .chibi-nav-container { gap: 10px; }
    .chibi-nav-menu ul { display: none; }
    .chibi-logo-badge, .chibi-nav-logo { width: 64px; height: 64px; }
    .chibi-logo-badge { flex-basis: 64px; }
    .chibi-brand-title { font-size: 1.5rem; }
    .chibi-nav-search { max-width: 180px; }
}
@media (max-width: 700px) {
    .chibi-navbar { padding: 5px 0; }
    .chibi-nav-container { flex-wrap: wrap; row-gap: 3px; }
    .chibi-logo-link { width: 100%; }
    .chibi-nav-menu { width: 100%; justify-content: flex-end; }
    .chibi-nav-search { max-width: none; flex: 1 1 0; }
    .korcsoport-gyorsszuro-inner { flex-wrap: nowrap; gap: 4px; }
    .korcsoport-cim { flex: 0 0 auto; font-size: .85rem; }
    .korcsoport-cim-desktop, .korcsoport-name-desktop, .korcsoport-all-desktop { display: none; }
    .korcsoport-cim-mobile, .korcsoport-name-mobile, .korcsoport-all-mobile { display: inline; }
    .korcsoport-chipek { width: auto; flex-wrap: nowrap; gap: 3px; }
    .korcsoport-chip { flex: 1 1 0; padding: 6px 2px; }
    .korcsoport-chip-ikon { display: none; }
    .korcsoport-chip-text strong { font-size: 10px; }
}
@media (max-width: 480px) {
    .chibi-brand-title { font-size: 1.35rem; }
    .chibi-brand-tagline { font-size: .75rem; }
    .chibi-btn-cta { width: 44px; height: 44px; padding: 0 !important; font-size: 0 !important; }
    .chibi-btn-cta::before { font-size: 1.65rem; }
    .chibi-facebook-link { width: 24px; }
    .korcsoport-gyorsszuro-inner { padding: 11px 7px; }
    .korcsoport-cim { font-size: 10px; }
    .korcsoport-chip { padding: 7px 1px; gap: 0; font-size: 9px; }
    .korcsoport-chip-text strong { font-size: 9px; }
}

.chibi-nav-search .chibi-search-btn.nav-search-btn svg { display: block; flex: none; }
@media (max-width: 700px) {
    body { overflow-x: clip; }
    .chibi-facebook-link { flex: 0 0 24px; width: 24px; font-size: 0; overflow: hidden; }
    .chibi-facebook-link::before { flex: 0 0 24px; }
}

@media (max-width: 350px) {
    .korcsoport-gyorsszuro-inner { padding: 10px 4px; gap: 2px; }
    .korcsoport-chipek { gap: 2px; }
    .korcsoport-chip, .korcsoport-chip-text strong { font-size: 8px; }
}

/* ==========================================================
   Firkavár v4.4.3 — visual header matching the approved concept
   The artwork itself carries the logo, modern Firkavár lettering,
   and the "Keress · Pályázz" line. Functional controls are layered
   above it so the search remains a real WordPress form.
   ========================================================== */
.chibi-navbar.firkavar-visual-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 210px !important;
    min-height: 210px !important;
    padding: 0 !important;
    margin: 0 !important;
    z-index: 10000 !important;
    border: 0 !important;
    border-bottom: 2px solid rgba(23,61,99,.20) !important;
    border-radius: 0 !important;
    box-shadow: 0 4px 16px rgba(23,61,99,.16) !important;
    background: #fffdf8 !important;
    overflow: hidden !important;
}
.firkavar-header-art {
    position: absolute;
    inset: 0;
    background: url('images/firkavar-header-final.jpg') center center / 100% 100% no-repeat;
}
.firkavar-header-overlay {
    position: relative;
    width: 100%;
    height: 100%;
    pointer-events: none;
}
.firkavar-header-home {
    position: absolute;
    left: 0;
    top: 0;
    width: 31%;
    height: 100%;
    pointer-events: auto;
    display: block;
}
.firkavar-functional-nav {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    pointer-events: none;
}
.firkavar-functional-nav > ul {
    display: none !important;
}
.firkavar-functional-nav .chibi-facebook-link,
.firkavar-functional-nav .chibi-btn-cta {
    display: none !important;
}
.firkavar-visual-search {
    position: absolute !important;
    left: 61.5% !important;
    top: 70.5% !important;
    width: 29.5% !important;
    max-width: none !important;
    height: 48px !important;
    min-width: 0 !important;
    padding: 0 12px 0 18px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    box-sizing: border-box !important;
    background: rgba(255,255,255,.96) !important;
    border: 2px solid #173d63 !important;
    border-radius: 999px !important;
    box-shadow: 0 2px 8px rgba(23,61,99,.08) !important;
    pointer-events: auto !important;
}
.firkavar-visual-search input[type="search"] {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    height: 42px !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 15px !important;
    color: #173d63 !important;
}
.firkavar-visual-search input::placeholder { color: #8290a0 !important; opacity: 1; }
.firkavar-visual-search .nav-search-btn {
    flex: 0 0 38px !important;
    width: 38px !important;
    height: 38px !important;
    display: grid !important;
    place-items: center !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #169bd5 !important;
    color: #fff !important;
}
.firkavar-visual-search .nav-search-btn:hover { background: #0e83b5 !important; transform: none !important; }
body { padding-top: 210px !important; }
.admin-bar .chibi-navbar.firkavar-visual-header { top: 32px !important; }
.admin-bar body { padding-top: 242px !important; }
@media (max-width: 782px) {
    .admin-bar .chibi-navbar.firkavar-visual-header { top: 46px !important; }
    .admin-bar body { padding-top: 256px !important; }
}
@media (max-width: 900px) {
    .chibi-navbar.firkavar-visual-header { height: 160px !important; min-height: 160px !important; }
    body { padding-top: 160px !important; }
    .admin-bar body { padding-top: 192px !important; }
    .firkavar-visual-search { left: 60% !important; top: 69% !important; width: 35% !important; height: 40px !important; }
    .firkavar-visual-search .nav-search-btn { width: 32px !important; height: 32px !important; flex-basis: 32px !important; }
    .firkavar-visual-search input[type="search"] { font-size: 12px !important; }
}
@media (max-width: 600px) {
    .chibi-navbar.firkavar-visual-header { height: 118px !important; min-height: 118px !important; }
    body { padding-top: 118px !important; }
    .admin-bar body { padding-top: 164px !important; }
    .firkavar-visual-search { left: 55% !important; top: 66% !important; width: 42% !important; height: 34px !important; padding-left: 10px !important; }
    .firkavar-visual-search input[type="search"] { height: 30px !important; font-size: 10px !important; }
    .firkavar-visual-search .nav-search-btn { width: 27px !important; height: 27px !important; flex-basis: 27px !important; }
    .firkavar-visual-search .nav-search-btn svg { width: 17px; height: 17px; }
}

/* ==========================================================
   Firkavár v4.4.3 — approved visual header
   ========================================================== */
.chibi-navbar.firkavar-visual-header {
    position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important;
    width: 100% !important; height: 210px !important; min-height: 210px !important;
    padding: 0 !important; margin: 0 !important; z-index: 10000 !important;
    border: 0 !important; border-bottom: 2px solid rgba(23,61,99,.20) !important;
    border-radius: 0 !important; box-shadow: 0 4px 16px rgba(23,61,99,.16) !important;
    background: #fffdf8 !important; overflow: hidden !important;
}
.firkavar-header-art { position:absolute; inset:0; background:url('images/firkavar-header-final.jpg') center center / 100% 100% no-repeat; }
.firkavar-header-overlay { position:relative; width:100%; height:100%; pointer-events:none; }
.firkavar-header-home { position:absolute; left:0; top:0; width:31%; height:100%; pointer-events:auto; display:block; }
.firkavar-functional-nav { position:absolute !important; inset:0 !important; display:block !important; pointer-events:none; }
.firkavar-functional-nav > ul { display:none !important; }
.firkavar-functional-nav .chibi-facebook-link, .firkavar-functional-nav .chibi-btn-cta { display:none !important; }
.firkavar-visual-search {
    position:absolute !important; left:61.5% !important; top:70.5% !important; width:29.5% !important;
    max-width:none !important; height:48px !important; min-width:0 !important; padding:0 12px 0 18px !important;
    display:flex !important; align-items:center !important; gap:8px !important; box-sizing:border-box !important;
    background:rgba(255,255,255,.96) !important; border:2px solid #173d63 !important; border-radius:999px !important;
    box-shadow:0 2px 8px rgba(23,61,99,.08) !important; pointer-events:auto !important;
}
.firkavar-visual-search input[type="search"] { flex:1 1 auto !important; min-width:0 !important; width:auto !important; height:42px !important; padding:0 !important; border:0 !important; outline:0 !important; background:transparent !important; box-shadow:none !important; font-family:'Plus Jakarta Sans',sans-serif !important; font-size:15px !important; color:#173d63 !important; }
.firkavar-visual-search input::placeholder { color:#8290a0 !important; opacity:1; }
.firkavar-visual-search .nav-search-btn { flex:0 0 38px !important; width:38px !important; height:38px !important; display:grid !important; place-items:center !important; padding:0 !important; border:0 !important; border-radius:50% !important; background:#169bd5 !important; color:#fff !important; }
.firkavar-visual-search .nav-search-btn:hover { background:#0e83b5 !important; transform:none !important; }
body { padding-top:210px !important; }
.admin-bar .chibi-navbar.firkavar-visual-header { top:32px !important; }
.admin-bar body { padding-top:242px !important; }
@media (max-width:782px) { .admin-bar .chibi-navbar.firkavar-visual-header{top:46px !important;} .admin-bar body{padding-top:256px !important;} }
@media (max-width:900px) {
  .chibi-navbar.firkavar-visual-header{height:160px !important;min-height:160px !important;} body{padding-top:160px !important;} .admin-bar body{padding-top:192px !important;}
  .firkavar-visual-search{left:60% !important;top:69% !important;width:35% !important;height:40px !important;}
  .firkavar-visual-search .nav-search-btn{width:32px !important;height:32px !important;flex-basis:32px !important;}
  .firkavar-visual-search input[type="search"]{font-size:12px !important;}
}
@media (max-width:600px) {
  .chibi-navbar.firkavar-visual-header{height:118px !important;min-height:118px !important;} body{padding-top:118px !important;} .admin-bar body{padding-top:164px !important;}
  .firkavar-visual-search{left:55% !important;top:66% !important;width:42% !important;height:34px !important;padding-left:10px !important;}
  .firkavar-visual-search input[type="search"]{height:30px !important;font-size:10px !important;}
  .firkavar-visual-search .nav-search-btn{width:27px !important;height:27px !important;flex-basis:27px !important;}
  .firkavar-visual-search .nav-search-btn svg{width:17px;height:17px;}
}

/* Firkavár v4.4.4 — compact, undistorted header */
.chibi-navbar.firkavar-visual-header {
    height: 105px !important;
    min-height: 105px !important;
}
.firkavar-header-art {
    /* Preserve the artwork's original aspect ratio; never stretch it vertically. */
    background-size: 100% auto !important;
    background-position: center 47% !important;
    background-repeat: no-repeat !important;
    background-color: #fffdf8 !important;
}
.firkavar-visual-search {
    left: 61.5% !important;
    top: 58% !important;
    width: 29.5% !important;
    height: 34px !important;
    padding: 0 8px 0 14px !important;
}
.firkavar-visual-search input[type="search"] {
    height: 30px !important;
    font-size: 12px !important;
}
.firkavar-visual-search .nav-search-btn {
    width: 28px !important;
    height: 28px !important;
    flex-basis: 28px !important;
}
body { padding-top: 105px !important; }
.admin-bar .chibi-navbar.firkavar-visual-header { top: 32px !important; }
.admin-bar body { padding-top: 137px !important; }
@media (max-width: 782px) {
    .chibi-navbar.firkavar-visual-header { height: 80px !important; min-height: 80px !important; }
    body { padding-top: 80px !important; }
    .admin-bar .chibi-navbar.firkavar-visual-header { top: 46px !important; }
    .admin-bar body { padding-top: 126px !important; }
    .firkavar-visual-search { left: 60% !important; top: 55% !important; width: 35% !important; height: 28px !important; }
    .firkavar-visual-search input[type="search"] { height: 24px !important; font-size: 10px !important; }
    .firkavar-visual-search .nav-search-btn { width: 23px !important; height: 23px !important; flex-basis: 23px !important; }
}
@media (max-width: 600px) {
    .chibi-navbar.firkavar-visual-header { height: 65px !important; min-height: 65px !important; }
    body { padding-top: 65px !important; }
    .admin-bar body { padding-top: 111px !important; }
    .firkavar-visual-search { left: 55% !important; top: 50% !important; width: 42% !important; height: 24px !important; padding-left: 8px !important; }
    .firkavar-visual-search input[type="search"] { height: 20px !important; font-size: 8px !important; }
    .firkavar-visual-search .nav-search-btn { width: 20px !important; height: 20px !important; flex-basis: 20px !important; }
    .firkavar-visual-search .nav-search-btn svg { width: 13px !important; height: 13px !important; }
}
