.irina-theme-modern{
    --rmt-bg-app:#fff;
    --rmt-bg-slide:#d9f2fb;
    --rmt-bg-bubble:#e5f5fc;
    --rmt-bg-soft:#f4fbfd;
    --rmt-bg-bubble-hl:#fcc617;

    --rmt-text-primary:#034f84;
    --rmt-text-on-color:#fff;
    --rmt-text-bubble:#000;

    --rmt-accent-yellow:#fcc617;
    --rmt-accent-red:#b70000;
    --rmt-accent-cyan:#22cae4;
    --rmt-accent-pale-cyan:#d0ecfc;
    --rmt-accent-search:#68c8ff;
    --rmt-scratchpad-bord:#41b6e8;

    --rmt-grad-chat-head:linear-gradient(225.84deg, #188cf5 16%, #09c6c6 84%);
    --rmt-grad-chat-foot:linear-gradient(193.31deg, #188cf5 16%, #09c6c6 84%);
    --rmt-grad-slide-ring:linear-gradient(-89.74deg, #0388f0 0%, #28d8e3 100%);
    --rmt-grad-pill:linear-gradient(193.27deg, #188cf5 16%, #09c6c6 84%);

    --rmt-radius-lg:20px;
    --rmt-radius-pill:47px;

    --rmt-shadow-circle:0 0 20px 0 #00000026;
    --rmt-shadow-bubble-hl:0 0 16px 2px #fcc617cc;
    --rmt-shadow-panel:0 4px 12px 1px #00000026;

    --rmt-font:"Segoe UI", system-ui, -apple-system, sans-serif;
    background:var(--rmt-bg-app) !important;
    font-family:var(--rmt-font);
}

.irina-theme-modern h2{
    color:var(--rmt-text-primary) !important;
    font-family:var(--rmt-font) !important;
    font-size:26px !important;
    font-weight:700 !important;
}
.irina-theme-modern a[href*=courseLessons].btn{
    background:var(--rmt-accent-red) !important;
    border:none !important;
    border-radius:var(--rmt-radius-pill) !important;
    color:var(--rmt-text-on-color) !important;
    font-family:var(--rmt-font);
    font-size:14px;
    font-weight:700;
    padding:8px 18px !important;
}
.irina-theme-modern .container-fluid .btn[onclick*=completeLesson],.irina-theme-modern .container-fluid .btn[onclick*=finishLesson],.irina-theme-modern a[href*=lesson].btn.btn--small{
    background:var(--rmt-text-primary) !important;
    border-radius:var(--rmt-radius-pill) !important;
    color:var(--rmt-text-on-color) !important;
    font-size:11px;
    font-weight:700;
    padding:8px 16px !important;
}
.irina-theme-modern #gotoQuestionInput{
    background:var(--rmt-bg-soft) !important;
    border:1px solid var(--rmt-accent-search) !important;
    border-radius:var(--rmt-radius-pill) !important;
    color:var(--rmt-accent-search) !important;
    height:27px !important;
    padding:4px 12px !important;
}
.irina-theme-modern #questionDbIdText{
    color:var(--rmt-text-primary) !important;
    font-family:var(--rmt-font);
    font-size:13px;
}
.irina-theme-modern .col-lg-8>.card{
    border:none !important;
    overflow:hidden;
}

.irina-theme-modern .col-lg-8>.card,.irina-theme-modern .col-lg-8>.card .card-body{
    background:var(--rmt-bg-slide) !important;
    border-radius:var(--rmt-radius-lg) !important;
}
.irina-theme-modern #currentSlideImage{
    border-radius:var(--rmt-radius-lg) !important;
}

.irina-theme-modern #annotationToggle{
    background:#1f2937 !important;
    border:2px solid #d1d5db !important;
    border-radius:50% !important;
    height:38px !important;
    width:38px !important;
}

.irina-theme-modern #drawingControls .btn,.irina-theme-modern .container-fluid .btn[onclick*=clearCanvas],.irina-theme-modern .container-fluid button[onclick*=submitAnswer]{
    border-radius:var(--rmt-radius-pill) !important;
    font-family:var(--rmt-font) !important;
    font-size:15px !important;
    font-weight:700 !important;
    padding:8px 22px !important;
}
.irina-theme-modern .btn-submit-answer,.irina-theme-modern button[onclick*=submitAnswer]{
    background:var(--rmt-accent-yellow) !important;
    border:none !important;
    color:#000 !important;
}
.irina-theme-modern .btn-clear-canvas,.irina-theme-modern .btn[onclick*=clearCanvas]{
    background:var(--rmt-accent-red) !important;
    border:none !important;
    color:var(--rmt-text-on-color) !important;
}
.irina-theme-modern .btn-redo,.irina-theme-modern .btn-undo,.irina-theme-modern .btn[onclick*=redoStroke],.irina-theme-modern .btn[onclick*=undoStroke]{
    background:#fff !important;
    border:1px solid var(--rmt-text-primary) !important;
    color:var(--rmt-text-primary) !important;
}
.irina-theme-modern #slideProgressBadge,.irina-theme-modern .slide-progress-text{
    background:var(--rmt-grad-pill) !important;
    border:none !important;
    border-radius:var(--rmt-radius-lg) !important;
    box-shadow:var(--rmt-shadow-circle);
    color:var(--rmt-text-on-color) !important;
    font-family:var(--rmt-font);
    font-size:18px;
    font-weight:700;
    padding:6px 28px !important;
}
.irina-theme-modern .slide-indicator,.irina-theme-modern .slide-num-circle{
    align-items:center;
    background:var(--rmt-accent-pale-cyan) !important;
    border:none !important;
    border-radius:50% !important;
    box-shadow:var(--rmt-shadow-circle);
    color:var(--rmt-text-primary) !important;
    display:inline-flex;
    font-family:var(--rmt-font);
    font-size:20px;
    font-weight:700;
    height:45px !important;
    justify-content:center;
    width:45px !important;
}
.irina-theme-modern .slide-indicator.completed,.irina-theme-modern .slide-num-circle.is-completed{
    background:var(--rmt-accent-cyan) !important;
    color:var(--rmt-text-on-color) !important;
}
.irina-theme-modern .slide-indicator.active,.irina-theme-modern .slide-num-circle.is-active{
    background:var(--rmt-accent-yellow) !important;
    border-radius:29px !important;
    color:#000 !important;
    font-size:29px !important;
    height:53px !important;
    width:53px !important;
}

.irina-theme-modern #studentScratchpad{
    background:var(--rmt-bg-soft) !important;
    border:2px solid var(--rmt-scratchpad-bord) !important;
    border-radius:var(--rmt-radius-lg) !important;
    padding:8px !important;
}

.irina-theme-modern #studentScratchpadCanvas{
    border-radius:12px !important;
}
.irina-theme-modern #studentScratchpadToolbar{
    background:var(--rmt-grad-pill);
    border-radius:var(--rmt-radius-lg);
    padding:5px 7px;
}

.irina-theme-modern .ssp-tool{
    border-radius:var(--rmt-radius-lg) !important;
    margin:0 2px;
}

.irina-theme-modern .ssp-tool:hover{
    background:#fff !important;
}

.irina-theme-modern .ssp-tool.active{
    background:#fff !important;
    border:1px solid var(--rmt-text-primary) !important;
    color:var(--rmt-text-primary) !important;
}

.irina-theme-modern .col-lg-4>.card{
    background:var(--rmt-bg-slide) !important;
    border:none !important;
    border-radius:var(--rmt-radius-lg) !important;
    box-shadow:var(--rmt-shadow-panel);
    overflow:hidden;
}

.irina-theme-modern .col-lg-4>.card .card-header{
    background:var(--rmt-grad-chat-head) !important;
    border:none !important;
    border-radius:0 !important;
    color:var(--rmt-text-on-color) !important;
    padding:20px 22px !important;
}

.irina-theme-modern .col-lg-4>.card .card-header h5{
    color:var(--rmt-text-on-color) !important;
    font-family:var(--rmt-font);
    font-size:22px;
    font-weight:700;
    margin:0;
}

.irina-theme-modern .col-lg-4>.card .card-header h5 strong{
    color:var(--rmt-text-on-color) !important;
}
.irina-theme-modern #toneBadgeChip,.irina-theme-modern .tone-badge{
    border:none !important;
    border-radius:var(--rmt-radius-pill) !important;
}
.irina-theme-modern #lessonTimer,.irina-theme-modern #toneBadgeChip,.irina-theme-modern .lesson-timer-pill,.irina-theme-modern .tone-badge{
    background:#fff !important;
    color:var(--rmt-text-primary) !important;
    font-family:var(--rmt-font);
    font-size:11px;
    font-weight:700;
    padding:4px 14px !important;
}
.irina-theme-modern #lessonTimer,.irina-theme-modern .lesson-timer-pill{
    border-radius:var(--rmt-radius-pill) !important;
}
.irina-theme-modern #chatHistory,.irina-theme-modern .chat-messages{
    background:#fff !important;
    padding:16px !important;
}

.irina-theme-modern .chat-message{
    background:var(--rmt-bg-bubble) !important;
    border:none !important;
    border-radius:var(--rmt-radius-lg) !important;
    color:var(--rmt-text-bubble) !important;
    font-family:var(--rmt-font);
    font-size:15px;
    font-weight:400;
    padding:14px 18px !important;
}
.irina-theme-modern .chat-message.active,.irina-theme-modern .chat-message:last-child{
    border:1px solid var(--rmt-bg-bubble-hl) !important;
    box-shadow:var(--rmt-shadow-bubble-hl);
}
.irina-theme-modern .chat-message-user,.irina-theme-modern .my-answer-pill{
    background:var(--rmt-grad-pill) !important;
    border-radius:var(--rmt-radius-lg) !important;
    color:var(--rmt-text-on-color) !important;
    font-family:var(--rmt-font);
    font-size:15px;
    font-weight:700;
    padding:8px 22px !important;
}
.irina-theme-modern #recordingIndicator,.irina-theme-modern .recording-pill{
    color:var(--rmt-text-on-color) !important;
    font-family:var(--rmt-font);
    font-size:12px;
    font-weight:700;
}
.irina-theme-modern .col-lg-4>.card .card-footer{
    background:var(--rmt-grad-chat-foot) !important;
    border:none !important;
    border-radius:0 !important;
    padding:14px 16px !important;
}
.irina-theme-modern .card-footer .btn,.irina-theme-modern .voice-controls .btn{
    background:#fff !important;
    border:none !important;
    border-radius:var(--rmt-radius-pill) !important;
    color:var(--rmt-text-primary) !important;
    font-family:var(--rmt-font);
    font-size:13px;
    font-weight:700;
    margin:2px;
    padding:8px 18px !important;
}

.irina-theme-modern .card-footer .btn i,.irina-theme-modern .voice-controls .btn i{
    color:var(--rmt-text-primary) !important;
}
.irina-theme-modern #lastUpdatedText,.irina-theme-modern .last-updated-text{
    color:var(--rmt-text-on-color) !important;
    font-family:var(--rmt-font);
    font-size:13px;
}
.irina-theme-modern .slide-thumbnails{
    background:#0000 !important;
    border:none !important;
    justify-content:center;
    padding:8px 0 !important;
}

.irina-theme-modern .slide-thumb{
    align-items:center !important;
    background:var(--rmt-accent-pale-cyan) !important;
    border:none !important;
    border-radius:50% !important;
    box-shadow:var(--rmt-shadow-circle) !important;
    color:var(--rmt-text-primary) !important;
    display:inline-flex !important;
    font-family:var(--rmt-font) !important;
    font-size:20px !important;
    font-weight:700 !important;
    height:45px !important;
    justify-content:center !important;
    min-width:45px !important;
    padding:0 !important;
    width:45px !important;
}

