/*!
Theme Name: Autogara Husi
Theme URI: https://autogarahusi.ro
Author: Ezrapp.ro
Author URI: https://ezrapp.ro
Description: Temă WordPress dedicată pentru Autogara Huși, compatibilă cu Elementor Pro și plugin-ul SyncSys Bilete. Include designul complet din platforma Booking (main.css, vendors.css, ezra.css) cu brand color #38AA49.
Version: 1.12.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 8.0
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: autogara-husi
Tags: elementor, booking, transport, rental, two-columns, custom-header, custom-logo, custom-menu, editor-style, featured-images, full-site-editing, theme-options, translation-ready
*/

/* =====================================================================
   Autogara Huși — Design Tokens (branding variables)
   ===================================================================== */
:root {
    --ah-primary: #38AA49;
    --ah-primary-dark: #2e8c3a;
    --ah-primary-light: #4cc35e;
    --ah-accent: #1967d2;
    --ah-danger: #dc2626;
    --ah-warning: #f59e0b;
    --ah-success: #0a7f3f;
    --ah-text: #1a2332;
    --ah-text-light: #6b7280;
    --ah-bg: #fff;
    --ah-bg-soft: #f8f8f8;
    --ah-border: #e5e7eb;
    --ah-radius: 10px;
    --ah-radius-sm: 6px;
    --ah-font: 'HK Grotesk', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;

    /* Mapăm și variabilele plugin-ului SyncSys către brand-ul nostru */
    --syncsys-primary: #38AA49;
    --syncsys-accent: #1967d2;
}

/* =====================================================================
   Body & Typography Globals
   ===================================================================== */
html, body {
    margin: 0; padding: 0;
    font-family: var(--ah-font);
    color: var(--ah-text);
    background: var(--ah-bg);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    font-size: 16px;
}

/* Link default */
a { color: var(--ah-primary); text-decoration: none; transition: color .15s; }
a:hover { color: var(--ah-primary-dark); }

/* Imagini responsive default */
img { max-width: 100%; height: auto; }

/* =====================================================================
   WordPress Core Classes
   ===================================================================== */
.alignnone { margin: 5px 20px 20px 0; }
.alignright { float: right; margin: 5px 0 20px 20px; }
.alignleft { float: left; margin: 5px 20px 20px 0; }
.aligncenter { display: block; margin: 5px auto; }
.wp-caption { max-width: 100%; }
.wp-caption-text { text-align: center; font-size: 14px; color: var(--ah-text-light); }
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px; width: 1px; overflow: hidden;
}
.sticky { display: block; }
.bypostauthor { display: block; }

/* =====================================================================
   Header / Site Layout (Elementor theme builder takes over if active)
   ===================================================================== */
.ah-site-header {
    background: var(--ah-bg);
    border-bottom: 1px solid var(--ah-border);
    padding: 14px 0;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
    position: relative;
    z-index: 100;
}

.ah-site-header__inner {
    max-width: 1200px; margin: 0 auto;
    padding: 0 20px;
    display: flex; align-items: center; justify-content: space-between;
    gap: 20px;
}

.ah-site-logo img { max-height: 56px; width: auto; }
.ah-site-logo a { display: inline-block; }
.ah-site-logo-text { font-size: 22px; font-weight: 700; color: var(--ah-primary); }

.ah-primary-menu ul {
    list-style: none; margin: 0; padding: 0;
    display: flex; gap: 28px; align-items: center;
}
.ah-primary-menu a {
    color: var(--ah-text); font-weight: 500; font-size: 15px;
    text-decoration: none; transition: color .15s;
}
.ah-primary-menu a:hover,
.ah-primary-menu .current-menu-item > a { color: var(--ah-primary); }

.ah-mobile-toggle {
    display: none; background: none; border: 0;
    cursor: pointer; padding: 8px;
}

