/* Simple Cards Container */
#ka .ka-container .courselist-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin: 10px 0 30px 0;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

/* Simple Card Item */
#ka .ka-container .courselist-items .courselist-item.simple-card-item {
    display: flex;
    width: 100%;
    max-width: 100%;
    margin-bottom: 0;
    min-width: 0;
}

/* Simple Card Link - stretched overlay that makes the entire card clickable.
   It is an empty, absolutely positioned anchor (not a wrapper), so nested
   interactive elements like instructor links and the day-schedules button stay
   valid and clickable. Wrapping the card in an <a> nests <a>/<button> inside an
   <a> (invalid HTML), which browsers repair by splitting the anchor - that broke
   the layout (empty anchor box + collapsed content). */
#ka .ka-container .courselist-items .simple-card-link {
    position: absolute;
    inset: 0;
    z-index: 1;
    text-decoration: none;
    color: inherit;
    border-radius: 12px;
}

/* Lift interactive children above the stretched link so they remain clickable */
#ka .ka-container .courselist-items .simple-card-instructors a,
#ka .ka-container .courselist-items .simple-card-day-schedules a,
#ka .ka-container .courselist-items .simple-card-day-schedules button {
    position: relative;
    z-index: 2;
}

/* Hover lift on the whole card */
#ka .ka-container .courselist-items .simple-card-item {
    transition: transform 0.2s ease;
}

#ka .ka-container .courselist-items .simple-card-item:hover {
    transform: translateY(-2px);
}

/* Simple Card Container */
#ka .ka-container .courselist-items .simple-card {
    display: flex;
    align-items: flex-start;
    width: 100%;
    flex: 1 1 auto;
    min-width: 0;
    background-color: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    padding: var(--ka-space-lg) var(--ka-space-sm) var(--ka-space-lg) var(--ka-space-xl);
    transition: box-shadow 0.3s ease;
    position: relative;
    overflow: hidden;
}

#ka .ka-container .courselist-items .simple-card:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

/* Simple Card with Image */
#ka .ka-container .courselist-items .simple-card.with-image {
    padding: var(--ka-space-md);
    align-items: flex-start;
}

/* Simple Card Image - left side */
#ka .ka-container .courselist-items .simple-card-image {
    flex-shrink: 0;
    width: 120px;
    height: 130px;
    border-radius: 12px;
    overflow: hidden;
    margin-right: 20px;
}

#ka .ka-container .courselist-items .simple-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Simple Card Content */
#ka .ka-container .courselist-items .simple-card-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 0; /* Allows text truncation */
}
#ka .ka-container .courselist-items .simple-card.with-image .simple-card-content {
    padding-top: var(--ka-space-xs);
}

/* Simple Card Title */
#ka .ka-container .courselist-items .simple-card-title {
    margin: 0;
    font-size: var(--ka-font-md);
    font-weight: 600;
    line-height: 1.4;
    color: #333;
}

/* Simple Card Excerpt */
#ka .ka-container .courselist-items .simple-card-excerpt {
    font-size: var(--ka-font-s);
    color: #666;
    line-height: 1.5;
    display: -webkit-box;
    line-clamp: 6;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Simple Card Meta - vertical list of metadata rows.
   With many fields enabled, a wrapping flex row looked uneven; a clean vertical
   stack with an aligned icon column reads much better and scales to any number
   of fields. */
#ka .ka-container .courselist-items .simple-card-meta {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 7px;
    font-size: var(--ka-font-s);
    line-height: 1.4;
    color: #555;
}

/* Each meta row: aligned icon column + value */
#ka .ka-container .courselist-items .simple-card-meta > * {
    display: flex;
    align-items: flex-start;
    gap: 5px;
    margin: 0;
    min-width: 0;
}

/* Let the value text wrap instead of overflowing/clipping in narrow cards */
#ka .ka-container .courselist-items .simple-card-meta > * > span {
    min-width: 0;
    white-space: normal;
    overflow-wrap: break-word;
}

/* Consistent, fixed-width icon column so all values line up vertically */
#ka .ka-container .courselist-items .simple-card-meta > * > i.ka-icon,
#ka .ka-container .courselist-items .simple-card-meta .simple-card-day-schedules i.ka-icon {
    flex: 0 0 16px;
    width: 16px;
    font-size: var(--ka-font-base);
    line-height: inherit;
    text-align: center;
}

/* Icon colors: every meta icon uses the filter color, except the "Neste dato"
   (date) icon which keeps the accent/theme color so the primary date stands out.
   The location fallback row reuses .simple-card-date, so it is excluded too. */
#ka .ka-container .courselist-items .simple-card-meta > *:not(.simple-card-date) i.ka-icon {
    background-color: var(--ka-color-filter);
    font-size: var(--ka-font-s);
    height: 13px;
}
#ka .ka-container .courselist-items .simple-card-meta > *:not(.simple-card-date) > span{
    font-size: var(--ka-font-xs);
}

/* The day-schedules trigger is a button/link - align it like the other rows */
#ka .ka-container .courselist-items .simple-card-day-schedules > button,
#ka .ka-container .courselist-items .simple-card-day-schedules > a {
    display: flex;
    align-items: flex-start;
    gap: 5px;
    padding: 0;
    margin: 0;
    border: 0;
    background: none;
    font: inherit;
    font-size: var(--ka-font-xs);
    color: inherit;
    text-align: left;
    cursor: pointer;
}

/* Simple Card Arrow - right side */
#ka .ka-container .courselist-items .simple-card-arrow {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 32px;
    height: 32px;
    margin-left: 15px;
    color: #4caf50; /* Light green as shown in image */
}

#ka .ka-container .courselist-items .simple-card-arrow i {
    font-size: var(--ka-font-md);
    margin-right: 0;
}

/* Responsive Adjustments */
@media (max-width: 1024px) {
    #ka .ka-container .courselist-items {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    #ka .ka-container .courselist-items .simple-card-image {
        width: 120px;
        height: 120px;
    }
}

@media (max-width: 768px) {
    #ka .ka-container .courselist-items .courselist-items {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
    
    #ka .ka-container .courselist-items .simple-card {
        padding: var(--ka-space-md) var(--ka-space-lg);
    }
    
    #ka .ka-container .courselist-items .simple-card-image {
        width: 100px;
        height: 100px;
        margin-right: 15px;
    }
    
    #ka .ka-container .courselist-items .simple-card-title {
        font-size: var(--ka-font-base);
    }
    
    #ka .ka-container .courselist-items .simple-card-excerpt {
        font-size: var(--ka-font-s);
    }
    
    #ka .ka-container .courselist-items .simple-card-meta {
        font-size: var(--ka-font-xs);
        gap: 15px;
    }
}

@media (max-width: 576px) {
    #ka .ka-container .courselist-items {
        grid-template-columns: 1fr;
    }
    
    #ka .ka-container .courselist-items .simple-card {
        flex-direction: column;
        padding: 15px;
    }
    
    #ka .ka-container .courselist-items .simple-card.with-image {
        padding-left: 15px;
    }
    
    #ka .ka-container .courselist-items .simple-card-image {
        width: 100%;
        height: 200px;
        margin-right: 0;
        margin-bottom: 15px;
    }
    
    #ka .ka-container .courselist-items .simple-card-content {
        width: 100%;
    }
    
    #ka .ka-container .courselist-items .simple-card-arrow {
        position: absolute;
        bottom: 15px;
        right: 15px;
        margin-left: 0;
    }
    
    #ka .ka-container .courselist-items .simple-card-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
}
