/* ============================================================
   MCA GRUP - Knowledge Base CSS
   Design: brand MCA (portocaliu #ed6d20, negru #1A1A1A)
   Font: Trebuchet MS (system font)
   ============================================================ */

/* ---- RESET & BASE ---- */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
    --mca-red:      #ed6d20;
    --mca-red-dark: #d55e15;
    --mca-dark:     #1A1A1A;
    --mca-gray:     #4A4A4A;
    --mca-light:    #F5F5F5;
    --mca-border:   #E0E0E0;
    --mca-white:    #FFFFFF;
    --mca-green:    #2A7A2A;
    --mca-blue:     #1A6BAD;
    --radius:       10px;
    --radius-sm:    6px;
    --shadow:       0 2px 12px rgba(0,0,0,.08);
    --shadow-md:    0 4px 24px rgba(0,0,0,.12);
    --transition:   .18s ease;
    --max-w:        1200px;
    --narrow-w:     800px;
}

html { font-size: 16px; scroll-behavior: smooth; }

body {
    font-family: 'Trebuchet MS', Trebuchet, Arial, sans-serif;
    color: var(--mca-dark);
    background: #FAFAFA;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
}

a { color: var(--mca-red); text-decoration: none; }
a:hover { text-decoration: underline; }

img { max-width: 100%; height: auto; }

mark {
    background: #FFF3CD;
    color: inherit;
    border-radius: 2px;
    padding: 0 2px;
}

/* ---- LAYOUT ---- */
.kb-container {
    max-width: var(--max-w);
    margin-inline: auto;
    padding-inline: 24px;
}

.kb-container--narrow {
    max-width: var(--narrow-w);
}

/* ---- HEADER ---- */
.kb-header {
    background: var(--mca-dark);
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 2px 8px rgba(0,0,0,.25);
}

