/* Добавляет только недостающую раскладку для новых разделов.
   Старые вкладки не меняет. */

.same-style-page .planner-page-subtitle{
    margin: 10px 0 0;
    color: #6b7280;
    font-size: 14px;
    line-height: 1.5;
}

.planner-layout{
    display:grid;
    grid-template-columns:minmax(0,1.7fr) minmax(320px,.95fr);
    gap:16px;
    align-items:start;
}

.planner-main-col,
.planner-side-col{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.planner-stats-grid{
    margin-bottom:0;
}

.planner-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    flex-wrap:wrap;
}

.planner-nav-actions{
    display:flex;
    align-items:center;
    gap:8px;
}

.planner-toolbar-title{
    font-size:16px;
    font-weight:700;
    color:#111827;
}

.planner-month-side-nav{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.planner-month-title-wrap{
    display:flex;
    align-items:center;
    gap:10px;
}

.planner-month-arrow{
    width:38px;
    height:38px;
    padding:0;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:16px;
}

.planner-view-switch{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.planner-view-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:0 14px;
    border:1px solid #e5e7eb;
    border-radius:12px;
    background:#fff;
    color:#374151;
    font-size:14px;
    font-weight:600;
}

.planner-view-link-active{
    background:#111827;
    color:#fff;
    border-color:#111827;
}

.planner-month-grid{
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    gap:10px;
}

.planner-weekdays{
    margin-bottom:10px;
}

.planner-weekdays > div{
    padding:0 6px;
    font-size:12px;
    font-weight:700;
    color:#6b7280;
    text-align:center;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.planner-day-card{
    min-height:132px;
    padding:12px;
    border:1px solid #e5e7eb;
    border-radius:14px;
    background:#f9fafb;
}

.planner-day-card-muted{opacity:.55}
.planner-day-card-today{
    border-color:rgba(59,130,246,.65);
    background:rgba(59,130,246,.16);
}
.planner-day-card-selected{border-color:#111827;background:#fff}
.planner-day-card-weekend{
    border-color:rgba(239,68,68,.28);
    background:rgba(239,68,68,.10);
}
.planner-day-card-weekend.planner-day-card-today{
    border-color:rgba(59,130,246,.65);
    background:rgba(59,130,246,.16);
}
.planner-day-card-photo{
    border-color:rgba(234,179,8,.55);
    background:rgba(250,204,21,.16);
}

.planner-day-card-range{
    border-color:rgba(34,197,94,.55);
    background:rgba(34,197,94,.14);
}

.planner-day-card-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:10px;
}

.planner-day-date{
    font-weight:700;
}

.planner-day-weekday{
    display:none;
}

.planner-day-count{
    min-width:22px;
    height:22px;
    padding:0 7px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#111827;
    color:#fff;
    font-size:12px;
    font-weight:700;
}
.planner-day-count-important{
    background:#dc2626;
    color:#fff;
}

.planner-day-count-photo{
    background:#eab308;
    color:#111827;
}

.planner-day-tasks,
.planner-week-list,
.planner-task-list{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.planner-day-task,
.planner-week-item{
    padding:8px 10px;
    border:1px solid #e5e7eb;
    border-radius:12px;
    background:#fff;
    font-size:13px;
    color:#374151;
}

.planner-day-more{
    font-size:12px;
    color:#6b7280;
}

.planner-week-grid{
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    gap:10px;
}

.planner-week-card{
    min-height:240px;
}

.planner-week-header{
    margin-bottom:10px;
}

.planner-week-date{
    font-size:13px;
    color:#6b7280;
}

.planner-week-card-today{
    border-color:#d1d5db;
}

.planner-week-card-selected{
    box-shadow:inset 0 0 0 1px #111827;
}

.planner-week-time{
    font-size:12px;
    color:#6b7280;
    margin-bottom:4px;
}

.planner-week-name{
    font-size:14px;
    font-weight:600;
    color:#111827;
}

.planner-task-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px;
    padding:14px 0;
    border-top:1px solid #eef2f7;
}
.planner-task-row:first-child{border-top:none;padding-top:0}
.planner-task-row:last-child{padding-bottom:0}

.planner-task-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
}

.planner-task-title{
    font-size:18px;
    font-weight:700;
    color:#111827;
}

.planner-task-badges{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-top:8px;
}

.planner-task-time{
    font-size:13px;
    color:#6b7280;
    white-space:nowrap;
}

.planner-task-meta{
    margin-top:10px;
    font-size:14px;
    font-weight:600;
    color:#374151;
}

.planner-task-description{
    margin-top:8px;
    font-size:14px;
    line-height:1.55;
    color:#6b7280;
    white-space:pre-line;
}

.planner-task-actions{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.planner-form{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.planner-form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.photo-projects-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
}

.photo-project-card{
    display:flex;
    flex-direction:column;
    gap:10px;
    min-height:220px;
}

.photo-project-card-idea{
    font-size:14px;
    font-weight:600;
    color:#111827;
    line-height:1.5;
}

.photo-project-card-footer{
    margin-top:auto;
    display:flex;
    gap:8px;
    flex-wrap:wrap;
}

.project-detail-text{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.project-detail-badges{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
}

.project-detail-description{
    font-size:14px;
    line-height:1.6;
    color:#6b7280;
    white-space:pre-line;
}

.planner-table-actions{
    display:flex;
    align-items:center;
    gap:8px;
}

.planner-task-row-photo{
    background:rgba(250,204,21,.20);
}

.data-table tr.planner-task-row-photo{
    background:rgba(250,204,21,.20);
}

.planner-task-row-range{
    background:rgba(34,197,94,.16);
}

.data-table tr.planner-task-row-range{
    background:rgba(34,197,94,.16);
}

@media (max-width: 1024px){
    .planner-layout,
    .photo-projects-grid{
        grid-template-columns:1fr;
    }

    .planner-week-grid{
        grid-template-columns:1fr;
    }

    .planner-month-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 768px){
    .planner-mobile-stats{
        display:none;
    }

    .planner-form-grid{
        grid-template-columns:1fr;
    }

    .planner-nav-actions{
        width:100%;
        justify-content:space-between;
    }

    .planner-nav-actions.page-actions{
        display:flex;
        flex-wrap:nowrap;
        align-items:center;
        gap:8px;
    }

    .planner-nav-actions.page-actions .car-tab-link{
        flex:1 1 auto;
        text-align:center;
        white-space:nowrap;
    }

    .planner-nav-actions.page-actions .btn{
        width:auto;
        min-width:40px;
        flex:0 0 auto;
    }

    .planner-day-title{
        white-space:nowrap;
        font-size:18px;
    }

    .planner-month-side-nav{
        flex-direction:row;
    }

    .planner-weekdays{
        display:none;
    }

    .planner-month-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:8px;
    }

    .planner-month-grid-scroll{
        overflow-x:visible;
        padding-bottom:0;
    }

    .planner-day-weekday{
        display:inline;
    }

    .planner-day-date{
        white-space:nowrap;
        font-size:13px;
    }

    .planner-task-row,
    .planner-task-top{
        grid-template-columns:1fr;
        flex-direction:column;
    }

    .planner-task-actions{
        flex-direction:row;
        flex-wrap:wrap;
    }

    .car-tab-bar {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

.planner-stats-grid-spaced{
    margin-bottom:18px;
}

.planner-section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:12px;
    margin:10px 0 18px;
}

.planner-section-head-archive{
    margin-top:28px;
}

.photo-project-card{
    position:relative;
    gap:14px;
    min-height:240px;
    border:1px solid #eceff4;
    box-shadow:0 14px 32px rgba(17,24,39,.06);
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.photo-project-card:hover{
    transform:translateY(-4px);
    box-shadow:0 20px 38px rgba(17,24,39,.1);
    border-color:#d9dee8;
}

.photo-project-card-archived{
    opacity:.84;
}

.photo-project-card-topline{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    flex-wrap:wrap;
}

.photo-project-date-badge{
    display:inline-flex;
    align-items:center;
    padding:7px 12px;
    border-radius:999px;
    background:#f3f4f6;
    color:#4b5563;
    font-size:12px;
    font-weight:700;
}

.project-hero-card{
    padding:22px;
}

.project-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:16px;
}

.project-bookings-card .table-header-spaced{
    align-items:flex-start;
}

.planner-table-note{
    font-size:13px;
    color:#6b7280;
}

.table-wrapper-premium{
    border:1px solid #eef2f7;
    border-radius:18px;
    overflow:hidden;
}

.data-table-premium thead th{
    background:#f8fafc;
    border-bottom:1px solid #eef2f7;
}

.data-table-premium tbody tr:hover{
    background:#fafbfc;
}

.btn-icon-delete{
    display:inline-flex;
    align-items:center;
    gap:8px;
}

.btn-icon-delete svg{
    width:16px;
    height:16px;
}

.planner-form-shell{
    padding:18px;
}

.planner-form-shell-narrow{
    max-width:760px;
    margin:0 auto;
}

.planner-form-clean,
.planner-form-clean *{
    font-family:inherit;
}

.planner-form-schedule label,
.planner-form-schedule .form-field span,
.planner-form-clean label{
    font-size:14px;
    font-weight:600;
    color:#374151;
}

.planner-form-schedule input,
.planner-form-schedule select,
.planner-form-schedule textarea,
.planner-form-clean input,
.planner-form-clean select,
.planner-form-clean textarea{
    text-decoration:none;
    transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.planner-form-schedule input:focus,
.planner-form-schedule select:focus,
.planner-form-schedule textarea:focus,
.planner-form-clean input:focus,
.planner-form-clean select:focus,
.planner-form-clean textarea:focus{
    outline:none;
    border-color:#cfd6e3;
    box-shadow:0 0 0 3px rgba(17,24,39,.05);
}

.planner-day-card{
    min-height:112px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.planner-day-card:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 30px rgba(17,24,39,.08);
}

.planner-day-card-past{
    opacity:.42;
}

.planner-day-card-past .planner-day-date{
    opacity:.5;
}

.planner-shooting-open-btn{
    border-color:#eab308;
    color:#92400e;
    background:#fef3c7;
}

.planner-form-mode-tabs{
    margin-bottom:14px;
}

.planner-day-summary{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    min-height:24px;
    font-size:13px;
    font-weight:600;
    color:#6b7280;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.planner-month-grid-scroll{
    scroll-behavior:smooth;
}

.planner-task-list-fancy{
    gap:14px;
}

.planner-task-row-fancy{
    padding:18px;
    border:1px solid #edf1f6;
    border-radius:18px;
    background:linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(249,250,251,1) 100%);
    box-shadow:0 12px 24px rgba(17,24,39,.04);
}

.planner-task-row-fancy + .planner-task-row-fancy{
    margin-top:2px;
}

.planner-task-time-fancy{
    padding:8px 12px;
    border-radius:12px;
    background:#f3f4f6;
    color:#374151;
    font-weight:700;
}

.planner-status-chip,
.planner-type-chip{
    display:inline-flex;
    align-items:center;
    padding:5px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:800;
    letter-spacing:.01em;
    line-height:1.2;
}

.planner-type-label{
    font-size:14px;
    font-weight:700;
    color:#374151;
}

.planner-type-chip{
    background:#f3f4f6;
    color:#374151;
}

.planner-status-chip-planned{
    background:linear-gradient(180deg, #fee2e2 0%, #fecaca 100%);
    color:#991b1b;
    border:1px solid rgba(153, 27, 27, .18);
    box-shadow:0 8px 18px rgba(153, 27, 27, .14);
}

.planner-status-chip-done{
    background:linear-gradient(180deg, #dcfce7 0%, #bbf7d0 100%);
    color:#166534;
    border:1px solid rgba(22, 101, 52, .18);
    box-shadow:0 8px 18px rgba(22, 101, 52, .14);
}

.planner-status-chip-cancelled{
    background:#fff1f2;
    color:#be123c;
}

.planner-status-chip-range{
    background:linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);
    color:#1e3a8a;
    border:1px solid rgba(30, 58, 138, .2);
    box-shadow:0 8px 18px rgba(30, 58, 138, .14);
}

.planner-status-toggle-btn{
    border:none;
    cursor:pointer;
    font:inherit;
}

.planner-task-actions-fancy{
    gap:10px;
    justify-content:flex-start;
}

.planner-task-actions-fancy .btn{
    min-width:118px;
}

.planner-view-link,
.planner-task-meta a,
.page-actions a,
.table-card a{
    text-decoration:none;
}

.planner-view-link:hover,
.planner-task-meta a:hover,
.page-actions a:hover{
    transform:translateY(-1px);
}

.planner-vk-form{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.planner-vk-toggle-row{
    margin-top:4px;
}

.planner-vk-test-box{
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid #e5e7eb;
}

.planner-vk-test-title{
    font-size:14px;
    font-weight:700;
    color:#111827;
}

.planner-vk-test-description{
    margin-top:6px;
    margin-bottom:10px;
    font-size:13px;
    color:#6b7280;
}

@media (max-width: 768px){
    .planner-section-head,
    .photo-project-card-topline{
        align-items:flex-start;
        flex-direction:column;
    }

    .planner-task-actions-fancy .btn{
        min-width:auto;
        width:100%;
    }
}
