.elementor-6090 .elementor-element.elementor-element-9abc38b{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:300px;--padding-right:300px;}.elementor-6090 .elementor-element.elementor-element-9abc38b:not(.elementor-motion-effects-element-type-background), .elementor-6090 .elementor-element.elementor-element-9abc38b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0E1E18;}.elementor-6090 .elementor-element.elementor-element-f1829f0{--display:flex;border-style:none;--border-style:none;--border-radius:28px 28px 28px 28px;box-shadow:0px 0px 9px 4px rgba(0,0,0,0.5) inset;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-6090 .elementor-element.elementor-element-f1829f0:not(.elementor-motion-effects-element-type-background), .elementor-6090 .elementor-element.elementor-element-f1829f0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFB50E;}.elementor-6090 .elementor-element.elementor-element-b66f379{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-6090 .elementor-element.elementor-element-4067dce .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:17px;font-weight:700;letter-spacing:2.1px;color:#126847;}.elementor-6090 .elementor-element.elementor-element-b8609b8{--display:flex;border-style:solid;--border-style:solid;border-color:#D4AF5A;--border-color:#D4AF5A;--border-radius:22px 22px 22px 22px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-6090 .elementor-element.elementor-element-b8609b8:not(.elementor-motion-effects-element-type-background), .elementor-6090 .elementor-element.elementor-element-b8609b8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0E1E18;}.elementor-6090 .elementor-element.elementor-element-73def1a .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:30px;font-weight:700;line-height:41px;color:#C8A030;}.elementor-6090 .elementor-element.elementor-element-6d4f46b .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:21px;font-weight:700;line-height:41px;color:#C8A878;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-6090 .elementor-element.elementor-element-f0ede9d img{border-style:none;border-radius:22px 22px 22px 22px;}.elementor-6090 .elementor-element.elementor-element-c0ca2c0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-6090 .elementor-element.elementor-element-917eb2e{--display:flex;border-style:solid;--border-style:solid;border-color:#D4AF5A;--border-color:#D4AF5A;--border-radius:22px 22px 22px 22px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-6090 .elementor-element.elementor-element-917eb2e:not(.elementor-motion-effects-element-type-background), .elementor-6090 .elementor-element.elementor-element-917eb2e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0E1E18;}.elementor-6090 .elementor-element.elementor-element-486d717 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:30px;font-weight:700;line-height:41px;color:#C8A030;}.elementor-6090 .elementor-element.elementor-element-8dd8795 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:21px;font-weight:700;line-height:41px;color:#C8A878;}.elementor-6090 .elementor-element.elementor-element-d3e1cdb{--display:flex;}.elementor-6090 .elementor-element.elementor-element-ce43dae{--display:flex;border-style:solid;--border-style:solid;border-color:#D4AF5A;--border-color:#D4AF5A;--border-radius:22px 22px 22px 22px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-6090 .elementor-element.elementor-element-ce43dae:not(.elementor-motion-effects-element-type-background), .elementor-6090 .elementor-element.elementor-element-ce43dae > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0E1E18;}.elementor-6090 .elementor-element.elementor-element-41f352c .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:30px;font-weight:700;line-height:41px;color:#C8A030;}.elementor-6090 .elementor-element.elementor-element-da69665 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:21px;font-weight:700;line-height:41px;color:#C8A878;}.elementor-6090 .elementor-element.elementor-element-d308ab6{--display:flex;border-style:solid;--border-style:solid;border-color:#D4AF5A;--border-color:#D4AF5A;--border-radius:22px 22px 22px 22px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-6090 .elementor-element.elementor-element-d308ab6:not(.elementor-motion-effects-element-type-background), .elementor-6090 .elementor-element.elementor-element-d308ab6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0E1E18;}.elementor-6090 .elementor-element.elementor-element-ae1bc86 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:30px;font-weight:700;line-height:41px;color:#C8A030;}.elementor-6090 .elementor-element.elementor-element-cf96a6d .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:21px;font-weight:700;line-height:41px;color:#C8A878;}.elementor-6090 .elementor-element.elementor-element-4004cab{--display:flex;border-style:solid;--border-style:solid;border-color:#D4AF5A;--border-color:#D4AF5A;--border-radius:22px 22px 22px 22px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-6090 .elementor-element.elementor-element-4004cab:not(.elementor-motion-effects-element-type-background), .elementor-6090 .elementor-element.elementor-element-4004cab > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0E1E18;}.elementor-6090 .elementor-element.elementor-element-839f77e .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:30px;font-weight:700;line-height:41px;color:#C8A030;}.elementor-6090 .elementor-element.elementor-element-9940d48 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:21px;font-weight:700;line-height:41px;color:#C8A878;}@media(min-width:768px){.elementor-6090 .elementor-element.elementor-element-f1829f0{--width:100%;}}@media(max-width:1366px){.elementor-6090 .elementor-element.elementor-element-9abc38b{--padding-top:80px;--padding-bottom:80px;--padding-left:100px;--padding-right:100px;}}@media(max-width:767px){.elementor-6090 .elementor-element.elementor-element-9abc38b{--padding-top:14px;--padding-bottom:14px;--padding-left:5px;--padding-right:5px;}.elementor-6090 .elementor-element.elementor-element-f1829f0{--padding-top:14px;--padding-bottom:14px;--padding-left:3px;--padding-right:3px;}.elementor-6090 .elementor-element.elementor-element-73def1a .elementor-heading-title{font-size:20px;}.elementor-6090 .elementor-element.elementor-element-6d4f46b .elementor-heading-title{font-size:15px;line-height:1.7em;}.elementor-6090 .elementor-element.elementor-element-486d717 .elementor-heading-title{font-size:20px;}.elementor-6090 .elementor-element.elementor-element-8dd8795 .elementor-heading-title{font-size:15px;line-height:1.7em;}.elementor-6090 .elementor-element.elementor-element-41f352c .elementor-heading-title{font-size:20px;}.elementor-6090 .elementor-element.elementor-element-da69665 .elementor-heading-title{font-size:15px;line-height:1.7em;}.elementor-6090 .elementor-element.elementor-element-ae1bc86 .elementor-heading-title{font-size:20px;}.elementor-6090 .elementor-element.elementor-element-cf96a6d .elementor-heading-title{font-size:15px;line-height:1.7em;}.elementor-6090 .elementor-element.elementor-element-839f77e .elementor-heading-title{font-size:20px;}.elementor-6090 .elementor-element.elementor-element-9940d48 .elementor-heading-title{font-size:15px;line-height:1.7em;}}/* Start custom CSS for shortcode, class: .elementor-element-7ffdc34 */.ea-lesson-time {
    display: inline-block;
    background: rgba(255,255,255,.6);
    border: 1px solid rgba(200,150,0,.3);
    color: #2A1F08;
    border-radius: 999px;
    padding: 8px 14px;
    font-size: 14px;
    font-weight: 700;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b66f379 *//* HEADER LAYOUT */
.ea-lesson-header {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 18px;
    width: 100%;
}

/* LISTENING LABEL */
.ea-lesson-type .elementor-heading-title {
    font-family: 'Cinzel', serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 3px;
    color: #C8A75A;
    margin: 0;
    white-space: nowrap;
}

/* TITLE SHORTCODE */
.ea-lesson-title .elementor-shortcode {
    font-family: 'Lora', serif;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.18;
    letter-spacing: -0.5px;
    color: #1F2F27;
    margin: 0;
}

/* TIME POSITION */
.ea-lesson-time-wrap {
    justify-self: end;
}

/* ESTIMATED TIME PILL */
.ea-lesson-time {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #F6F3EA;
    border: 1px solid #E6E1D6;
    color: #1F2F27;
    border-radius: 999px;
    padding: 8px 14px;
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap;
}
@media (max-width: 1024px) {
    .ea-lesson-header {
        grid-template-columns: auto 1fr;
        gap: 12px 18px;
    }

    .ea-lesson-time-wrap {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .ea-lesson-title .elementor-shortcode {
        font-size: 28px;
    }
}
@media (max-width: 767px) {
    .ea-lesson-header {
        grid-template-columns: 1fr;
        align-items: flex-start;
        gap: 8px;
    }

    .ea-lesson-type .elementor-heading-title {
        font-size: 12px;
        letter-spacing: 2.4px;
    }

    .ea-lesson-title .elementor-shortcode {
        font-size: 26px;
        line-height: 1.2;
    }

    .ea-lesson-time-wrap {
        justify-self: start;
        margin-top: 6px;
    }

    .ea-lesson-time {
        font-size: 13px;
        padding: 7px 12px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-4daf343 */.ea-audio-box::before {
    content: "🎧 Listen first, then complete the activity.";
    display: table;
    margin: 0 auto 18px auto;
    background: rgba(255,181,14,.08);
    border: 1px solid rgba(255,181,14,.35);
    border-radius: 999px;
    padding: 10px 16px;
    font-family: Lora, serif;
    font-size: 14px;
    font-weight: 600;
    color: #F5D97A;
}

.ea-audio-box {
    background: #152519;
    border: 1px solid #2E4A34;
    border-top: 2px solid #D4AF5A;
    border-radius: 18px;
    padding: 20px;
    margin-bottom: 24px;
    box-shadow: 0 4px 18px rgba(255,181,14,.08);
}

.ea-audio-box audio,
.ea-audio-box .wp-audio-shortcode {
    width: 100% !important;
    margin: 0 !important;
    border-radius: 12px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2c1c966 *//* =====================================
   GAP ACTIVITY
===================================== */

.ea-activity .ea-gap-card {
    background: rgba(255,255,255,.035);
    border: 1px solid rgba(212,175,90,.28);
    border-radius: 18px;
    padding: 22px;
    margin-bottom: 18px;
}

.ea-activity .ea-gap-card h3 {
    color: #F5D97A;
    font-family: Lora, serif;
    font-size: 19px;
    margin-bottom: 14px;
}

.ea-activity .ea-gap-card p {
    color: #C8D8C0;
    font-family: Lora, serif;
    font-size: 16px;
    line-height: 1.7;
}

.ea-activity .ea-gap-card strong {
    color: #F5D97A;
}

.ea-activity .ea-gap-card input {
    display: inline-block;
    width: 8ch;
    min-width: 64px;
    max-width: 40vw;

    margin: 0 4px;
    padding: 2px 0;

    background: transparent;
    border: none;
    border-bottom: 2px solid #D4AF5A;
    border-radius: 0;

    color: #F5D97A;
    font-family: Lora, serif;
    font-size: 16px;
    text-align: center;
    line-height: 1.2;

    box-shadow: none;
}

/* =====================================
   GAP ACTIVITY BUTTON
===================================== */

.ea-gap-activity .ea-check-btn {
    width: 100%;
    max-width: 320px;
    display: block;
    margin: 18px auto 0;

    background: linear-gradient(
        135deg,
        #C8A030,
        #F5D97A,
        #C8A030
    );

    color: #0E1E18;
    border: none;
    border-radius: 999px;
    padding: 14px 28px;

    font-family: Lora, serif;
    font-size: 15px;
    font-weight: 700;

    cursor: pointer;
}

.ea-gap-activity .ea-check-btn:hover {
    opacity: .88;
}

/* =====================================
   GAP ACTIVITY RESULT
===================================== */

.ea-gap-activity .ea-gap-result {
    margin-top: 15px;
    color: #F5D97A;
    font-weight: 700;
    text-align: center;
}

/* =====================================
   MOBILE
===================================== */

@media (max-width: 767px) {

    .ea-lesson-card {
        padding: 16px;
    }

    .ea-activity {
        padding: 14px;
    }

    .ea-gap-card {
        padding: 14px;
        margin-bottom: 12px;
    }

    .ea-gap-card h3 {
        font-size: 14px;
        line-height: 1.35;
        margin-bottom: 12px;
    }

    .ea-gap-card p {
        font-size: 15px;
        line-height: 1.8;
    }

    .ea-gap-card input {
        width: 7ch;
        min-width: 56px;
        font-size: 15px;
    }

    .ea-activity-wrapper {
        padding: 0;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9fcb842 */.ea-word-bank {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 30px;
    width: 100%;
}

.ea-word-bank span {
    background: rgba(212,175,90,.1);
    border: 1px solid #2E4A34;
    padding: 10px 16px;
    border-radius: 999px;
    font-weight: 600;
    color: #F5D97A;
}

.ea-vocab-questions,
.ea-vocab-questions * {
    box-sizing: border-box;
}

.ea-vocab-questions p {
    margin-bottom: 18px;
    font-size: 18px;
    line-height: 1.8;
    color: #C8D8C0;
    overflow-wrap: normal;
    word-break: normal;
}

.ea-vocab-questions input {
    display: inline-block;
    width: 8ch;
    min-width: 70px;
    max-width: 42vw;
    border: none;
    border-bottom: 2px solid #D4AF5A;
    background: transparent;
    text-align: center;
    font-size: 16px;
    color: #F5D97A;
    outline: none;
    margin: 0 4px;
    padding: 2px 0;
    vertical-align: baseline;
}

.ea-correct {
    background: rgba(79,217,138,.08) !important;
    border-bottom-color: #4FD98A !important;
    color: #4FD98A !important;
    border-radius: 4px 4px 0 0;
}

.ea-wrong {
    background: rgba(232,98,90,.08) !important;
    border-bottom-color: #E8625A !important;
    color: #E8625A !important;
    border-radius: 4px 4px 0 0;
}

.ea-check-vocab-btn {
    background: linear-gradient(135deg, #C8A030, #F5D97A, #C8A030);
    color: #0E1E18;
    border: none;
    border-radius: 999px;
    padding: 14px 28px;
    font-weight: 700;
    cursor: pointer;
    margin-top: 10px;
}

.ea-check-vocab-btn:hover {
    opacity: 0.88;
}

.ea-vocab-result {
    margin-top: 15px;
    font-weight: 700;
    color: #F5D97A;
}

@media (max-width: 767px) {
    .ea-word-bank {
        gap: 10px;
        margin-bottom: 26px;
    }

    .ea-word-bank span {
        padding: 9px 14px;
        font-size: 14px;
    }

    .ea-vocab-questions p {
        font-size: 15px;
        line-height: 1.9;
        margin-bottom: 18px;
    }

    .ea-vocab-questions input {
        width: 7ch;
        min-width: 62px;
        max-width: 38vw;
        font-size: 15px;
        margin: 0 3px;
    }

    .ea-check-vocab-btn {
        width: 100%;
        padding: 14px 20px;
        font-size: 15px;
        margin-top: 12px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-e055b83 */.ea-audio-box {
    background: #152519 !important;
    border: 1px solid #2E4A34 !important;
    border-top: 2px solid #D4AF5A !important;
    border-radius: 18px !important;
    padding: 20px !important;
    margin-bottom: 24px !important;
    box-shadow: 0 4px 18px rgba(255,181,14,.08) !important;
}

.ea-audio-box::before {
    content: "🎧 Listen first, then complete the activity.";
    display: block;
    margin: 0 auto 18px;
    background: rgba(255,181,14,.08);
    border: 1px solid rgba(255,181,14,.35);
    border-radius: 999px;
    padding: 10px 16px;
    font-family: Lora, serif;
    font-size: 14px;
    font-weight: 600;
    color: #F5D97A;
    text-align: center;
}

/* WordPress media player wrapper */
.ea-audio-box .mejs-container,
.ea-audio-box .mejs-controls,
.ea-audio-box .wp-audio-shortcode {
    width: 100% !important;
    max-width: 100% !important;
    background: #0E1E18 !important;
    border-radius: 12px !important;
}

/* Control bar */
.ea-audio-box .mejs-controls {
    padding: 0 8px !important;
}

/* Time text */
.ea-audio-box .mejs-time,
.ea-audio-box .mejs-time span {
    color: #F5D97A !important;
}

/* Progress bar */
.ea-audio-box .mejs-time-current {
    background: #D4AF5A !important;
}

.ea-audio-box .mejs-time-loaded {
    background: rgba(245,217,122,.25) !important;
}

.ea-audio-box .mejs-time-total {
    background: #1F2F27 !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-77da82c */.ea-location-questions p {
    margin-bottom: 18px;
    font-size: 18px;
    line-height: 1.8;
    color: #C8D8C0;
}
.ea-location-questions input {
    width: 120px;
    border: none;
    border-bottom: 2px solid #D4AF5A;
    background: transparent;
    text-align: center;
    font-size: 16px;
    color: #F5D97A;
    outline: none;
}
.ea-location-questions input.ea-correct {
    background: rgba(79,217,138,.08);
    border-bottom-color: #4FD98A;
    color: #4FD98A;
    border-radius: 4px 4px 0 0;
}
.ea-location-questions input.ea-wrong {
    background: rgba(232,98,90,.08);
    border-bottom-color: #E8625A;
    color: #E8625A;
    border-radius: 4px 4px 0 0;
}
.ea-check-location-btn {
    background: linear-gradient(135deg, #C8A030, #F5D97A, #C8A030);
    color: #0E1E18;
    border: none;
    border-radius: 999px;
    padding: 14px 28px;
    font-weight: 700;
    cursor: pointer;
    margin-top: 10px;
    transition: opacity 0.2s;
}
.ea-check-location-btn:hover {
    opacity: 0.88;
}
.ea-location-result {
    margin-top: 15px;
    font-weight: 700;
    color: #F5D97A;
}
/* Location activity mobile fix */
.ea-location-activity,
.ea-location-activity * {
    box-sizing: border-box;
}
.ea-location-activity {
    width: 100%;
    max-width: 100%;
}
.ea-location-questions p {
    font-family: Lora, serif;
    font-size: 16px;
    line-height: 1.8;
    color: #C8D8C0;
    margin: 0 0 16px 0;
    overflow-wrap: normal;
    word-break: normal;
}
.ea-location-questions input {
    display: inline-block;
    width: 8ch;
    min-width: 58px;
    max-width: 40vw;
    border: none;
    border-bottom: 2px solid #D4AF5A;
    background: transparent;
    text-align: center;
    font-family: Lora, serif;
    font-size: 16px;
    color: #F5D97A;
    outline: none;
    margin: 0 4px;
    padding: 2px 0;
    vertical-align: baseline;
}
.ea-location-questions input.ea-correct {
    border-bottom-color: #4FD98A;
    background: rgba(79,217,138,.08);
    color: #4FD98A;
    border-radius: 4px 4px 0 0;
}
.ea-location-questions input.ea-wrong {
    border-bottom-color: #E8625A;
    background: rgba(232,98,90,.08);
    color: #E8625A;
    border-radius: 4px 4px 0 0;
}
.ea-check-location-btn {
    background: linear-gradient(135deg, #C8A030, #F5D97A, #C8A030);
    color: #0E1E18;
    border: none;
    border-radius: 999px;
    padding: 14px 30px;
    font-family: Lora, serif;
    font-weight: 700;
    cursor: pointer;
    transition: opacity 0.2s;
}
.ea-check-location-btn:hover {
    opacity: 0.88;
}
.ea-location-result {
    margin-top: 14px;
    font-family: Lora, serif;
    font-weight: 700;
    color: #F5D97A;
}
@media (max-width: 767px) {
    .ea-location-activity {
        width: 100%;
    }
    .ea-location-questions p {
        font-size: 15px;
        line-height: 1.9;
        margin-bottom: 18px;
    }
    .ea-location-questions input {
        width: 7ch;
        min-width: 54px;
        max-width: 36vw;
        font-size: 15px;
        margin: 0 3px;
    }
    .ea-check-location-btn {
        width: 100%;
        padding: 14px 20px;
        font-size: 15px;
        margin-top: 6px;
    }
    .ea-location-result {
        font-size: 15px;
        line-height: 1.5;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-06656d6 */.ea-audio-box {
    background: #152519 !important;
    border: 1px solid #2E4A34 !important;
    border-top: 2px solid #D4AF5A !important;
    border-radius: 18px !important;
    padding: 20px !important;
    margin-bottom: 24px !important;
    box-shadow: 0 4px 18px rgba(255,181,14,.08) !important;
}

.ea-audio-box::before {
    content: "🎧 Listen first, then complete the activity.";
    display: block;
    margin: 0 auto 18px;
    background: rgba(255,181,14,.08);
    border: 1px solid rgba(255,181,14,.35);
    border-radius: 999px;
    padding: 10px 16px;
    font-family: Lora, serif;
    font-size: 14px;
    font-weight: 600;
    color: #F5D97A;
    text-align: center;
}

/* WordPress media player wrapper */
.ea-audio-box .mejs-container,
.ea-audio-box .mejs-controls,
.ea-audio-box .wp-audio-shortcode {
    width: 100% !important;
    max-width: 100% !important;
    background: #0E1E18 !important;
    border-radius: 12px !important;
}

/* Control bar */
.ea-audio-box .mejs-controls {
    padding: 0 8px !important;
}

/* Time text */
.ea-audio-box .mejs-time,
.ea-audio-box .mejs-time span {
    color: #F5D97A !important;
}

/* Progress bar */
.ea-audio-box .mejs-time-current {
    background: #D4AF5A !important;
}

.ea-audio-box .mejs-time-loaded {
    background: rgba(245,217,122,.25) !important;
}

.ea-audio-box .mejs-time-total {
    background: #1F2F27 !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f7e2ea4 */.ea-info-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 22px;
  margin-bottom: 24px;
}
.ea-info-form-grid label {
  display: flex;
  flex-direction: column;
  gap: 7px;
  font-family: Lora, serif;
  font-size: 14px;
  color: #7A9A7A;
}
.ea-info-form-grid input {
  width: 100%;
  border: 1px solid #2E4A34;
  border-radius: 12px;
  padding: 12px 14px;
  background: #0E1E18;
  font-size: 15px;
  color: #F5D97A;
  outline: none;
}
.ea-info-form-grid input.ea-correct {
  background: rgba(79,217,138,.08);
  border-color: #4FD98A;
  color: #4FD98A;
}
.ea-info-form-grid input.ea-wrong {
  background: rgba(232,98,90,.08);
  border-color: #E8625A;
  color: #E8625A;
}
.ea-check-info-btn {
  background: linear-gradient(135deg, #C8A030, #F5D97A, #C8A030);
  color: #0E1E18;
  border: none;
  border-radius: 999px;
  padding: 14px 28px;
  font-weight: 700;
  cursor: pointer;
  transition: opacity 0.2s;
}
.ea-check-info-btn:hover {
  opacity: 0.88;
}
.ea-info-result {
  margin-top: 15px;
  font-weight: 700;
  color: #F5D97A;
}
@media (max-width: 767px) {
  .ea-info-form-grid {
    grid-template-columns: 1fr;
  }
}
/* Info form responsive safety */
.ea-info-form-grid,
.ea-info-form-grid * {
  box-sizing: border-box;
}
.ea-info-form-grid {
  width: 100%;
}
.ea-info-form-grid label {
  min-width: 0;
}
.ea-info-form-grid input {
  width: 100%;
  max-width: 100%;
  min-height: 48px;
}
@media (max-width: 767px) {
  .ea-info-form-grid {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-bottom: 22px;
  }
  .ea-info-form-grid label {
    font-size: 14px;
    gap: 6px;
  }
  .ea-info-form-grid input {
    min-height: 48px;
    padding: 12px 14px;
    font-size: 15px;
    border-radius: 11px;
  }
  .ea-check-info-btn {
    width: 100%;
    padding: 14px 20px;
    font-size: 15px;
    margin-top: 4px;
  }
  .ea-info-result {
    font-size: 15px;
    line-height: 1.5;
  }
}
@media (max-width: 380px) {
  .ea-info-form-grid {
    gap: 14px;
  }
  .ea-info-form-grid label {
    font-size: 13.5px;
  }
  .ea-info-form-grid input {
    min-height: 46px;
    font-size: 14.5px;
    padding: 11px 12px;
  }
  .ea-check-info-btn {
    font-size: 14.5px;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-9507e0b */.ea-audio-box::before {
    content: "🎧 Listen first, then complete the activity.";
    display: table;
    margin: 0 auto 18px auto;
    background: rgba(255,181,14,.08);
    border: 1px solid rgba(255,181,14,.35);
    border-radius: 999px;
    padding: 10px 16px;
    font-family: Lora, serif;
    font-size: 14px;
    font-weight: 600;
    color: #F5D97A;
}

.ea-audio-box {
    background: #152519;
    border: 1px solid #2E4A34;
    border-top: 2px solid #D4AF5A;
    border-radius: 18px;
    padding: 20px;
    margin-bottom: 24px;
    box-shadow: 0 4px 18px rgba(255,181,14,.08);
}

.ea-audio-box audio,
.ea-audio-box .wp-audio-shortcode {
    width: 100% !important;
    margin: 0 !important;
    border-radius: 12px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-99b30c6 */.ea-question-list {
    padding-left: 24px;
    margin-bottom: 24px;
}
.ea-question-list li {
    margin-bottom: 16px;
    font-size: 18px;
    line-height: 1.8;
    color: #C8D8C0;
}
.ea-question-list input {
    width: 110px;
    border: none;
    border-bottom: 2px solid #D4AF5A;
    background: transparent;
    text-align: center;
    font-size: 16px;
    color: #F5D97A;
    outline: none;
}
.ea-question-list input.ea-correct {
    background: rgba(79,217,138,.08);
    border-bottom-color: #4FD98A;
    color: #4FD98A;
    border-radius: 4px 4px 0 0;
}
.ea-question-list input.ea-wrong {
    background: rgba(232,98,90,.08);
    border-bottom-color: #E8625A;
    color: #E8625A;
    border-radius: 4px 4px 0 0;
}
.ea-check-question-btn {
    background: linear-gradient(135deg, #C8A030, #F5D97A, #C8A030);
    color: #0E1E18;
    border: none;
    border-radius: 999px;
    padding: 14px 28px;
    font-weight: 700;
    cursor: pointer;
    transition: opacity 0.2s;
}
.ea-check-question-btn:hover {
    opacity: 0.88;
}
.ea-question-result {
    margin-top: 15px;
    font-weight: 700;
    color: #F5D97A;
}
/* Question list mobile safety */
.ea-question-list,
.ea-question-list * {
    box-sizing: border-box;
}
.ea-question-list {
    width: 100%;
}
.ea-question-list li {
    overflow-wrap: normal;
    word-break: normal;
}
/* Make blanks act like word-sized gaps */
.ea-question-list input {
    display: inline-block;
    width: 7ch;
    min-width: 58px;
    max-width: 36vw;
    margin: 0 4px;
    padding: 2px 0;
    vertical-align: baseline;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3c30eaa */.ea-finish-lesson-btn {
    background: linear-gradient(135deg, #A67C00, #FFB50E, #F5D97A, #FFB50E, #A67C00);
    color: #0E1E18;
    border: none;
    border-radius: 999px;
    padding: 18px 64px;
    font-size: 17px;
    font-weight: 700;
    cursor: pointer;
    transition: opacity .2s, transform .2s;
    box-shadow: 0 6px 28px rgba(255,181,14,.4), 0 2px 8px rgba(0,0,0,.3);
    letter-spacing: 0.04em;
    width: 100%;
    max-width: 420px;
    display: block;
    margin: 0 auto;
    text-align: center;
}
.ea-finish-lesson-btn:hover {
    opacity: 0.92;
    transform: translateY(-3px);
    box-shadow: 0 10px 36px rgba(255,181,14,.5), 0 4px 12px rgba(0,0,0,.3);
}
.ea-finish-lesson-btn:active {
    transform: translateY(0);
    box-shadow: 0 4px 18px rgba(255,181,14,.3);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9abc38b *//* Activity Page Wrapper */
.ea-activity-page {
    width: 100%;
    min-height: 100vh;
    padding: 80px 24px;
    background: #1F2F27;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
}

/* Main Lesson Card */
.ea-lesson-card {
    width: 100%;
    max-width: 920px;
    background: #FAF8F4;
    border: 1px solid rgba(200, 167, 90, 0.3);
    border-radius: 28px;
    padding: 40px;
    box-sizing: border-box;
    overflow: hidden;
}

/* Header: Lesson type + title + time */
.ea-activity-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 24px;
    width: 100%;
}

/* Lesson title shortcode output */
.ea-lesson-card .elementor-shortcode {
    max-width: 100%;
}

/* Lesson title styling */
.ea-lesson-card .elementor-shortcode:has(+ .ea-lesson-time),
.ea-lesson-title {
    font-family: 'Lora', serif;
    font-size: 36px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.5px;
    color: #1F2F27;
}

/* Estimated time pill */
.ea-lesson-time {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    background: #F6F3EA;
    border: 1px solid #E6E1D6;
    color: #1F2F27;
    border-radius: 999px;
    padding: 8px 14px;
    font-size: 14px;
    font-weight: 700;
}

/* Activity content spacing */
.ea-activity-content {
    width: 100%;
    margin-top: 28px;
}

/* Images, audio, embeds, iframes */
.ea-lesson-card img,
.ea-lesson-card video,
.ea-lesson-card iframe,
.ea-lesson-card audio {
    max-width: 100%;
}

/* Finish button */
.ea-finish-lesson-btn {
    background: #C8A75A;
    color: #1F2F27;
    border: none;
    border-radius: 999px;
    padding: 16px 34px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    transition: .2s;
    box-shadow: 0 4px 12px rgba(0,0,0,.08);
}

.ea-finish-lesson-btn:hover {
    background: #E6C768;
    transform: translateY(-2px);
}

.ea-finish-lesson-btn:active {
    transform: translateY(0);
}

/* Footer button area */
.ea-activity-footer {
    margin-top: 36px;
    display: flex;
    justify-content: flex-end;
}
@media (max-width: 1024px) {
    .ea-activity-page {
        padding: 60px 24px;
        align-items: flex-start;
    }

    .ea-lesson-card {
        max-width: 760px;
        padding: 32px;
        border-radius: 24px;
    }

    .ea-lesson-title,
    .ea-lesson-card .elementor-shortcode {
        font-size: 32px;
    }
}
@media (max-width: 767px) {
    .ea-activity-page {
        min-height: auto;
        padding: 24px 14px;
        align-items: flex-start;
    }

    .ea-lesson-card {
        width: 100%;
        max-width: 100%;
        padding: 22px 18px;
        border-radius: 20px;
    }

    .ea-activity-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }

    .ea-lesson-card .elementor-heading-title {
        font-size: 13px !important;
        letter-spacing: 1.6px;
    }

    .ea-lesson-title,
    .ea-lesson-card .elementor-shortcode {
        font-size: 27px;
        line-height: 1.25;
        letter-spacing: -0.3px;
    }

    .ea-lesson-time {
        font-size: 13px;
        padding: 7px 12px;
        white-space: normal;
    }

    .ea-activity-content {
        margin-top: 22px;
    }

    .ea-activity-footer {
        justify-content: stretch;
    }

    .ea-finish-lesson-btn {
        width: 100%;
        padding: 15px 22px;
        font-size: 15px;
    }
}/* End custom CSS */