/* =====================================================
   RIWAYAT MEMBACA
===================================================== */

.history-hero {
    background: #f4f8fb;

    padding: 45px 0 50px;

    border-bottom: 1px solid #e5edf2;
}


/* =====================================================
   BREADCRUMB
===================================================== */

.breadcrumb {
    display: flex;

    align-items: center;

    gap: 9px;

    font-size: 10px;

    margin-bottom: 28px;
}

.breadcrumb a {
    color: #1769aa;
}

.breadcrumb span {
    color: #8994a2;
}

.breadcrumb i {
    color: #b5bec8;

    font-size: 8px;
}


/* =====================================================
   HEADING
===================================================== */

.history-heading {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 30px;
}

.section-label {
    color: #1769aa;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 1.5px;
}

.history-heading h1 {
    color: #172033;

    font-size: 34px;

    line-height: 1.25;

    margin: 8px 0 10px;
}

.history-heading p {
    color: #7d8998;

    font-size: 11px;

    line-height: 1.7;
}


/* =====================================================
   STAT
===================================================== */

.history-stat {
    min-width: 150px;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 15px 18px;

    border-radius: 11px;

    background: white;

    border: 1px solid #e1e9ef;

    box-shadow:
        0 5px 15px rgba(30,60,90,.04);
}

.history-stat-icon {
    width: 40px;
    height: 40px;

    border-radius: 9px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #edf6fc;

    color: #1769aa;

    font-size: 15px;
}

.history-stat div:last-child {
    display: flex;

    flex-direction: column;

    gap: 2px;
}

.history-stat strong {
    color: #172033;

    font-size: 18px;
}

.history-stat span {
    color: #8a95a3;

    font-size: 8px;
}


/* =====================================================
   HISTORY SECTION
===================================================== */

.history-section {
    padding: 55px 0 65px;

    min-height: 400px;
}


/* =====================================================
   TOOLBAR
===================================================== */

.history-toolbar {
    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    margin-bottom: 25px;
}

.history-title > span {
    color: #1769aa;

    font-size: 8px;

    font-weight: 800;

    letter-spacing: 1.2px;
}

.history-title h2 {
    color: #1e293b;

    font-size: 22px;

    margin-top: 6px;
}

.clear-history {
    border: none;

    background: transparent;

    color: #a05b5b;

    font-family: inherit;

    font-size: 9px;

    font-weight: 600;

    cursor: pointer;

    display: flex;

    align-items: center;

    gap: 6px;

    padding: 8px;

    transition: .3s;
}

.clear-history:hover {
    color: #c03939;
}


/* =====================================================
   HISTORY LIST
===================================================== */

.history-list {
    display: flex;

    flex-direction: column;

    gap: 12px;
}


/* =====================================================
   HISTORY ITEM
===================================================== */

.history-item {
    display: flex;

    align-items: center;

    gap: 20px;

    padding: 15px;

    border-radius: 11px;

    background: #ffffff;

    border: 1px solid #e4ebf0;

    box-shadow:
        0 4px 15px rgba(30,60,90,.035);

    transition: .3s;
}

.history-item:hover {
    border-color: #cbdfea;

    box-shadow:
        0 8px 22px rgba(30,60,90,.07);

    transform: translateY(-2px);
}


/* =====================================================
   COVER
===================================================== */

.history-cover {
    width: 70px;
    height: 92px;

    flex-shrink: 0;

    border-radius: 6px;

    overflow: hidden;

    background: #e9eef2;

    display: flex;

    align-items: center;
    justify-content: center;

    color: #ffffff;

    font-size: 22px;

    box-shadow:
        0 4px 10px rgba(20,40,60,.1);
}

.history-cover img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


/* WARNA COVER PER KATEGORI */

.history-cover.cover-math {
    background:
        linear-gradient(
            145deg,
            #145d97,
            #4b9ed1
        );
}

.history-cover.cover-ipa {
    background:
        linear-gradient(
            145deg,
            #21774f,
            #5ab87e
        );
}

.history-cover.cover-indonesia {
    background:
        linear-gradient(
            145deg,
            #bb6423,
            #e3a15d
        );
}

