/* --- Huvudcontainer --- */
.ili-gcal-container { 
    position: relative; 
    width: 100% !important; 
    margin: 40px auto; 
    padding: 0;
    box-sizing: border-box;
}

/* --- Kalender Widget --- */
.ili-gcal-container .ui-datepicker-inline {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    border: 1px solid #ccc !important;
    padding: 0 !important;
    background: #fff !important;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

.ui-datepicker-header {
    background: #ffffff !important;
    border-bottom: 1px solid #ccc !important;
    padding: 12px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.ui-datepicker-title { font-weight: 800 !important; font-size: 1.3em !important; color: #222 !important; }

.ui-datepicker-prev, .ui-datepicker-next {
    cursor: pointer;
    background: #f4f4f4 !important;
    border: 1px solid #bbb !important;
    border-radius: 4px;
    width: 38px; height: 38px;
    display: flex !important;
    align-items: center; justify-content: center;
    position: static !important;
}

.ui-icon { display: none !important; }

/* --- Tabell Layout --- */
.ui-datepicker-calendar { table-layout: fixed !important; width: 100% !important; border-collapse: collapse !important; }
.ui-datepicker th { background: #f9f9f9; border: 1px solid #ddd !important; padding: 10px 0 !important; font-size: 12px; color: #444; }
.ui-datepicker td { height: 100px !important; width: 14.28% !important; vertical-align: top !important; border: 1px solid #ddd !important; position: relative; }
.ui-datepicker td a { display: block !important; padding: 8px !important; text-align: right !important; font-weight: 700; color: #111 !important; text-decoration: none; }

/* --- Händelsetaggar i Kalendern --- */
.ili-cal-titles-container { display: block; padding: 4px; width: 100%; box-sizing: border-box; }
.ili-cal-title-tag {
    font-size: 11px !important; line-height: 1.3; color: #111; background-color: #f2f2f2;
    border-left: 3px solid #0073aa; padding: 3px 6px; border-radius: 2px; margin-bottom: 3px;
    display: block; word-break: break-all; overflow-wrap: anywhere; white-space: normal; overflow: hidden; max-height: 2.8em;
}

/* --- Listvy (Beskrivningar med HTML) --- */
.ili-event-list-container { margin-top: 40px; }
.ili-event-item { padding: 35px 20px; border-bottom: 1px solid #eee; }
.ili-event-item.ili-highlight { background-color: #fffde7; border-left: 6px solid #0073aa; }
.ili-event-header { font-size: 1.4em; font-weight: 800; color: #000; margin-bottom: 10px; }

/* Styling för HTML-innehåll i beskrivningen */
.ili-event-desc { 
    margin-top: 15px; 
}

.ili-event-desc ul, .ili-event-desc ol {
    margin: 15px 0 15px 25px !important;
    padding: 0 !important;
    list-style: disc !important; /* Säkerställ att punkter syns */
}

.ili-event-desc li {
    margin-bottom: 8px !important;
}

.ili-event-desc p {
    margin-bottom: 15px;
}

/* --- Loader --- */
.ili-loader { border: 4px solid #f3f3f3; border-top: 4px solid #0073aa; border-radius: 50%; width: 30px; height: 30px; animation: ili-spin 1s linear infinite; margin: 20px auto; }
@keyframes ili-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }