/*
 * vig1-calendar.css — FullCalendar Modern Slate event design
 * Minden #vig1-calendar specifikus stílus itt van összegyűjtve.
 * Vig1 WordPress plugin — room-booking calendar.
 */

/* ════════════════════════════════════════════════════════════════════════════
   FullCalendar téma-izoláció
   Specificitás: #vig1-calendar .fc td = 111 → leveri a legtöbb WP téma
   elem-szabályát (pl. Astra: td { padding:10px } = 1).
   ════════════════════════════════════════════════════════════════════════════ */
#vig1-calendar .fc table,
#vig1-pricing-calendar .fc table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    margin: 0;
    font-size: inherit;
    background: transparent;
}

#vig1-calendar .fc td,
#vig1-calendar .fc th,
#vig1-pricing-calendar .fc td,
#vig1-pricing-calendar .fc th {
    padding: 0;
    vertical-align: top;
    text-align: left;
    font-size: inherit;
    font-weight: inherit;
    border: none;
    background: transparent;
    box-shadow: none;
    height: auto;
    width: auto;
    max-width: none;
    line-height: normal;
}

#vig1-calendar .fc a,
#vig1-pricing-calendar .fc a {
    color: inherit;
    text-decoration: none;
}

#vig1-calendar .fc p,
#vig1-pricing-calendar .fc p {
    margin: 0;
}

#vig1-calendar .fc ul,
#vig1-calendar .fc ol,
#vig1-pricing-calendar .fc ul,
#vig1-pricing-calendar .fc ol {
    list-style: none;
    margin: 0;
    padding: 0;
}

#vig1-calendar .fc li,
#vig1-pricing-calendar .fc li {
    margin: 0;
    padding: 0;
}

#vig1-calendar .fc h1,
#vig1-calendar .fc h2,
#vig1-calendar .fc h3,
#vig1-calendar .fc h4,
#vig1-pricing-calendar .fc h1,
#vig1-pricing-calendar .fc h2,
#vig1-pricing-calendar .fc h3,
#vig1-pricing-calendar .fc h4 {
    margin: 0;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    line-height: inherit;
}

#vig1-calendar .fc button,
#vig1-pricing-calendar .fc button {
    font-family: inherit;
    -webkit-appearance: none;
    appearance: none;
}

/* Foglalás-események vízszintesen beljebb — két oldalt marad kattintható sáv */
#vig1-calendar .fc .fc-timegrid-event-harness {
    padding-left: 10px;
    padding-right: 10px;
}

/* ════════════════════════════════════════════════════════════════════════════
   Nyitvatartás háttér-események — .fc-bg-event.vig1-opening-hours-bg
   display:'background' → FC .fc-bg-event-ként rendereli, NEM .fc-event.
   Teljes accent-szín (nem 12%-os tint), nincs border/oldalsáv, nincs padding.
   ════════════════════════════════════════════════════════════════════════════ */

/* A timegrid bg-harness ne kapjon esemény-harnessre szánt paddinget */
#vig1-calendar .fc .fc-timegrid-bg-harness {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* A nyitvatartás bg-event: full color, nincs border, nincs oldalsáv, pointer-events off */
/* border-style: none !important és border-width: 0 !important kell, mert a WP téma
   html :where([style*=border-color]) { border-style: solid } szabálya illeszkedik
   az elemre (—fc-event-border-color— tartalmazza a „border-color‟ stringet). */
#vig1-calendar .fc .vig1-opening-hours-bg {
    opacity: 1 !important;
    border: none !important;
    border-style: none !important;
    border-width: 0 !important;
    border-left: none !important;
    box-shadow: none !important;
    border-radius: 0;
    pointer-events: none;
    outline: none !important;
}

/* ════════════════════════════════════════════════════════════════════════════
   Modern Slate esemény design
   A JS (eventDidMount) setProperty()-vel állítja be --fc-event-bg-color-t
   a backend terem-színéből. A CSS !important-tal felülírja a FC inline
   background-color / color stílusait.
   ════════════════════════════════════════════════════════════════════════════ */