.history-cover.cover-inggris {
    background:
        linear-gradient(
            145deg,
            #5e4b9e,
            #9b86d9
        );
}

.history-cover.cover-ips {
    background:
        linear-gradient(
            145deg,
            #c58b2c,
            #e0b25f
        );
}

.history-cover.cover-informatika {
    background:
        linear-gradient(
            145deg,
            #247174,
            #57a9aa
        );
}

.history-cover.cover-kejuruan {
    background:
        linear-gradient(
            145deg,
            #6b5f4f,
            #a2917a
        );
}

.history-cover.cover-umum {
    background:
        linear-gradient(
            145deg,
            #455266,
            #7c8ba0
        );
}


/* =====================================================
   INFO
===================================================== */

.history-info {
    flex: 1;

    min-width: 0;
}

.history-category {
    color: #1769aa;

    font-size: 7px;

    font-weight: 800;

    letter-spacing: 1px;

    text-transform: uppercase;

    margin-bottom: 5px;
}

.history-info h3 {
    color: #263245;

    font-size: 14px;

    line-height: 1.4;

    margin-bottom: 5px;
}

.history-author {
    color: #8b96a4;

    font-size: 9px;

    margin-bottom: 13px;
}


/* =====================================================
   PROGRESS
===================================================== */

.history-progress-wrapper {
    max-width: 420px;
}

.history-progress-top {
    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 5px;
}

.history-progress-top span {
    color: #929daa;

    font-size: 8px;
}

.history-progress-top strong {
    color: #1769aa;

    font-size: 8px;
}

.history-progress {
    width: 100%;

    height: 5px;

    overflow: hidden;

    border-radius: 20px;

    background: #e9eef2;
}

.history-progress-bar {
    height: 100%;

    border-radius: inherit;

    background: #1769aa;

    transition: width .5s ease;
}


/* =====================================================
   TIME
===================================================== */

.history-time {
    width: 95px;

    flex-shrink: 0;

    display: flex;

    flex-direction: column;

    gap: 5px;

    color: #9aa4af;

    font-size: 8px;
}

.history-time i {
    color: #b1bbc4;

    margin-right: 4px;
}


/* =====================================================
   BUTTON
===================================================== */

.history-action {
    flex-shrink: 0;

    display: flex;

    flex-direction: column;

    gap: 7px;
}

.continue-button {
    min-width: 105px;

    padding: 10px 13px;

    border-radius: 7px;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 7px;

    background: #1769aa;

    color: white;

    font-size: 8px;

    font-weight: 700;

    transition: .3s;
}

.continue-button:hover {
    background: #125589;

    transform: translateY(-1px);
}

.remove-history {
    border: none;

    background: transparent;

    color: #a0a9b3;

    font-family: inherit;

    font-size: 8px;

    cursor: pointer;
}

.remove-history:hover {
    color: #bd5555;
}


/* =====================================================
   EMPTY
===================================================== */

.history-empty {
    padding: 65px 20px;

    text-align: center;

    border: 1px dashed #d7e1e8;

    border-radius: 13px;

    background: #fbfcfd;
}

.empty-icon {
    width: 60px;
    height: 60px;

    margin: auto;

    border-radius: 50%;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #edf5fa;

    color: #1769aa;

    font-size: 20px;
}

.history-empty h3 {
    color: #263245;

    font-size: 16px;

    margin: 16px 0 7px;
}

.history-empty p {
    max-width: 380px;

    margin: auto auto 18px;

    color: #8b96a4;

    font-size: 9px;

    line-height: 1.7;
}

.empty-button {
    display: inline-flex;

    align-items: center;

    gap: 7px;

    padding: 10px 15px;

    border-radius: 7px;

    background: #1769aa;

    color: white;

    font-size: 9px;

    font-weight: 700;
}


/* =====================================================
   CTA
===================================================== */

.history-cta {
    padding-bottom: 65px;
}

.history-cta-box {
    min-height: 150px;

    padding: 30px;

    border-radius: 15px;

    display: flex;

    align-items: center;

    gap: 22px;

    overflow: hidden;

    position: relative;

    background:
        linear-gradient(
            120deg,
            #125589,
            #1769aa
        );
}

