.elementor-11885 .elementor-element.elementor-element-29af400{--display:flex;}.elementor-11885 .elementor-element.elementor-element-f91c187{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-11885 .elementor-element.elementor-element-f91c187 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:30px;font-weight:900;text-transform:uppercase;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;color:#79B530;}.elementor-11885 .elementor-element.elementor-element-dfc95f7{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-11885 .elementor-element.elementor-element-dfc95f7 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:30px;font-weight:900;text-transform:uppercase;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;color:#79B530;}.elementor-11885 .elementor-element.elementor-element-e364206{margin:5px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-11885 .elementor-element.elementor-element-e364206 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:25px;font-weight:900;text-transform:uppercase;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;color:#79B530;}.elementor-11885 .elementor-element.elementor-element-76534a5{--display:flex;}.elementor-11885 .elementor-element.elementor-element-8a7fc94{font-family:"Roboto", Sans-serif;color:var( --e-global-color-text );}.elementor-11885 .elementor-element.elementor-element-0d5840c{--display:flex;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header, 
                .elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-wrapper .eael-accordion_media-list{background-color:var( --e-global-color-text );}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-accordion-icon{font-size:16px;color:var( --e-global-color-e4a7d86 );}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header svg.fa-accordion-icon{height:16px;width:16px;line-height:16px;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-list .eael-accordion_media-icon i{font-size:16px;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-list .eael-accordion_media-icon svg{height:16px;width:16px;line-height:16px;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-accordion-icon,
                    .elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-wrapper .eael-accordion_media-lists .eael-accordion_media-list{gap:10px;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .eael-accordion-tab-title{color:var( --e-global-color-e4a7d86 );}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-content .eael-accordion_media-title{color:var( --e-global-color-e4a7d86 );}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-accordion-icon-svg svg{color:var( --e-global-color-e4a7d86 );fill:var( --e-global-color-e4a7d86 );}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header svg{fill:var( --e-global-color-e4a7d86 );}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-list .eael-accordion_media-icon{color:var( --e-global-color-e4a7d86 );}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover .eael-accordion-tab-title,
                    .elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-list:not(.active):hover .eael-accordion_media-title{color:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover .fa-accordion-icon{color:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover .fa-accordion-icon svg{color:#fff;fill:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header:hover svg.fa-accordion-icon{fill:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-list:hover .eael-accordion_media-icon i{color:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-list:hover .eael-accordion_media-icon svg{fill:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active{color:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .eael-accordion-tab-title{color:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .fa-accordion-icon{color:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .fa-accordion-icon svg{color:#fff;fill:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active svg.fa-accordion-icon{fill:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-list.active .eael-accordion_media-icon i{color:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-list.active .eael-accordion_media-icon svg{fill:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-content{color:#333;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-accordion_media-list .eael-accordion_media-content .eael-accordion_media-description{color:#333;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-toggle, .elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header > .fa-toggle-svg{font-size:16px;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header svg.fa-toggle{height:16px;width:16px;line-height:16px;fill:var( --e-global-color-e4a7d86 );}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-toggle{color:var( --e-global-color-e4a7d86 );}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header .fa-toggle svg{color:var( --e-global-color-e4a7d86 );fill:var( --e-global-color-e4a7d86 );}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .fa-toggle{color:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active .fa-toggle svg{color:#fff;fill:#fff;}.elementor-11885 .elementor-element.elementor-element-4247af4 .eael-adv-accordion .eael-accordion-list .eael-accordion-header.active svg.fa-toggle{fill:#fff;}.elementor-11885 .elementor-element.elementor-element-0ddaa6f{--display:flex;}.elementor-11885 .elementor-element.elementor-element-4f97ee0{margin:3px 0px calc(var(--kit-widget-spacing, 0px) + 8px) 0px;text-align:center;}.elementor-11885 .elementor-element.elementor-element-4f97ee0 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:30px;font-weight:900;text-transform:uppercase;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;color:#79B530;}.elementor-11885 .elementor-element.elementor-element-6f375eb{--display:flex;}.elementor-11885 .elementor-element.elementor-element-730e12c .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-11885 .elementor-element.elementor-element-730e12c .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-11885 .elementor-element.elementor-element-730e12c{--titles-container-justify-content:center;--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--content-padding:20px;--content-transition-duration:800ms;--content-transition-delay:800ms;--galleries-title-color-normal:#4A4646;--galleries-title-color-hover:var( --e-global-color-text );--galleries-pointer-bg-color-hover:var( --e-global-color-text );--gallery-title-color-active:var( --e-global-color-text );--galleries-pointer-bg-color-active:var( --e-global-color-text );}.elementor-11885 .elementor-element.elementor-element-730e12c .elementor-gallery-title{font-family:"Roboto", Sans-serif;font-weight:900;--space-between:0px;}.elementor-11885 .elementor-element.elementor-element-43e7c18{--display:flex;}.elementor-11885 .elementor-element.elementor-element-6c24da9{--spacer-size:150px;}@media(max-width:1024px){.elementor-11885 .elementor-element.elementor-element-f91c187 .elementor-heading-title{font-size:30px;}.elementor-11885 .elementor-element.elementor-element-dfc95f7 .elementor-heading-title{font-size:30px;}.elementor-11885 .elementor-element.elementor-element-e364206 .elementor-heading-title{font-size:30px;}.elementor-11885 .elementor-element.elementor-element-4f97ee0 .elementor-heading-title{font-size:30px;}}@media(max-width:767px){.elementor-11885 .elementor-element.elementor-element-f91c187 .elementor-heading-title{font-size:20px;}.elementor-11885 .elementor-element.elementor-element-dfc95f7 .elementor-heading-title{font-size:20px;}.elementor-11885 .elementor-element.elementor-element-e364206 .elementor-heading-title{font-size:20px;}.elementor-11885 .elementor-element.elementor-element-4f97ee0 .elementor-heading-title{font-size:20px;}}/* Start custom CSS for eael-adv-accordion, class: .elementor-element-4247af4 */.document {
    max-width: 100%;

    background: #f9fbf7;
    color: #333;
    font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    line-height: 1.6;
    font-size: 15px;
}

.document-header {
    margin-bottom: 28px;
    padding: 24px 26px;
    background: #ffffff;
    border-left: 6px solid #79B530;
    border-radius: 12px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.07);
}

.document-header h1 {
    margin: 0;
    color: #2f3b25;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.25;
    text-align: center;
}

.chapter-title {
    margin: 34px 0 16px;
    padding: 14px 18px;
    background: #79B530;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.35;
    border-radius: 10px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.section {
    margin-bottom: 26px;
    padding: 20px 22px;
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

.section p {
    margin: 0 0 14px;
}

.section p:last-child {
    margin-bottom: 0;
}

.document strong {
    font-weight: 700;
}

/* ================================
   Таблица плана
   ВАЖНО: выравнивание сделано через классы,
   а не nth-child, потому что из-за rowspan колонки съезжают.
   ================================ */

.document table,
.camp-plan-table {
    width: 100%;
    margin: 20px 0;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
    background: #ffffff;
    border-radius: 10px;
    overflow: hidden;
    font-size: 14px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* Ширина колонок */
.camp-plan-table .col-date {
    width: 105px;
}

.camp-plan-table .col-event {
    width: 36%;
}

.camp-plan-table .col-time {
    width: 140px;
}

.camp-plan-table .col-place {
    width: 22%;
}

.camp-plan-table .col-responsible {
    width: 26%;
}

.camp-plan-table thead th {
    background: #79B530;
    color: #ffffff;
    padding: 13px 12px;
    border-right: 1px solid #6da329;
    border-bottom: 1px solid #6da329;
    text-align: center;
    vertical-align: middle;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.camp-plan-table thead th:first-child {
    border-top-left-radius: 10px;
}

.camp-plan-table thead th:last-child {
    border-top-right-radius: 10px;
    border-right: none;
}

.camp-plan-table tbody td,
.camp-plan-table tbody th {
    padding: 14px 12px;
    border-right: 1px solid #e2e2e2;
    border-bottom: 1px solid #e2e2e2;
    vertical-align: middle;
    background: #ffffff;
    color: #222;
    word-break: normal;
    overflow-wrap: anywhere;
}

.camp-plan-table tbody td:last-child,
.camp-plan-table tbody th:last-child {
    border-right: none;
}

.camp-plan-table tbody tr:nth-child(even) td:not(.day-title) {
    background: #fafdfd;
}

.camp-plan-table tbody tr:hover td:not(.day-title) {
    background: #f4faee;
}

/* Строка "День ..." + название дня */
.camp-plan-table .day-row td,
.camp-plan-table .day-title {
    text-align: center !important;
    vertical-align: middle !important;
    background: #eef7e7 !important;
    color: #2f3b25;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.45;
    padding: 16px 12px;
    border-right: none;
}

/* Первый столбик: дата одна на весь день */
.camp-plan-table .date-cell {
    text-align: center !important;
    vertical-align: middle !important;
    font-weight: 700;
    color: #2f3b25;
    background: #f7fbf3 !important;
    white-space: nowrap;
}

/* 2-я колонка: мероприятие */
.camp-plan-table .event-head,
.camp-plan-table .event-cell {
    text-align: center;
    vertical-align: middle;
}

/* 3-я колонка: время */
.camp-plan-table .time-head,
.camp-plan-table .time-cell {
    width: 140px;
    min-width: 140px;
    text-align: center !important;
    vertical-align: middle !important;
    white-space: nowrap;
}

/* 4-я колонка: место проведения, чтобы "Закрепленные кабинеты" тоже было по центру в первой строке дня */
.camp-plan-table .place-head,
.camp-plan-table .place-cell {
    text-align: center !important;
    vertical-align: middle !important;
}

/* 5-я колонка: ответственные */
.camp-plan-table .responsible-head {
    text-align: center;
}

.camp-plan-table .responsible-cell {
    text-align: left;
    vertical-align: middle;
}

/* ================================
   Мобильная версия
   ================================ */

@media (max-width: 768px) {
    .document {
        padding: 14px;
        font-size: 14px;
    }

    .document-header {
        padding: 18px 16px;
        margin-bottom: 22px;
        border-left-width: 5px;
    }

    .document-header h1 {
        font-size: 20px;
        line-height: 1.3;
    }

    .chapter-title {
        margin: 26px 0 14px;
        padding: 12px 14px;
        font-size: 15px;
        border-radius: 8px;
    }

    .section {
        padding: 16px 14px;
        border-radius: 10px;
    }

    .document table,
    .camp-plan-table {
        display: block;
        overflow-x: auto;
        white-space: normal;
        table-layout: auto;
    }

    .camp-plan-table .col-date {
        width: 95px;
    }

    .camp-plan-table .col-time {
        width: 130px;
    }

    .camp-plan-table th,
    .camp-plan-table td {
        min-width: 130px;
    }
}

/* Карточная мобильная версия. Работает благодаря data-label. */
@media (max-width: 600px) {
    .camp-plan-table.responsive-table {
        display: block;
        box-shadow: none;
        background: transparent;
        overflow: visible;
        white-space: normal;
    }

    .camp-plan-table.responsive-table colgroup,
    .camp-plan-table.responsive-table thead {
        display: none;
    }

    .camp-plan-table.responsive-table tbody,
    .camp-plan-table.responsive-table tr,
    .camp-plan-table.responsive-table td {
        display: block;
        width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    .camp-plan-table.responsive-table tr {
        margin-bottom: 14px;
        padding: 12px;
        background: #ffffff;
        border: 1px solid #e5e5e5;
        border-radius: 10px;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06);
    }

    .camp-plan-table.responsive-table .day-row {
        padding: 0;
        box-shadow: none;
        border: none;
        background: transparent;
    }

    .camp-plan-table.responsive-table .day-title {
        display: block;
        width: 100%;
        margin: 16px 0 10px;
        border-radius: 10px;
        box-sizing: border-box;
    }

    .camp-plan-table.responsive-table td {
        position: relative;
        padding: 10px 0 10px 42%;
        border: none;
        border-bottom: 1px solid #eeeeee;
        text-align: left !important;
        white-space: normal !important;
    }

    .camp-plan-table.responsive-table td:last-child {
        border-bottom: none;
    }

    .camp-plan-table.responsive-table td::before {
        content: attr(data-label);
        position: absolute;
        left: 0;
        top: 10px;
        width: 38%;
        color: #5e941f;
        font-weight: 700;
        font-size: 12px;
        line-height: 1.35;
    }

    .camp-plan-table.responsive-table .date-cell {
        text-align: center !important;
        padding: 10px;
        background: #f1f8ea !important;
        border-radius: 8px;
        margin-bottom: 8px;
    }

    .camp-plan-table.responsive-table .date-cell::before,
    .camp-plan-table.responsive-table .day-title::before {
        content: none;
    }
}

/* ================================
   Печать
   ================================ */

@media print {
    .document {
        max-width: none;
        padding: 0;
        background: #ffffff;
        color: #000000;
        font-size: 11pt;
        line-height: 1.35;
    }

    .document-header,
    .section {
        box-shadow: none;
        border-radius: 0;
    }

    .chapter-title {
        background: #ffffff;
        color: #000000;
        border-bottom: 2px solid #000000;
        border-radius: 0;
        padding-left: 0;
    }

    .camp-plan-table {
        box-shadow: none;
        font-size: 9pt;
        table-layout: fixed;
    }

    .camp-plan-table thead th {
        background: #eeeeee !important;
        color: #000000 !important;
        border: 1px solid #000000;
    }

    .camp-plan-table td,
    .camp-plan-table th {
        border: 1px solid #000000 !important;
        box-shadow: none;
    }

    .camp-plan-table .day-title,
    .camp-plan-table .date-cell {
        background: #ffffff !important;
        color: #000000 !important;
    }
}

/* ================================
   Распорядок дня
   ================================ */

.daily-routine {
    margin: 28px 0;
}

.routine-list {
    position: relative;
    padding: 20px;
    background: #ffffff;
    border-radius: 14px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.07);
}

/* Вертикальная линия */
.routine-list::before {
    content: "";
    position: absolute;
    left: 168px;
    top: 28px;
    bottom: 28px;
    width: 3px;
    background: #d8ebc9;
    border-radius: 3px;
}

.routine-item {
    position: relative;
    display: grid;
    grid-template-columns: 140px 1fr;
    gap: 28px;
    align-items: center;
    padding: 12px 0;
}

.routine-item::before {
    content: "";
    position: absolute;
    left: 142px;
    top: 50%;
    width: 15px;
    height: 15px;
    background: #79B530;
    border: 4px solid #ffffff;
    border-radius: 50%;
    box-shadow: 0 0 0 2px #d8ebc9;
    transform: translateY(-50%);
    z-index: 2;
}

.routine-time {
    padding: 9px 10px;
    background: #f1f8ea;
    color: #2f3b25;
    font-weight: 700;
    text-align: center;
    border-radius: 9px;
    white-space: nowrap;
    border: 1px solid #d8ebc9;
}

.routine-text {
    padding: 12px 14px;
    background: #f9fbf7;
    color: #333;
    border-radius: 10px;
    border-left: 4px solid #79B530;
    line-height: 1.45;
}

/* Питание */
.routine-item.meal .routine-time,
.routine-item.meal::before {
    background: #79B530;
    color: #ffffff;
}

.routine-item.meal .routine-text {
    background: #eef7e7;
    font-weight: 700;
}

/* Сон */
.routine-item.sleep .routine-time {
    background: #eef5ff;
    border-color: #cddff5;
}

.routine-item.sleep .routine-text {
    background: #f5f9ff;
    border-left-color: #7aa7d9;
}

/* Завершение дня */
.routine-item.finish .routine-time,
.routine-item.finish::before {
    background: #5e941f;
    color: #ffffff;
}

.routine-item.finish .routine-text {
    background: #eef7e7;
    font-weight: 700;
}

/* Мобильная версия */
@media (max-width: 768px) {
    .routine-list {
        padding: 16px;
    }

    .routine-list::before {
        left: 24px;
        top: 24px;
        bottom: 24px;
    }

    .routine-item {
        display: block;
        padding: 12px 0 12px 42px;
    }

    .routine-item::before {
        left: 17px;
        top: 24px;
        transform: none;
    }

    .routine-time {
        display: inline-block;
        margin-bottom: 8px;
        min-width: 120px;
        font-size: 13px;
    }

    .routine-text {
        padding: 11px 12px;
        font-size: 14px;
    }
}/* End custom CSS */