/* AhoLMS Final Version Styles */

/* --- General Container --- */
.aholms-container {
    font-family: 'Baloo 2', 'Comic Sans MS', cursive, sans-serif; /* A cuter, rounder font */
    border: 3px dashed #ffb3cc;
    padding: 10px 20px; /* Reduced top/bottom padding */
    border-radius: 20px;
    background-color: #fff9fb;
    margin-bottom: 25px;
}

/* --- Course Wrapper --- */
.aholms-course-wrapper h2 {
    font-size: 2em; /* Reduced font size */
    text-align: center; /* Centered title */
    color: #d6336c;
    margin-top: 0; /* Removed extra top margin */
    margin-bottom: 20px;
}

/* --- Day List --- */
.aholms-day-list {
    list-style: none;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 20px;
}

.aholms-day-item a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 15px 10px;
    border-radius: 18px;
    background-color: #fff0f6;
    border: 2px solid #ffd6e5;
    text-decoration: none;
    color: #c44569;
    font-weight: 600;
    transition: transform 0.2s, box-shadow 0.2s;
    height: 100%;
    min-height: 150px;
    box-sizing: border-box;
}

.aholms-day-item a:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 15px rgba(255, 126, 185, 0.2);
}

/* --- NEW Day Icon Style --- */
.aholms-day-icon {
    font-size: 2.2em; /* Larger number */
    font-weight: 700;
    line-height: 1;
    background: linear-gradient(145deg, #ff87ab, #f9a8d4);
    color: white;
    border-radius: 50%;
    width: 65px;
    height: 65px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-bottom: 12px;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.15);
    box-shadow: 0 4px 8px rgba(214, 51, 108, 0.25);
}

.aholms-item-title {
    text-align: center;
    word-break: break-word;
    font-size: 0.95em;
    line-height: 1.4;
}

/* --- Lesson List --- */
.aholms-lesson-list {
    list-style: none;
    padding: 0;
}

.aholms-lesson-item a {
    display: flex;
    align-items: center;
    padding: 12px 15px;
    background-color: #f0fffb;
    border: 2px solid #a6f2e4;
    border-radius: 12px;
    margin-bottom: 10px;
    text-decoration: none;
    color: #0d7f69;
    transition: transform 0.2s, background-color 0.2s;
    font-weight: 500;
}

.aholms-lesson-item a:hover {
    transform: translateX(5px);
    background-color: #e6fffa;
}

.aholms-lesson-icon {
    font-size: 1.2em;
    font-weight: 700;
    background: #48d1b3;
    color: white;
    border-radius: 10px;
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-right: 15px;
}

/* --- Completion & Navigation --- */
.aholms-day-item.completed a,
.aholms-lesson-item.completed a {
    opacity: 0.6;
    filter: grayscale(80%);
    box-shadow: none;
}

.aholms-lesson-wrapper h1 {
    color: #c44569;
    margin-top: 0 !important; /* Force remove top margin */
}

.aholms-lesson-content {
    background: #fffef2;
    padding: 10px 20px;
    border-radius: 10px;
    border: 2px dotted #fde24f;
    margin-bottom: 15px;
}

.aholms-lesson-navigation {
    display: flex;
    justify-content: flex-end;
    gap: 15px;
    margin-top: 25px;
    clear: both; /* Ensure it appears after floated elements */
}

.aholms-complete-button, .aholms-next-button {
    background: none; border: none; cursor: pointer; padding: 0;
}

.aholms-nav-icon {
    display: block; width: 60px; height: 60px;
    background-size: contain; background-repeat: no-repeat; background-position: center;
    transition: transform 0.2s ease-out;
}
.aholms-nav-icon:hover { transform: scale(1.15); }

.aholms-ok-icon { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%234CAF50"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>'); }
.aholms-lesson-wrapper.completed .aholms-ok-icon { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23a5d6a7"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>'); }
.aholms-next-icon { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23FF9800"><path d="M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z"/></svg>'); }

/* Admin Quick Manage Styles */
.aholms-child-list { list-style: disc; margin-left: 20px; }
.aholms-child-list li { display: flex; justify-content: space-between; align-items: center; padding: 4px 0; border-bottom: 1px solid #eee; }
.aholms-child-list li:last-child { border-bottom: none; }
.aholms-remove-child-btn { color: #a00; text-decoration: none; font-size: 1.5em; padding: 0 5px; }