.kb-header__inner {
    max-width: var(--max-w);
    margin-inline: auto;
    padding: 0 24px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.kb-header__logo {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.kb-header__logo img {
    display: block;
    height: 52px;
    width: 52px;
    object-fit: contain;
}

.kb-header__nav {
    display: flex;
    align-items: center;
    gap: 24px;
}

.kb-header__nav a {
    color: rgba(255,255,255,.8);
    font-weight: 500;
    font-size: .9rem;
    transition: color var(--transition);
}

.kb-header__nav a:hover { color: #fff; text-decoration: none; }

.kb-btn-contact {
    background: var(--mca-red) !important;
    color: #fff !important;
    padding: 7px 18px;
    border-radius: 6px;
    font-weight: 600 !important;
}

.kb-btn-contact:hover { background: var(--mca-red-dark) !important; }

.kb-breadcrumb-back {
    color: rgba(255,255,255,.7);
    font-size: .9rem;
    transition: color var(--transition);
}

.kb-breadcrumb-back:hover { color: #fff; text-decoration: none; }

/* ---- HERO ---- */
.kb-hero {
    background: linear-gradient(135deg, #1A1A1A 0%, #2D2D2D 50%, #1A1A1A 100%);
    padding: 80px 24px 60px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.kb-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 60% 0%, rgba(232,75,26,.15) 0%, transparent 60%);
    pointer-events: none;
}

.kb-hero__inner {
    max-width: 740px;
    margin-inline: auto;
    position: relative;
}

.kb-hero__badge {
    display: inline-block;
    background: rgba(232,75,26,.2);
    color: #FF7A50;
    border: 1px solid rgba(232,75,26,.4);
    padding: 4px 14px;
    border-radius: 20px;
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-bottom: 16px;
}

.kb-hero__title {
    font-family: 'Trebuchet MS', Trebuchet, Arial, sans-serif;
    font-size: clamp(2.2rem, 5vw, 3.6rem);
    font-weight: 900;
    color: #fff;
    line-height: 1.1;
    margin-bottom: 16px;
}

.kb-hero__sub {
    color: rgba(255,255,255,.7);
    font-size: 1.1rem;
    margin-bottom: 36px;
}

.kb-hero__sub strong { color: #fff; }

.kb-hero__hint {
    color: rgba(255,255,255,.4);
    font-size: .85rem;
    margin-top: 16px;
}

/* ---- SEARCH ---- */
.kb-search { width: 100%; }

.kb-search__wrap {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 50px;
    box-shadow: 0 4px 32px rgba(0,0,0,.25);
    overflow: hidden;
    transition: box-shadow var(--transition);
}

.kb-search__wrap:focus-within {
    box-shadow: 0 4px 32px rgba(232,75,26,.35);
    outline: 2px solid var(--mca-red);
    outline-offset: 2px;
}

.kb-search__icon {
    flex-shrink: 0;
    margin: 0 16px;
    color: #999;
    width: 20px;
    height: 20px;
}

.kb-search__input {
    flex: 1;
    border: none;
    outline: none;
    font-family: inherit;
    font-size: 1rem;
    padding: 16px 8px;
    background: transparent;
    color: var(--mca-dark);
}

.kb-search__input::placeholder { color: #AAA; }

.kb-search__btn {
    flex-shrink: 0;
    background: var(--mca-red);
    color: #fff;
    border: none;
    padding: 14px 28px;
    font-family: inherit;
    font-size: .95rem;
    font-weight: 700;
    cursor: pointer;
    transition: background var(--transition);
    white-space: nowrap;
}

.kb-search__btn:hover { background: var(--mca-red-dark); }

/* Compact version */
.kb-search--compact .kb-search__input { padding: 12px 8px; font-size: .95rem; }
.kb-search--compact .kb-search__btn { padding: 12px 22px; }
.kb-search--compact .kb-search__wrap { border-radius: 8px; }

/* ---- SECTIONS ---- */
.kb-section { padding: 56px 0; }
.kb-section:nth-child(even) { background: #fff; }

.kb-section__title {
    font-family: 'Trebuchet MS', Trebuchet, Arial, sans-serif;
    font-size: 1.7rem;
    font-weight: 700;
    color: var(--mca-dark);
    margin-bottom: 32px;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.kb-section__title::after {
    content: '';
    display: block;
    width: 40px;
    height: 3px;
    background: var(--mca-red);
    margin-top: 8px;
}

/* ---- CATEGORY CARDS ---- */
.kb-categories {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
}

.kb-category-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid var(--mca-border);
    border-top: 4px solid var(--cat-color, var(--mca-red));
    border-radius: var(--radius);
    padding: 24px;
    text-decoration: none;
    color: var(--mca-dark);
    transition: box-shadow var(--transition), transform var(--transition);
    position: relative;
}

.kb-category-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-3px);
    text-decoration: none;
}

.kb-category-card__count {
    font-size: .78rem;
    font-weight: 700;
    color: var(--cat-color, var(--mca-red));
    text-transform: uppercase;
    letter-spacing: .06em;
    margin-bottom: 8px;
}

.kb-category-card__name {
    font-size: 1.05rem;
    font-weight: 700;
    margin-bottom: 8px;
    line-height: 1.3;
}

.kb-category-card__desc {
    font-size: .88rem;
    color: var(--mca-gray);
    flex: 1;
    line-height: 1.5;
}

.kb-category-card__arrow {
    margin-top: 16px;
    color: var(--cat-color, var(--mca-red));
    font-size: 1.2rem;
    font-weight: 700;
    transition: transform var(--transition);
}

.kb-category-card:hover .kb-category-card__arrow { transform: translateX(4px); }

/* ---- FAQ LIST ---- */
.kb-faq-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.kb-faq-item {
    display: flex;
    align-items: baseline;
    gap: 12px;
    padding: 16px 20px;
    background: #fff;
    border: 1px solid var(--mca-border);
    border-radius: var(--radius-sm);
    text-decoration: none;
    color: var(--mca-dark);
    transition: border-color var(--transition), box-shadow var(--transition);
}

.kb-faq-item:hover {
    border-color: var(--mca-red);
    box-shadow: var(--shadow);
    text-decoration: none;
}

.kb-faq-item__cat {
    font-size: .75rem;
    font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap;
    flex-shrink: 0;
}

.kb-faq-item__q {
    font-size: .95rem;
    flex: 1;
}

.kb-faq-item__votes {
    font-size: .8rem;
    color: var(--mca-green);
    white-space: nowrap;
}

.kb-faq-item--featured {
    border-left: 3px solid var(--mca-red);
    padding-left: 17px;
}

/* ---- POPULAR LIST ---- */
.kb-popular-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.kb-popular-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 20px;
    background: #fff;
    border: 1px solid var(--mca-border);
    border-radius: var(--radius-sm);
    transition: box-shadow var(--transition);
}

.kb-popular-item:hover { box-shadow: var(--shadow); }

.kb-popular-item__num {
    width: 28px;
    height: 28px;
    background: var(--mca-light);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .8rem;
    font-weight: 700;
    color: var(--mca-gray);
    flex-shrink: 0;
}

.kb-popular-list li:nth-child(1) .kb-popular-item__num { background: #FFD700; color: #7A6000; }
.kb-popular-list li:nth-child(2) .kb-popular-item__num { background: #C0C0C0; color: #444; }
.kb-popular-list li:nth-child(3) .kb-popular-item__num { background: #CD7F32; color: #fff; }

.kb-popular-item__body { flex: 1; min-width: 0; }

.kb-popular-item__q {
    font-size: .95rem;
    font-weight: 500;
    color: var(--mca-dark);
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.kb-popular-item__q:hover { color: var(--mca-red); }

.kb-popular-item__cat {
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
}

.kb-popular-item__views {
    font-size: .8rem;
    color: #999;
    white-space: nowrap;
}

/* ---- ASK CTA ---- */
.kb-ask-section { background: var(--mca-light); }

.kb-ask-card {
    display: flex;
    align-items: center;
    gap: 24px;
    background: #fff;
    border: 1px solid var(--mca-border);
    border-radius: var(--radius);
    padding: 28px 32px;
    box-shadow: var(--shadow);
}

.kb-ask-card__icon { font-size: 2.5rem; flex-shrink: 0; }

.kb-ask-card__body { flex: 1; }
.kb-ask-card__body h3 { font-size: 1.1rem; margin-bottom: 4px; }
.kb-ask-card__body p { font-size: .9rem; color: var(--mca-gray); }

/* ---- BUTTONS ---- */
.kb-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 22px;
    border-radius: var(--radius-sm);
    font-family: inherit;
    font-size: .95rem;
    font-weight: 600;
    cursor: pointer;
    border: 2px solid transparent;
    transition: background var(--transition), border-color var(--transition), color var(--transition);
    text-decoration: none;
    white-space: nowrap;
}

.kb-btn--primary {
    background: var(--mca-red);
    color: #fff;
    border-color: var(--mca-red);
}

.kb-btn--primary:hover {
    background: var(--mca-red-dark);
    border-color: var(--mca-red-dark);
    text-decoration: none;
    color: #fff;
}

.kb-btn--outline {
    background: transparent;
    color: var(--mca-red);
    border-color: var(--mca-red);
}

.kb-btn--outline:hover {
    background: var(--mca-red);
    color: #fff;
    text-decoration: none;
}

.kb-btn--ghost {
    background: transparent;
    color: var(--mca-gray);
    border-color: var(--mca-border);
}

.kb-btn--ghost:hover {
    background: var(--mca-light);
    color: var(--mca-dark);
    text-decoration: none;
}

.kb-btn--lg { padding: 14px 32px; font-size: 1.05rem; }

/* ---- PAGE LAYOUT ---- */
.kb-page { padding: 40px 0 80px; }
.kb-page--article { padding: 32px 0 80px; }

/* ---- BREADCRUMB ---- */
.kb-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: .85rem;
    color: var(--mca-gray);
    margin-bottom: 32px;
    flex-wrap: wrap;
}

.kb-breadcrumb a { color: var(--mca-gray); }
.kb-breadcrumb a:hover { color: var(--mca-red); }
.kb-breadcrumb span { color: #CCC; }

.kb-breadcrumb--light a { color: rgba(255,255,255,.6); }
.kb-breadcrumb--light a:hover { color: #fff; }
.kb-breadcrumb--light span { color: rgba(255,255,255,.3); }

/* ---- ARTICLE ---- */
.kb-article {
    background: #fff;
    border: 1px solid var(--mca-border);
    border-radius: var(--radius);
    overflow: hidden;
    box-shadow: var(--shadow);
}

.kb-article__header {
    padding: 32px 40px 28px;
    border-bottom: 1px solid var(--mca-border);
}

.kb-article__cat-badge {
    display: inline-block;
    padding: 3px 12px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    margin-bottom: 14px;
}

.kb-article__title {
    font-size: clamp(1.3rem, 3vw, 1.9rem);
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 16px;
    color: var(--mca-dark);
}

.kb-article__meta {
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: .85rem;
    color: #999;
}

.kb-article__views { display: flex; align-items: center; gap: 5px; }
.kb-article__score { color: var(--mca-green); font-weight: 600; }

.kb-article__body {
    padding: 36px 40px;
    font-size: 1rem;
    line-height: 1.8;
    color: var(--mca-dark);
}

/* ---- VOTE ---- */
.kb-vote {
    padding: 28px 40px;
    border-top: 1px solid var(--mca-border);
    background: var(--mca-light);
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.kb-vote__question {
    font-size: .9rem;
    font-weight: 600;
    color: var(--mca-gray);
}

.kb-vote__buttons { display: flex; gap: 10px; }

.kb-vote__btn {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 18px;
    border: 2px solid var(--mca-border);
    border-radius: 30px;
    background: #fff;
    cursor: pointer;
    font-family: inherit;
    font-size: .9rem;
    font-weight: 600;
    transition: all var(--transition);
}

.kb-vote__btn--yes:hover { border-color: var(--mca-green); color: var(--mca-green); }
.kb-vote__btn--no:hover  { border-color: var(--mca-red); color: var(--mca-red); }

.kb-vote--done .kb-vote__btn { opacity: .5; pointer-events: none; }

.kb-vote__count {
    background: var(--mca-light);
    border-radius: 20px;
    padding: 1px 8px;
    font-size: .8rem;
}

.kb-vote__msg {
    font-size: .85rem;
    color: var(--mca-green);
    font-weight: 600;
}

/* ---- ARTICLE CTA ---- */
.kb-article__cta {
    padding: 28px 40px;
    border-top: 1px solid var(--mca-border);
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.kb-article__cta p {
    flex: 1;
    font-size: .95rem;
    color: var(--mca-gray);
    min-width: 200px;
}

.kb-article__cta-buttons { display: flex; gap: 10px; flex-wrap: wrap; }

/* ---- RELATED ---- */
.kb-related { padding: 40px 0; background: var(--mca-light); border-top: 1px solid var(--mca-border); }

.kb-related__title {
    font-size: 1rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--mca-gray);
    margin-bottom: 16px;
}

.kb-related__list { list-style: none; display: flex; flex-direction: column; gap: 6px; margin-bottom: 20px; }

.kb-related__list li a {
    font-size: .9rem;
    color: var(--mca-dark);
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.kb-related__list li a::before { content: '→'; color: var(--mca-red); flex-shrink: 0; }
.kb-related__list li a:hover { color: var(--mca-red); }

.kb-related__all { font-size: .9rem; font-weight: 600; }

/* ---- SEARCH RESULTS ---- */
.kb-results-header {
    margin: 24px 0;
    font-size: .95rem;
    color: var(--mca-gray);
}

.kb-results-header strong { color: var(--mca-dark); }

.kb-search-results { display: flex; flex-direction: column; gap: 12px; margin-top: 8px; }

.kb-result-item {
    display: block;
    padding: 20px 24px;
    background: #fff;
    border: 1px solid var(--mca-border);
    border-radius: var(--radius-sm);
    text-decoration: none;
    color: var(--mca-dark);
    transition: border-color var(--transition), box-shadow var(--transition);
}

.kb-result-item:hover {
    border-color: var(--mca-red);
    box-shadow: var(--shadow);
    text-decoration: none;
}

.kb-result-item__cat {
    font-size: .75rem;
    font-weight: 700;
    text-transform: uppercase;
    display: block;
    margin-bottom: 6px;
}

.kb-result-item__q {
    font-size: 1.05rem;
    font-weight: 600;
    margin-bottom: 8px;
    color: var(--mca-dark);
}

.kb-result-item__preview {
    font-size: .88rem;
    color: var(--mca-gray);
    line-height: 1.5;
    margin-bottom: 10px;
}

.kb-result-item__meta {
    font-size: .78rem;
    color: #BBB;
}

.kb-no-results__hint { margin-top: 12px; color: var(--mca-gray); }

/* ---- PAGINATION ---- */
.kb-pagination {
    display: flex;
    align-items: center;
    gap: 6px;
    justify-content: center;
    margin-top: 40px;
}

.kb-pagination__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: var(--radius-sm);
    border: 1px solid var(--mca-border);
    color: var(--mca-dark);
    font-size: .9rem;
    font-weight: 500;
    background: #fff;
    transition: all var(--transition);
    text-decoration: none;
}

.kb-pagination__btn:hover { border-color: var(--mca-red); color: var(--mca-red); text-decoration: none; }
.kb-pagination__btn--active {
    background: var(--mca-red);
    border-color: var(--mca-red);
    color: #fff;
    font-weight: 700;
}

/* ---- ALERTS ---- */
.kb-alert {
    padding: 14px 18px;
    border-radius: var(--radius-sm);
    font-size: .9rem;
    margin-bottom: 20px;
}

.kb-alert--error {
    background: #FFF0EE;
    border: 1px solid #F5C2B8;
    color: #C0392B;
}

/* ---- CATEGORY HERO ---- */
.kb-cat-hero {
    background: linear-gradient(135deg, var(--mca-dark), #2D2D2D);
    border-bottom: 4px solid var(--cat-color, var(--mca-red));
    padding: 48px 24px 40px;
    color: #fff;
}

.kb-cat-hero__title {
    font-family: 'Trebuchet MS', Trebuchet, Arial, sans-serif;
    font-size: clamp(1.8rem, 4vw, 2.8rem);
    font-weight: 900;
    margin-bottom: 10px;
    line-height: 1.1;
}

.kb-cat-hero__desc { color: rgba(255,255,255,.65); max-width: 600px; font-size: 1rem; margin-bottom: 16px; }

.kb-cat-hero__count {
    display: inline-block;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.2);
    padding: 4px 14px;
    border-radius: 20px;
    font-size: .8rem;
    font-weight: 700;
}

/* ---- ACCORDION ---- */
.kb-faq-accordion { list-style: none; display: flex; flex-direction: column; gap: 4px; }

.kb-acc-item {
    background: #fff;
    border: 1px solid var(--mca-border);
    border-radius: var(--radius-sm);
    overflow: hidden;
}

.kb-acc-item__q {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 20px;
    background: none;
    border: none;
    text-align: left;
    font-family: inherit;
    font-size: .98rem;
    font-weight: 600;
    color: var(--mca-dark);
    cursor: pointer;
    transition: background var(--transition), color var(--transition);
}

.kb-acc-item__q:hover { background: var(--mca-light); color: var(--mca-red); }

.kb-acc-item__icon {
    font-size: 1.4rem;
    font-weight: 300;
    color: var(--mca-red);
    flex-shrink: 0;
    transition: transform var(--transition);
}

.kb-acc-item__q[aria-expanded="true"] .kb-acc-item__icon { transform: rotate(45deg); }

.kb-acc-item__preview {
    padding: 0 20px;
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s ease, padding .3s ease;
    font-size: .9rem;
    color: var(--mca-gray);
}

.kb-acc-item__preview.kb-acc-item__preview--open {
    max-height: 300px;
    padding: 0 20px 16px;
}

.kb-acc-item__link {
    display: inline-block;
    color: var(--mca-red);
    font-weight: 600;
    font-size: .9rem;
    margin-top: 8px;
}

.kb-acc-snippet {
    font-size: .88rem;
    color: var(--mca-gray);
    line-height: 1.6;
    margin-bottom: 8px;
}

/* ---- FORM ---- */
.kb-ask-hero { margin-bottom: 32px; }
.kb-ask-hero h1 { font-size: 1.8rem; margin-bottom: 8px; }
.kb-ask-hero p { color: var(--mca-gray); }

.kb-form { display: flex; flex-direction: column; gap: 24px; }

.kb-form__row { display: flex; flex-direction: column; gap: 6px; }

.kb-form__row--half {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.kb-form__label { font-size: .9rem; font-weight: 600; color: var(--mca-dark); }
.kb-form__required { color: var(--mca-red); }
.kb-form__hint-inline { font-weight: 400; color: #999; font-size: .8rem; }

.kb-form__input,
.kb-form__select,
.kb-form__textarea {
    width: 100%;
    padding: 12px 14px;
    border: 1.5px solid var(--mca-border);
    border-radius: var(--radius-sm);
    font-family: inherit;
    font-size: .95rem;
    color: var(--mca-dark);
    background: #fff;
    transition: border-color var(--transition), box-shadow var(--transition);
    outline: none;
}

.kb-form__input:focus,
.kb-form__select:focus,
.kb-form__textarea:focus {
    border-color: var(--mca-red);
    box-shadow: 0 0 0 3px rgba(232,75,26,.12);
}

.kb-form__textarea { resize: vertical; min-height: 130px; line-height: 1.6; }

.kb-form__hint { font-size: .8rem; color: #AAA; }

.kb-form__privacy {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: .82rem;
    color: #999;
    background: var(--mca-light);
    padding: 12px 14px;
    border-radius: var(--radius-sm);
}

.kb-form__actions { display: flex; gap: 12px; align-items: center; }

/* ---- FORM SUCCESS ---- */
.kb-form-success {
    text-align: center;
    padding: 60px 20px;
}

.kb-form-success__icon { font-size: 4rem; margin-bottom: 20px; }

.kb-form-success h2 { font-size: 1.8rem; margin-bottom: 16px; }

.kb-form-success p { color: var(--mca-gray); margin-bottom: 12px; max-width: 480px; margin-inline: auto; }

.kb-form-success__actions {
    display: flex;
    gap: 12px;
    justify-content: center;
    margin-top: 32px;
    flex-wrap: wrap;
}

/* ---- ASK SEARCH HINT ---- */
.kb-ask-search-hint {
    background: #EBF5FF;
    border: 1px solid #BDD9F5;
    border-radius: var(--radius-sm);
    padding: 16px 18px;
    margin-bottom: 20px;
}

.kb-ask-search-hint__title {
    font-size: .88rem;
    font-weight: 700;
    color: var(--mca-blue);
    margin-bottom: 10px;
}

.kb-ask-search-hint__list { list-style: none; display: flex; flex-direction: column; gap: 6px; }

.kb-ask-search-hint__list li a {
    font-size: .88rem;
    color: var(--mca-blue);
    display: flex;
    align-items: baseline;
    gap: 6px;
}

.kb-ask-search-hint__list li a::before { content: '›'; flex-shrink: 0; }
.kb-ask-search-hint__list li a:hover { text-decoration: underline; }

/* ---- FOOTER ---- */
.kb-footer {
    background: var(--mca-dark);
    color: rgba(255,255,255,.5);
    padding: 32px 0;
    text-align: center;
    font-size: .85rem;
}

.kb-footer__links {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.kb-footer__links a {
    color: rgba(255,255,255,.6);
    transition: color var(--transition);
}

.kb-footer__links a:hover { color: #fff; text-decoration: none; }

.kb-footer__copy { color: rgba(255,255,255,.3); font-size: .8rem; }

/* ---- RESPONSIVE ---- */
@media (max-width: 900px) {
    .kb-categories { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
    .kb-popular-item__views { display: none; }
}

@media (max-width: 640px) {
    .kb-hero { padding: 48px 20px 40px; }
    .kb-search__btn { padding: 14px 16px; font-size: .85rem; }
    .kb-section__title { font-size: 1.35rem; }
    .kb-categories { grid-template-columns: 1fr; }
    .kb-ask-card { flex-direction: column; text-align: center; }
    .kb-article__header,
    .kb-article__body,
    .kb-vote,
    .kb-article__cta { padding: 24px 20px; }
    .kb-article__title { font-size: 1.3rem; }
    .kb-article__cta { flex-direction: column; }
    .kb-form__row--half { grid-template-columns: 1fr; }
    .kb-header__nav { display: none; }
    .kb-popular-item__q { font-size: .88rem; }
    .kb-vote { flex-direction: column; align-items: flex-start; gap: 12px; }
}

@media (max-width: 420px) {
    .kb-container { padding-inline: 16px; }
    .kb-pagination__btn { width: 32px; height: 32px; font-size: .8rem; }
    .kb-btn { padding: 10px 16px; font-size: .9rem; }
}

/* ============================================================
   MCA KB — Stiluri de integrare cu tema Porto (Bootstrap 3)
   Adaugate la finalul kb.css
   ============================================================ */

/* Hero section */
.kb-hero-section {
    background: linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%) !important;
    padding: 56px 0 44px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    border: none !important;
    position: relative !important;
    display: block !important;
}
/* Reset Porto .page-header overrides */
.kb-hero-section h1,
.kb-hero-section h2,
.kb-hero-section h3,
.kb-hero-section p,
.kb-hero-section span { text-align: center !important; }
.kb-hero-badge {
    display: inline-block !important;
    background: rgba(232,75,26,.2);
    color: #ff7a50 !important;
    border: 1px solid rgba(232,75,26,.4);
    padding: 3px 14px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase !important;
    margin-bottom: 14px;
}
.kb-hero-title {
    color: #fff !important;
    font-size: clamp(26px,4vw,40px) !important;
    font-weight: 700 !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    line-height: 1.2 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}
.kb-hero-sub {
    color: rgba(255,255,255,.75) !important;
    font-size: 16px !important;
    margin: 0 0 30px !important;
}
.kb-hero-sub strong { color: #fff !important; text-decoration: underline; }
.kb-hero-hint { color: rgba(255,255,255,.4) !important; font-size: 13px !important; margin-top: 14px !important; }

/* Search in hero */
.kb-search-form { max-width:680px;margin:0 auto; }
.kb-search-group { box-shadow:0 4px 24px rgba(0,0,0,.3) !important;border-radius:50px !important;overflow:hidden; }
.kb-search-addon { background:#fff !important;border:none !important;padding:0 16px;border-radius:50px 0 0 50px !important; }
.kb-search-addon i { color:#aaa; }
.kb-search-input { border:none !important;border-radius:0 !important;font-size:15px !important;padding:14px 8px !important;height:auto !important; }
.kb-search-input:focus { box-shadow:none !important; }
.kb-search-btn { background:#ed6d20 !important;border-color:#ed6d20 !important;border-radius:0 50px 50px 0 !important;padding:14px 28px !important;font-weight:700 !important;font-size:15px !important;height:auto !important; }
.kb-search-btn:hover { background:#d55e15 !important;border-color:#d55e15 !important; }

/* Titlu sectiune */
.kb-section-title { font-size:20px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#1a1a1a;margin-bottom:24px;padding-bottom:10px;border-bottom:3px solid #ed6d20;display:inline-block; }

/* Category cards - Bootstrap grid wrapper */
.kb-cat-col { margin-bottom:20px; }
.kb-cat-card { display:flex;flex-direction:column;background:#fff;border:1px solid #e0e0e0;border-top:4px solid #ed6d20;border-radius:8px;padding:20px;text-decoration:none !important;color:#1a1a1a;transition:box-shadow .18s,transform .18s;height:100%; }
.kb-cat-card:hover { box-shadow:0 4px 24px rgba(0,0,0,.12);transform:translateY(-3px);color:#1a1a1a; }
.kb-cat-card__count { font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px; }
.kb-cat-card__name { font-size:16px;font-weight:700;margin:0 0 8px;line-height:1.3; }
.kb-cat-card__desc { font-size:13px;color:#666;flex:1;line-height:1.5;margin:0 0 12px; }
.kb-cat-card__arrow { font-size:18px;font-weight:700;transition:transform .18s; }
.kb-cat-card:hover .kb-cat-card__arrow { transform:translateX(4px); }

/* FAQ rows (recomandate) */
.kb-faq-row { display:flex;align-items:baseline;gap:10px;padding:12px 16px;background:#fff;border:1px solid #e0e0e0;border-left:3px solid #ed6d20;border-radius:4px;text-decoration:none !important;color:#1a1a1a;transition:border-color .18s,box-shadow .18s;margin-bottom:2px; }
.kb-faq-row:hover { border-color:#ed6d20;box-shadow:0 2px 10px rgba(0,0,0,.08);color:#1a1a1a; }
.kb-faq-row__cat { font-size:11px;font-weight:700;text-transform:uppercase;white-space:nowrap;flex-shrink:0; }
.kb-faq-row__q { font-size:13px;flex:1; }
.kb-faq-row__votes { font-size:12px;color:#2a7a2a;white-space:nowrap; }

/* Popular list */
.kb-popular-list { list-style:none;padding:0;margin:0; }
.kb-popular-item { display:flex;align-items:center;gap:14px;padding:12px 16px;background:#fff;border:1px solid #e0e0e0;border-radius:4px;margin-bottom:4px;transition:box-shadow .18s; }
.kb-popular-item:hover { box-shadow:0 2px 10px rgba(0,0,0,.08); }
.kb-popular-item__num { width:26px;height:26px;background:#f5f5f5;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#666;flex-shrink:0; }
.kb-popular-list li:nth-child(1) .kb-popular-item__num { background:#FFD700;color:#7a6000; }
.kb-popular-list li:nth-child(2) .kb-popular-item__num { background:#C0C0C0;color:#444; }
.kb-popular-list li:nth-child(3) .kb-popular-item__num { background:#CD7F32;color:#fff; }
.kb-popular-item__body { flex:1;min-width:0; }
.kb-popular-item__q { font-size:13px;font-weight:500;color:#1a1a1a;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.kb-popular-item__q:hover { color:#ed6d20; }
.kb-popular-item__cat { font-size:11px;font-weight:600;text-transform:uppercase; }
.kb-popular-item__views { font-size:12px;color:#bbb;white-space:nowrap; }

/* Ask box (sidebar) */
.kb-ask-box { background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:24px;text-align:center;margin-bottom:20px; }
.kb-ask-box__icon { font-size:36px;margin-bottom:12px; }
.kb-ask-box h4 { font-size:16px;font-weight:700;margin-bottom:8px; }
.kb-ask-box p { font-size:13px;color:#666; }

/* Button orange */
.kb-btn-orange { background:#ed6d20 !important;border-color:#ed6d20 !important;color:#fff !important; }
.kb-btn-orange:hover { background:#d55e15 !important;border-color:#d55e15 !important;color:#fff !important; }

/* Accordion */
.kb-accordion { margin:0;padding:0; }
.kb-acc-item { background:#fff;border:1px solid #e0e0e0;border-radius:4px;margin-bottom:4px;overflow:hidden; }
.kb-acc-item__q { width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;background:none;border:none;text-align:left;font-family:inherit;font-size:14px;font-weight:600;color:#1a1a1a;cursor:pointer;transition:background .15s,color .15s; }
.kb-acc-item__q:hover { background:#f9f9f9;color:#ed6d20; }
.kb-acc-item__icon { font-size:20px;font-weight:300;color:#ed6d20;flex-shrink:0;transition:transform .25s; }
.kb-acc-item__q[aria-expanded="true"] .kb-acc-item__icon { transform:rotate(45deg); }
.kb-acc-item__preview { padding:0 18px;max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease; }
.kb-acc-item__preview.kb-acc-item__preview--open { max-height:400px;padding:0 18px 16px; }
.kb-acc-snippet { font-size:13px;color:#555;line-height:1.6;margin-bottom:10px; }
.kb-acc-item__link { font-size:13px;font-weight:600;color:#ed6d20; }
.kb-acc-item__link:hover { color:#d55e15; }

/* Article */
.kb-article .panel-heading { background:#fff !important; }
.kb-cat-badge { display:inline-block;padding:2px 10px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px; }

/* Vote */
.kb-vote__btn:disabled { opacity:.5; }
.kb-vote .badge { background:#f5f5f5;color:#333; }

/* Result items */
.kb-result-item { transition:box-shadow .15s; }
.kb-result-item:hover { box-shadow:0 2px 12px rgba(0,0,0,.1); }

/* Search results highlight */
mark { background:#fff3cd;color:inherit;border-radius:2px;padding:0 2px; }

@media (max-width:767px) {
    .kb-hero-section { padding:32px 0 28px; }
    .kb-search-btn { padding:12px 16px !important;font-size:14px !important; }
    .kb-popular-item__views { display:none; }
    .kb-cat-card { height:auto; }
    .kb-ask-box { margin-top:24px; }
}