#vig1-calendar .fc-event:not(.vig1-opening-hours-bg) {
    /* Fallback — szürke, ha a backend nem küld terem-színt */
    --fc-event-bg-color:     #64748b;
    --fc-event-border-color: var(--fc-event-bg-color);

    /* Halvány tint háttér az accent-színből */
    background-color: color-mix(in srgb, var(--fc-event-bg-color) 12%, white) !important;

    /* Sötét szöveg a halvány háttéren — felülírja FC white default-ját */
    color: #0f172a !important;

    /* Bal oldali 3 px-es accent sáv; többi border transparent */
    border-color: transparent !important;
    border-left: 3px solid var(--fc-event-bg-color) !important;
    border-radius: 4px;

    transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

/* Hover: erősebb tint + árnyék + előtérbe hozás */
#vig1-calendar .fc-event:not(.vig1-opening-hours-bg):hover {
    background-color: color-mix(in srgb, var(--fc-event-bg-color) 18%, white) !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.18);
    z-index: 5;
}

/* Időpont sor — accent-szín (sötétítve), félkövér, rögzített számszélesség */
#vig1-calendar .fc-event .fc-event-time {
    color: color-mix(in srgb, var(--fc-event-bg-color) 85%, black);
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

/* Cím sor — sötét, kis méret, semibold, ellipsis */
#vig1-calendar .fc-event .fc-event-title {
    color: #0f172a;
    font-size: 11px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Múltbeli / lejárt foglalások halvány megjelenítése */
/* #vig1-calendar .fc-event.is-past {
     opacity: 0.55; 
} */

/* ════════════════════════════════════════════════════════════════════════════
   Saját-foglalás badge (own-booking)
   ════════════════════════════════════════════════════════════════════════════ */
#vig1-calendar .fc .vig1-own-booking-event .fc-event-main {
    position: relative;
    padding-right: 18px;
}

/* Fallback marker: JS badge-beszúrás nélkül is látszik a jelzés */
#vig1-calendar .fc .vig1-own-booking-event .fc-event-main::before {
    content: '!';
    position: absolute;
    top: 2px;
    right: 2px;
    width: 16px;
    height: 16px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    color: var(--vig1-own-mark-fg, #0f172a);
    background: var(--vig1-own-mark-bg, #ffffff);
    border: 1px solid var(--vig1-own-mark-fg, #0f172a);
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.35);
    pointer-events: none;
    z-index: 4;
}

#vig1-calendar .fc .vig1-own-booking-badge {
    position: absolute;
    top: 2px;
    right: 2px;
    width: 16px;
    height: 16px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    color: var(--vig1-own-mark-fg, #0f172a);
    background: var(--vig1-own-mark-bg, #ffffff);
    border: 1px solid var(--vig1-own-mark-fg, #0f172a);
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.35);
    pointer-events: auto;
    cursor: help;
    z-index: 5;
}

#vig1-calendar .fc .vig1-own-booking-event .fc-event-main.vig1-own-badge-mounted::before {
    display: none;
}

#vig1-calendar .fc .vig1-own-booking-event .fc-event-main .vig1-own-booking-badge + .fc-event-title,
#vig1-calendar .fc .vig1-own-booking-event .fc-event-main .vig1-own-booking-badge ~ .fc-event-title {
    padding-right: 0;
}

/* ════════════════════════════════════════════════════════════════════════════
   Függőben lévő (pending) badge — jobb-felső sarokba helyezve
   A JS esetleg bottom/left inline stílust állít, a !important felülírja.
   ════════════════════════════════════════════════════════════════════════════ */
#vig1-calendar .fc .vig1-pending-booking-badge {
    position: absolute !important;
    top:    2px !important;
    right:  2px !important;
    bottom: auto !important;
    left:   auto !important;
    width: 16px;
    height: 16px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    color: var(--vig1-pending-mark-fg, #92400e);
    background: var(--vig1-pending-mark-bg, #fef3c7);
    border: 1px solid color-mix(in srgb, var(--fc-event-bg-color) 60%, #92400e);
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.35);
    pointer-events: auto;
    cursor: help;
    z-index: 20;
}

#vig1-calendar .fc .fc-timegrid-event:has(.vig1-pending-booking-badge) {
    overflow: visible;
}

/* ════════════════════════════════════════════════════════════════════════════
   Eszköztár (toolbar) — helyre lesz állítva az új fejléc CSS-sel
   ════════════════════════════════════════════════════════════════════════════ */