.irina-theme-modern .slide-thumb.completed{
    background:var(--rmt-accent-cyan) !important;
    color:var(--rmt-text-on-color) !important;
}

.irina-theme-modern .slide-thumb.completed:after{
    content:none !important;
}

.irina-theme-modern .slide-thumb.active{
    animation:none !important;
    background:var(--rmt-accent-yellow) !important;
    border-radius:29px !important;
    color:#000 !important;
    font-size:26px !important;
    height:53px !important;
    min-width:53px !important;
    width:53px !important;
}
.irina-theme-modern #toneBadgeBar{
    background:var(--rmt-grad-chat-head) !important;
    border-bottom:none !important;
    color:var(--rmt-text-on-color) !important;
    padding:8px 18px !important;
}

.irina-theme-modern #toneBadge{
    background:#fff !important;
    border-radius:var(--rmt-radius-pill) !important;
    color:var(--rmt-text-primary) !important;
    font-size:11px !important;
    font-weight:700 !important;
    padding:4px 14px !important;
}

.irina-theme-modern #toneUpdatedAt{
    opacity:.9;
}

.irina-theme-modern #sessionTimer{
    background:#fff !important;
    border:none !important;
    border-radius:var(--rmt-radius-pill) !important;
    color:var(--rmt-text-primary) !important;
    font-family:var(--rmt-font);
    font-size:11px;
    font-weight:700;
    padding:4px 14px !important;
}
.irina-theme-modern #teacherAvatar{
    background:var(--rmt-grad-chat-head) !important;
}
.irina-theme-modern .message-bubble{
    background:var(--rmt-bg-bubble) !important;
    border:none !important;
    border-radius:var(--rmt-radius-lg) !important;
    box-shadow:none !important;
    color:var(--rmt-text-bubble) !important;
    font-family:var(--rmt-font);
    font-size:15px;
    padding:14px 18px !important;
}

.irina-theme-modern .message.text-right .message-bubble,.irina-theme-modern .message.user-message .message-bubble{
    background:var(--rmt-grad-pill) !important;
    color:var(--rmt-text-on-color) !important;
}

.irina-theme-modern #chatMessages .message.ai-message:last-child .message-bubble,.irina-theme-modern #chatMessages .message.text-left:last-child .message-bubble{
    border:1px solid var(--rmt-bg-bubble-hl) !important;
    box-shadow:var(--rmt-shadow-bubble-hl) !important;
}
.irina-theme-modern #backButton,.irina-theme-modern #playPauseButton,.irina-theme-modern #repeatButton,.irina-theme-modern #skipButton{
    background:#fff !important;
    border:none !important;
    border-radius:var(--rmt-radius-pill) !important;
    box-shadow:var(--rmt-shadow-circle);
    color:var(--rmt-text-primary) !important;
    font-family:var(--rmt-font) !important;
    font-size:13px !important;
    font-weight:700 !important;
    padding:8px 16px !important;
}

.irina-theme-modern #backButton:hover,.irina-theme-modern #playPauseButton:hover,.irina-theme-modern #repeatButton:hover,.irina-theme-modern #skipButton:hover{
    background:var(--rmt-bg-soft) !important;
}
.irina-theme-modern #slideProgress,.irina-theme-modern .lesson-progress-fill,.irina-theme-modern .lesson-progress-track{
    display:none !important;
}
.irina-theme-modern .lesson-progress-wrap{
    display:flex !important;
    justify-content:center !important;
    margin:8px 0 4px !important;
}