@media (max-width: 768px) {
    .ah-primary-menu { display: none; position: absolute; top: 100%; left: 0; right: 0; background: #fff; box-shadow: 0 4px 12px rgba(0,0,0,0.08); padding: 16px; }
    .ah-primary-menu.is-open { display: block; }
    .ah-primary-menu ul { flex-direction: column; align-items: stretch; gap: 0; }
    .ah-primary-menu ul a { display: block; padding: 10px 12px; border-bottom: 1px solid var(--ah-border); }
    .ah-mobile-toggle { display: block; }
}

/* =====================================================================
   Main content wrapper
   ===================================================================== */
.ah-main { min-height: 60vh; }

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

/* =====================================================================
   Footer
   ===================================================================== */
.ah-site-footer {
    background: #1a2332;
    color: #fff;
    padding: 50px 0 20px;
    margin-top: 60px;
}
.ah-site-footer a { color: #fff; opacity: 0.85; }
.ah-site-footer a:hover { opacity: 1; color: var(--ah-primary-light); }
.ah-site-footer__inner {
    max-width: 1200px; margin: 0 auto; padding: 0 20px;
    display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 40px;
}
@media (max-width: 768px) { .ah-site-footer__inner { grid-template-columns: 1fr; } }
.ah-site-footer__copy {
    max-width: 1200px; margin: 40px auto 0; padding: 20px;
    border-top: 1px solid rgba(255,255,255,0.1);
    text-align: center; font-size: 13px; opacity: 0.6;
}

/* =====================================================================
   Button primary (used in templates & Elementor widgets)
   ===================================================================== */
.ah-btn {
    display: inline-flex; align-items: center; justify-content: center;
    padding: 12px 24px; border-radius: var(--ah-radius-sm);
    font-weight: 600; font-size: 15px; gap: 8px;
    cursor: pointer; border: 0; text-decoration: none;
    transition: transform .12s, box-shadow .15s, background .15s;
}
.ah-btn--primary { background: var(--ah-primary); color: #fff; }
.ah-btn--primary:hover { background: var(--ah-primary-dark); color: #fff; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(56,170,73,0.25); }
.ah-btn--outline { background: transparent; color: var(--ah-primary); border: 2px solid var(--ah-primary); }
.ah-btn--outline:hover { background: var(--ah-primary); color: #fff; }
.ah-btn--lg { padding: 16px 32px; font-size: 16px; }

/* =====================================================================
   OVERRIDE plugin SyncSys Bilete — mapare la brand-ul Autogara Huși
   Variabilele CSS din plugin sunt deja setate mai sus (--syncsys-primary).
   Dar unele clase au culori hardcoded în plugin, le forțăm să respecte brand-ul.
   ===================================================================== */

/* Buton principal plugin → verde Autogara */
.syncsys-btn--primary { background: var(--ah-primary) !important; color: #fff !important; }
.syncsys-btn--primary:hover { background: var(--ah-primary-dark) !important; }
.syncsys-btn--primary:disabled { background: #86efac !important; }

.syncsys-btn--soft { background: #ecfdf5 !important; color: var(--ah-primary) !important; border: 1px solid #d1fae5 !important; }
.syncsys-btn--soft:hover { background: #d1fae5 !important; }

/* Cart indicator → verde gradient */
.syncsys-cart-indicator__inner {
    background: linear-gradient(135deg, var(--ah-primary), var(--ah-primary-dark)) !important;
    box-shadow: 0 4px 12px rgba(56,170,73,0.25) !important;
}
.syncsys-cart-indicator .syncsys-btn {
    background: #fff !important;
    color: var(--ah-primary) !important;
}

/* Days badges active → verde */
.syncsys-day.is-active { background: var(--ah-primary) !important; }

/* Result price strong → verde */
.syncsys-result__price strong { color: var(--ah-primary) !important; }

/* Summary total → verde */
.syncsys-summary__total strong,
#syncsysSummaryTotal,
#syncsysCartSubtotal { color: var(--ah-primary) !important; }

/* Auth tabs active → verde */
.syncsys-auth-tab.is-active { color: var(--ah-primary) !important; border-bottom-color: var(--ah-primary) !important; }
.syncsys-auth-tab:hover { color: var(--ah-primary) !important; background: rgba(56,170,73,0.05) !important; }

/* Logged badge → verde */
.syncsys-card--logged { background: #f0fdf4 !important; border-left-color: var(--ah-primary) !important; }
.syncsys-logged-badge-big { color: #065f46 !important; }

/* Company section focused border → verde */
.syncsys-company-section:has(#syncsysIsCompany:checked) {
    border-color: var(--ah-primary) !important;
    background: #f0fdf4 !important;
}
.syncsys-company-toggle__content > svg { color: var(--ah-primary) !important; }

/* Autocomplete focused border */
.syncsys-cui-lookup input:focus,
.syncsys-cart-item__qty-input:focus,
.syncsys-autocomplete__list input:focus {
    border-color: var(--ah-primary) !important;
    box-shadow: 0 0 0 2px rgba(56,170,73,0.15) !important;
}

/* Chips (trending + recent searches) → verde */
.syncsys-chip { background: #ecfdf5 !important; color: var(--ah-primary) !important; }
.syncsys-chip:hover { background: var(--ah-primary) !important; color: #fff !important; }

/* Cart count badge → verde */
.syncsys-cart-count { background: var(--ah-primary) !important; }

/* Cart subtotal bg */
.syncsys-cart-subtotal {
    background: #f0fdf4 !important;
    border-color: #d1fae5 !important;
}
.syncsys-cart-subtotal span { color: #065f46 !important; }

/* Result "in cart" badge */
.syncsys-result__in-cart { background: #dcfce7 !important; color: #065f46 !important; }

/* Message checkbox verde când e activ */
.syncsys-checkbox-msg input[type="checkbox"] { accent-color: var(--ah-primary); }

/* =====================================================================
   Mobile adjustments
   ===================================================================== */
@media (max-width: 480px) {
    .syncsys-wrap { padding: 10px !important; }
    .ah-site-header__inner { padding: 0 14px; }
}

/* =====================================================================
   Utility classes
   ===================================================================== */
.ah-text-primary { color: var(--ah-primary); }
.ah-bg-primary { background: var(--ah-primary); color: #fff; }
.ah-mt-0 { margin-top: 0; }
.ah-mt-1 { margin-top: 8px; }
.ah-mt-2 { margin-top: 16px; }
.ah-mt-3 { margin-top: 24px; }
.ah-mt-4 { margin-top: 32px; }
.ah-mb-0 { margin-bottom: 0; }
.ah-mb-2 { margin-bottom: 16px; }
.ah-mb-3 { margin-bottom: 24px; }

/* Comment area, post cards — minimal stilizat (Elementor Pro va rescrie pentru single posts) */
.ah-post-single { max-width: 800px; margin: 0 auto; padding: 40px 20px; }
.ah-post-title { font-size: 32px; margin-bottom: 16px; color: var(--ah-text); }
.ah-post-meta { color: var(--ah-text-light); font-size: 14px; margin-bottom: 24px; }

