.history-cta-icon {
    width: 55px;
    height: 55px;

    flex-shrink: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 12px;

    background: rgba(255,255,255,.12);

    color: white;

    font-size: 20px;
}

.history-cta-content {
    flex: 1;

    position: relative;

    z-index: 2;
}

.history-cta-content span {
    color: rgba(255,255,255,.65);

    font-size: 7px;

    font-weight: 800;

    letter-spacing: 1.3px;
}

.history-cta-content h2 {
    color: white;

    font-size: 19px;

    margin: 5px 0 6px;
}

.history-cta-content p {
    color: rgba(255,255,255,.7);

    font-size: 9px;

    line-height: 1.6;
}

.history-cta-button {
    position: relative;

    z-index: 2;

    padding: 12px 17px;

    display: flex;

    align-items: center;

    gap: 7px;

    border-radius: 7px;

    background: white;

    color: #1769aa;

    font-size: 9px;

    font-weight: 700;
}


/* =====================================================
   FOOTER
===================================================== */

.footer {
    background: #172536;

    color: white;
}

.footer-container {
    display: grid;

    grid-template-columns: 2fr 1fr 1fr;

    gap: 60px;

    padding-top: 45px;

    padding-bottom: 40px;
}

.footer-brand p {
    max-width: 320px;

    color: #8795a5;

    font-size: 9px;

    line-height: 1.7;

    margin-top: 15px;
}

.footer-logo {
    color: white;
}

.footer-links {
    display: flex;

    flex-direction: column;

    gap: 9px;
}

.footer-links h4 {
    color: white;

    font-size: 10px;

    margin-bottom: 5px;
}

.footer-links a {
    color: #8795a5;

    font-size: 9px;

    transition: .3s;
}

.footer-links a:hover {
    color: white;
}

.footer-bottom {
    border-top: 1px solid rgba(255,255,255,.08);
}

.footer-bottom .container {
    padding-top: 18px;

    padding-bottom: 18px;
}

.footer-bottom p {
    color: #718091;

    font-size: 8px;
}


/* =====================================================
   RESPONSIVE
===================================================== */

@media (max-width: 900px) {

    .history-item {
        flex-wrap: wrap;
    }

    .history-info {
        min-width: 250px;
    }

    .history-time {
        width: auto;
    }

    .history-action {
        margin-left: auto;
    }

}


@media (max-width: 768px) {

    .history-hero {
        padding: 35px 20px 40px;
    }

    .history-section {
        padding: 45px 20px;
    }

    .history-cta {
        padding: 0 20px 45px;
    }


    .history-heading {
        flex-direction: column;

        align-items: flex-start;
    }

    .history-stat {
        width: 100%;
    }


    .history-toolbar {
        align-items: flex-start;

        gap: 15px;
    }


    .history-item {
        display: grid;

        grid-template-columns: 65px 1fr;

        gap: 15px;
    }

    .history-cover {
        width: 65px;
        height: 85px;
    }

    .history-info {
        min-width: 0;
    }

    .history-time {
        grid-column: 2;

        width: auto;
    }

    .history-action {
        grid-column: 2;

        margin-left: 0;

        align-items: flex-start;
    }

    .continue-button {
        width: 100%;
    }


    .history-cta-box {
        flex-direction: column;

        align-items: flex-start;
    }


    .footer-container {
        padding-left: 20px;
        padding-right: 20px;

        grid-template-columns: 1fr 1fr;

        gap: 35px;
    }

    .footer-brand {
        grid-column: 1 / -1;
    }

}


@media (max-width: 480px) {

    .history-heading h1 {
        font-size: 27px;
    }

    .history-heading p {
        font-size: 10px;
    }

    .history-toolbar {
        flex-direction: column;
    }

    .clear-history {
        padding-left: 0;
    }

    .history-item {
        grid-template-columns: 55px 1fr;

        padding: 12px;

        gap: 12px;
    }

    .history-cover {
        width: 55px;
        height: 75px;
    }

    .history-info h3 {
        font-size: 12px;
    }

    .history-cta-box {
        padding: 23px;
    }

    .footer-container {
        grid-template-columns: 1fr;

        padding-left: 18px;
        padding-right: 18px;
    }

    .footer-brand {
        grid-column: auto;
    }

}