.irina-theme-modern .lesson-progress-label{
    background:var(--rmt-grad-pill) !important;
    border-radius:var(--rmt-radius-lg) !important;
    box-shadow:var(--rmt-shadow-circle);
    font-family:var(--rmt-font) !important;
    font-size:18px !important;
    font-weight:700 !important;
    line-height:1.2 !important;
    padding:6px 28px !important;
}

.irina-theme-modern .lesson-progress-label,.irina-theme-modern .lesson-progress-label #slideProgressNum,.irina-theme-modern .lesson-progress-label #slideProgressTotal,.irina-theme-modern .lesson-progress-label .current-num{
    color:var(--rmt-text-on-color) !important;
}
.irina-theme-modern .col-lg-4 .card-footer,.irina-theme-modern .col-lg-4>.card .card-footer{
    background:var(--rmt-grad-chat-foot) !important;
    border:none !important;
    border-radius:0 !important;
    padding:14px 16px !important;
}
.irina-theme-modern #toneUpdatedAt{
    color:var(--rmt-text-on-color) !important;
    font-size:12px !important;
    margin-left:auto;
    opacity:.9 !important;
}
.irina-theme-modern #studentScratchpadToolbar{
    background:var(--rmt-grad-pill) !important;
    border-radius:var(--rmt-radius-lg) !important;
    box-shadow:var(--rmt-shadow-circle);
    display:inline-flex !important;
    gap:3px !important;
    margin:0 auto !important;
    padding:5px 7px !important;
}

.irina-theme-modern .ssp-tool{
    background:var(--rmt-bg-soft) !important;
    border:none !important;
    border-radius:var(--rmt-radius-pill) !important;
    color:var(--rmt-text-primary) !important;
    height:29px !important;
    padding:0 !important;
    width:38px !important;
}

.irina-theme-modern .ssp-tool.active,.irina-theme-modern .ssp-tool:hover{
    background:#fff !important;
    color:var(--rmt-text-primary) !important;
}

.irina-theme-modern .ai-tutor-chat-input,.irina-theme-modern .chat-input.ai-tutor-chat-input{
    background:var(--rmt-grad-chat-foot) !important;
    border-top:none !important;
    padding:18px 16px !important;
}
.irina-theme-modern #backButton,.irina-theme-modern #playPauseButton,.irina-theme-modern #repeatButton,.irina-theme-modern #skipButton,.irina-theme-modern .ai-tutor-chat-input .btn.btn--xsmall{
    font-size:13px !important;
    margin:2px !important;
    padding:8px 18px !important;
}

.irina-theme-modern .col-lg-8{
    position:relative;
}

.irina-theme-modern .lesson-progress-wrap{
    background:#0000 !important;
    border:none !important;
    margin:0 !important;
    padding:0 !important;
    position:absolute !important;
    right:30px !important;
    top:-40px !important;
    width:auto !important;
    z-index:5 !important;
}
.irina-theme-modern .write-regions-submit-btn{
    background:var(--rmt-accent-yellow) !important;
    border:2px solid var(--rmt-accent-yellow) !important;
    border-radius:var(--rmt-radius-pill) !important;
    box-shadow:0 2px 8px #fcc61766 !important;
    color:var(--rmt-text-primary) !important;
    font-weight:700 !important;
    margin-right:30px !important;
    padding:10px 32px !important;
}

.irina-theme-modern .write-regions-submit-btn:hover{
    box-shadow:0 4px 12px #fcc6178c !important;
    transform:translateY(-1px);
}

.irina-theme-modern .col-lg-4{
    align-self:flex-start !important;
    position:sticky !important;
    top:10px !important;
    z-index:4;
}

.irina-theme-modern .col-lg-4>.card,.irina-theme-modern .col-lg-4>.card.h-100{
    height:calc(100vh - 140px) !important;
    max-height:calc(100vh - 140px) !important;
    min-height:0 !important;
}

.irina-theme-modern #chatMessages{
    flex:1 1 0 !important;
    max-height:none !important;
    min-height:0 !important;
}
.irina-theme-modern .ai-tutor-chat-input,.irina-theme-modern .chat-input.ai-tutor-chat-input{
    flex-shrink:0 !important;
    margin-top:auto !important;
}
.irina-theme-modern .col-lg-4>.card>.card-body.p-0{
    flex:1 1 0 !important;
    max-height:100% !important;
    min-height:0 !important;
    overflow:hidden;
}

.irina-theme-modern .lesson-progress-wrap .lesson-progress-label{
    margin:0 !important;
}

.irina-theme-modern #drawingControls{
    background:var(--rmt-bg-bubble) !important;
    border-radius:var(--rmt-radius-lg) !important;
    border-top:none !important;
    margin:8px 12px !important;
    padding:14px 18px !important;
}

.irina-theme-modern #drawingControls #paletteLabel{
    color:var(--rmt-text-primary) !important;
    font-weight:600 !important;
}

.irina-theme-modern #drawingControls #eraserBtn,.irina-theme-modern #drawingControls .btn,.irina-theme-modern #drawingControls .btn.btn--small{
    background:#fff !important;
    border:2px solid var(--rmt-text-primary) !important;
    border-radius:var(--rmt-radius-pill) !important;
    color:var(--rmt-text-primary) !important;
    font-weight:600 !important;
    padding:8px 20px !important;
    transition:transform .1s ease,box-shadow .1s ease;
}

.irina-theme-modern #drawingControls .btn:hover{
    box-shadow:0 2px 6px #034f8426;
    transform:translateY(-1px);
}
.irina-theme-modern #drawingControls .btn[onclick="clearCanvas()"]{
    background:var(--rmt-accent-red) !important;
    border-color:var(--rmt-accent-red) !important;
    color:#fff !important;
}
.irina-theme-modern #drawingControls .btn[onclick="submitDrawing()"]{
    background:var(--rmt-accent-yellow) !important;
    border-color:var(--rmt-accent-yellow) !important;
    color:var(--rmt-text-primary) !important;
}
.irina-theme-modern .col-lg-4>.card .card-header h5{
    flex:1 1 auto;
    font-size:clamp(15px, 1.4vw, 22px);
    line-height:1.15;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.irina-theme-modern .col-lg-4>.card .card-header h5 span[style*=font-size]{
    font-size:1em !important;
}
.irina-theme-modern #toneBadgeBar{
    flex-wrap:wrap;
    row-gap:2px;
}
.irina-theme-modern #toneUpdatedAt{
    font-size:11px;
}
@media (max-width:1399px){
    .irina-theme-modern .col-lg-4>.card .card-header{
        padding:14px 18px !important;
    }
    .irina-theme-modern .card-footer .btn{
        font-size:12px;
        padding:7px 14px !important;
    }
}

@media (max-width:1199px){
    .irina-theme-modern .col-lg-4>.card .card-header{
        padding:12px 14px !important;
    }
    .irina-theme-modern .col-lg-4>.card .card-header h5{
        font-size:16px;
    }
    .irina-theme-modern .card-footer .btn{
        font-size:11px;
        margin:1px;
        padding:6px 12px !important;
    }
    .irina-theme-modern #lessonTimer,.irina-theme-modern #sessionTimer,.irina-theme-modern .lesson-timer-pill{
        font-size:10px;
        padding:3px 10px !important;
    }
    .irina-theme-modern #toneBadgeBar{
        padding:4px 12px !important;
    }
}
.irina-theme-modern #mascotbot-root{
    height:clamp(120px, 13vw, 220px) !important;
}
.irina-theme-modern #teacherAvatar{
    padding:clamp(4px, .6vw, 15px) !important;
}
@media (max-width:991px){
    .irina-theme-modern .col-lg-4>.card .card-header h5{
        font-size:20px;
        text-overflow:clip;
        white-space:normal;
    }
    .irina-theme-modern .card-footer .btn{
        font-size:13px;
        padding:8px 16px !important;
    }
}
