/* Shared responsive layer for the public site, authentication and application. */
.public-site .landing-section-title { font-size: 3rem; line-height: 3.5rem; }
.public-site .landing-feature-title { font-size: 1.6rem; line-height: 2.2rem; margin-bottom: 1.1rem; }
.public-site .landing-footer-title { font-size: 1.3rem; line-height: 1.5; margin-bottom: 1rem; }
.public-site .cd-pricing-header .landing-plan-title { font-size: 2.5rem; line-height: 3rem; }
.public-site #features img, .public-site #features1 img { height: auto; }
@media screen and (max-width: 991px) {
    .public-site .head_title .landing-section-title { font-size: 30px; line-height: 1.3; }
}
.home-actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; align-items: center; margin-top: 24px; }
.home-actions .btn { margin-top: 0; }
.mobile-menu-backdrop, .mobile-menu-close, .mobile-row-toggle, .mobile-table-order { display: none; }
@media screen and (max-width: 991px) {
    html { font-size: 100%; }
    body { font-size: 15px; }
    .public-site .home-content h1 { font-size: clamp(28px, 4vw, 40px); line-height: 1.25; }
    .public-site .head_title { margin-bottom: 24px; }
    .public-site .head_title h1 { font-size: 30px; line-height: 1.3; }
    .public-site .heading-content h1 { font-size: 30px; line-height: 1.3; }
    .public-site h2 { font-size: 26px; line-height: 1.3; }
    .public-site .sections { padding: 44px 0; }
    .public-site .home-wrapper { padding: 0; }
    .public-site .home-content { padding: 64px 0; }
    .public-site p, .public-site li { font-size: 16px; line-height: 1.6; }
    .public-site .community-edition p { font-size: 16px; line-height: 1.6; color: #46515c; }
    .public-site .community-edition h4 { font-size: 18px; line-height: 1.4; }
    .public-site .community-edition { padding: 24px 16px; }
    .public-site .home .overlay-fluid-block { background: rgba(0,0,0,.35); }
    .public-site .home-actions .btn { max-width: none; }
    .public-site .home-actions .btn-default { color: #173d2b; background: #fff; border-color: #fff; }
    .public-site .home-content p { font-size: 16px; line-height: 1.6; }
    .public-site .social-contact { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 16px; }
    .public-site .social-contact a { margin: 0; padding: 10px 0; overflow-wrap: anywhere; }
    .public-site .navbar .login a { width: auto !important; margin-left: 0; white-space: normal; }
    .public-site .btn, .public-site .navbar-toggle { min-height: 44px; }
    .public-site .navbar-nav > li > a { padding-top: 14px; padding-bottom: 14px; }
    .public-site .social-icon a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
    .public-site .form-control { min-height: 48px; font-size: 16px; }
    .public-site textarea.form-control { min-height: 140px; }
    .public-site .single_features_right, .public-site .single_service_right { width: 100%; }
    .public-site .single_features_right p, .public-site .single_service_right p { font-size: 16px; line-height: 1.6; }
    .public-site .home-contact p { font-size: 16px; }
    .public-site .cd-pricing-container { width: 100%; }
    .public-site .cd-pricing-list > li { min-width: 0; }
    .public-site .cd-pricing-header h2 { font-size: 20px; }
    .public-site .cd-pricing-body, .public-site .cd-pricing-features { font-size: 15px; }
    .public-site .footer p, .public-site .footer li, .public-site .footer a { font-size: 14px; }
    .public-site .cc-window { font-size: 14px; max-height: 65vh; overflow-y: auto; }
    .public-site .cc-btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
    .auth-page .content-wrapper { padding: 24px 16px; }
    .auth-page .auth-form-transparent { width: 100%; max-width: 440px; padding: 16px !important; }
    .auth-page .auth .brand-logo { margin-bottom: 24px; }
    .auth-page .form-control { min-height: 48px; font-size: 16px !important; }
    .auth-page .btn, .auth-page input[type=submit] { min-height: 48px; font-size: 16px; }
    .auth-page .auth-link { display: inline-flex; align-items: center; min-height: 44px; }
    .auth-page .alert { width: 100%; max-width: none; }

    body.nav-md .container.body, body.nav-sm .container.body { width: 100%; min-width: 0; }
    body.nav-md .main_container .right_col, body.nav-sm .main_container .right_col { margin-left: 0 !important; padding: 16px 12px !important; min-width: 0; }
    body.nav-md .top_nav, body.nav-sm .top_nav { margin-left: 0 !important; width: 100%; }
    body.nav-md footer, body.nav-sm footer { margin-left: 0 !important; padding: 20px 12px; overflow-wrap: anywhere; }
    body.nav-md .main_container > .left_col, body.nav-sm .main_container > .left_col {
        display: block !important; position: fixed !important; inset: 0 auto 0 0 !important; width: min(320px, 90vw) !important;
        height: 100vh; height: 100dvh; z-index: 1060 !important; overflow-y: auto; transform: translateX(-100%); visibility: hidden;
        transition: transform .2s ease, visibility .2s; padding-bottom: 24px;
    }
    body.mobile-menu-open .main_container > .left_col { transform: translateX(0); visibility: visible; }
    body.mobile-menu-open { overflow: hidden; }
    .mobile-menu-backdrop { position: fixed; inset: 0; z-index: 1055; background: rgba(0,0,0,.45); border: 0; padding: 0; }
    body.mobile-menu-open .mobile-menu-backdrop { display: block; }
    .mobile-menu-close { display: block; position: absolute; top: 6px; right: 8px; z-index: 2; width: 44px; height: 44px; border: 0; border-radius: 6px; background: #20344a; color: white; font-size: 28px; }
    body.nav-sm .left_col .nav_title, body.nav-sm .left_col .profile { display: block; width: 100%; }
    body.nav-sm .site_title span { display: inline; }
    body.nav-sm .main_menu .side-menu li a, .main_menu .side-menu > li > a { padding: 14px 16px; text-align: left; font-size: 15px; }
    body.nav-sm .main_menu .side-menu > li > a i { display: inline-block; width: 26px; font-size: 20px; }
    body.nav-sm .main_menu .side-menu li a span.fa { display: inline; }
    body.nav-sm .main_menu .side-menu li ul { position: static; width: auto; left: auto; }
    .main_menu .child_menu > li > a { min-height: 44px; white-space: normal; }
    .sidebar-footer { display: none; }
    .nav_menu > nav { display: flex; align-items: flex-start; min-width: 0; }
    .nav.toggle { flex: 0 0 48px; width: 48px; padding-top: 6px; }
    #menu_toggle { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
    .top_nav .navbar-right { display: flex; justify-content: flex-end; flex-wrap: wrap; flex: 1; width: auto; min-width: 0; margin: 0; }
    .top_nav .navbar-right > li { float: none; position: relative; }
    .top_nav .navbar-right > li:first-child { width: 100%; }
    .top_nav .navbar-right > li > a, .top_nav .navbar-right > li > button { min-height: 44px; display: flex; align-items: center; justify-content: flex-end; }
    .top_nav .user-profile { max-width: 100%; overflow-wrap: anywhere; }
    .top_nav .navbar-right .dropdown-menu { right: 0; left: auto; max-width: calc(100vw - 24px); }
    .page-title { height: auto; min-height: 0; margin-bottom: 16px; }
    .page-title .title_left, .page-title .title_right { width: 100%; float: none; }
    .page-title h3 { font-size: 26px; line-height: 1.25; }
    .x_panel { padding: 12px; min-width: 0; }
    .x_content { padding: 0; min-width: 0; }
    .x_title h2 { white-space: normal; width: auto; max-width: 100%; }
    .right_col .row { min-width: 0; }
    .right_col .btn { min-height: 44px; white-space: normal; overflow-wrap: anywhere; padding: 10px 12px; }
    .right_col .form-control { font-size: 16px !important; min-height: 48px; max-width: 100%; }
    .right_col textarea.form-control { min-height: 120px; }
    .right_col .control-label { font-size: 15px; line-height: 1.5; }
    .right_col input[type=checkbox], .right_col input[type=radio] { width: 20px; height: 20px; vertical-align: middle; }
    .right_col .form-group { margin-bottom: 20px; }
    .right_col img { max-width: 100%; height: auto; }
    .left_col .profile_info h2 { font-size: 13px !important; line-height: 1.5; }
    .right_col h1 { font-size: 28px; line-height: 1.3; }
    .left_col .profile_img { aspect-ratio: 1; object-fit: cover; }
    .right_col .select2-container, .right_col .bootstrap-select { max-width: 100%; }
    .right_col .select2-container { width: 100% !important; }
    .select2-container .select2-selection--single { min-height: 48px; }
    .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 46px; font-size: 16px; }
    .select2-container--default .select2-selection--single .select2-selection__arrow { height: 46px; }
    .bootstrap-select > .dropdown-toggle { min-height: 48px; font-size: 16px; }
    .bootstrap-select .dropdown-menu { max-width: calc(100vw - 48px); }
    .bootstrap-select .dropdown-menu > li > a { min-height: 44px; white-space: normal; }
    .modal-dialog { margin: 12px; width: auto !important; max-width: calc(100vw - 24px); }
    .modal-content { overflow-wrap: anywhere; }
    .modal-body .form-control { min-height: 48px; font-size: 16px; }
    .modal-footer .btn { min-height: 44px; white-space: normal; }
    .modal-header .close { min-width: 44px; min-height: 44px; }
    .nav-tabs, .right_col ul.bar_tabs { display: flex; flex-wrap: wrap; height: auto; margin: 12px 0 16px; padding-left: 0; }
    .right_col ul.bar_tabs > li, .right_col ul.bar_tabs > li.active { float: none; margin: 4px; border: 1px solid #d7dee5; border-radius: 4px; }
    .right_col ul.bar_tabs > li > a { border-radius: 4px; }
    .nav-tabs > li > a { min-height: 44px; white-space: normal; }
    .timeline .tags { position: static; width: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 12px 0; }
    .timeline .tags > div { display: flex; gap: 8px; }
    .timeline .tag { height: auto; padding: 12px; }
    .timeline .tag:after, .timeline h2.title:before { display: none; }
    .timeline .block, .timeline.widget .block { margin-left: 0; border-left: 0; padding: 12px 0; }
    .timeline .block_content { font-size: 15px; line-height: 1.6; }
    .timeline h2.title { font-size: 20px; }
    .fc-toolbar .fc-left, .fc-toolbar .fc-right, .fc-toolbar .fc-center { float: none; display: block; margin: 8px 0; }
    .fc-toolbar .fc-button { min-height: 44px; }
    .fc-toolbar h2 { font-size: 22px; }
    .fc-view-container { overflow-x: auto; }
    .fc-agenda-view { min-width: 580px; }
    .right_col table { font-size: 14px !important; }
    .right_col table.mobile-form-table { width: 100% !important; display: block; }
    .mobile-form-table > tbody, .mobile-form-table > tbody > tr, .mobile-form-table > tbody > tr > td { display: block; width: 100% !important; }
    .mobile-form-table > tbody > tr { margin-bottom: 16px; }
    .mobile-form-table > tbody > tr > td { padding: 6px 0; }
    .right_col iframe, .right_col video, .right_col canvas { max-width: 100%; }
    .right_col pre { white-space: pre-wrap; overflow-wrap: anywhere; }

    .dataTables_wrapper > .row, .table-responsive, .mobile-table-scroll { overflow-x: auto; max-width: 100%; -webkit-overflow-scrolling: touch; }
    .dataTables_wrapper .row > [class*=col-] { min-width: 0 !important; }
    .dataTables_wrapper .dataTables_filter, .dataTables_wrapper .dataTables_length { text-align: left; }
    .dataTables_wrapper .dataTables_filter label { display: block; width: 100%; }
    .dataTables_wrapper .dataTables_info, .dataTables_wrapper .dataTables_info div, .dataTables_wrapper .dataTables_length label div { font-size: 14px !important; }
    .dataTables_wrapper .dataTables_filter input { width: 100%; margin: 8px 0; }
    .mobile-table-order { display: block; margin: 12px 0; font-size: 15px; }
    .mobile-table-order select { margin-top: 8px; width: 100%; }
    .dataTables_wrapper .pagination { display: flex; flex-wrap: wrap; gap: 4px; }
    .dataTables_wrapper .pagination > li > a { min-height: 44px; min-width: 44px; }
    /* A table keeps its desktop semantics; mobile rows become labelled cards. */
    table.mobile-card-table { display: block; width: 100% !important; min-width: 0 !important; border: 0; }
    table.mobile-card-table > thead, table.mobile-card-table > tfoot { display: none; }
    table.mobile-card-table > tbody { display: block; width: 100%; }
    table.mobile-card-table > tbody > tr { display: block; border: 1px solid #d7dee5; border-radius: 8px; padding: 10px; margin: 12px 0; background: #fff !important; }
    table.mobile-card-table > tbody > tr > td { display: grid; grid-template-columns: minmax(90px, 35%) minmax(0, 1fr); gap: 10px; padding: 10px 0 !important; border: 0 !important; text-align: left !important; width: auto !important; white-space: normal !important; overflow-wrap: anywhere; font-size: 15px; line-height: 1.5; }
    table.mobile-card-table > tbody > tr > td::before { content: attr(data-mobile-label); font-weight: 600; color: #46566a; }
    table.mobile-card-table > tbody > tr > td[colspan] { display: block; }
    table.mobile-card-table > tbody > tr > td[colspan]::before { display: none; }
    table.mobile-card-table > tbody > tr:not(.mobile-row-expanded) > td.mobile-secondary { display: none; }
    table.mobile-card-table .mobile-row-toggle { display: block; grid-column: 1 / -1; min-height: 44px; width: 100%; margin: 8px 0 0; border: 1px solid #337ab7; border-radius: 6px; color: #245580; background: #f5f9fd; font-size: 15px; }
    table.mobile-card-table td .btn, table.mobile-card-table td a.btn { min-height: 44px; min-width: 44px; }
    table.mobile-card-table td a { overflow-wrap: anywhere; }
    .mobile-card-table tbody tr.child { display: block; }
    .mobile-card-table tbody tr.child td { display: block; }
}
@media screen and (max-width: 767px) {
    .public-site .home-content { padding: 40px 0; }
    .public-site .sections { padding: 32px 0; }
    .public-site .home-actions { flex-direction: column; }
    .public-site .home-actions .btn { width: 100%; }
    .public-site .margin-top-60 { margin-top: 24px; }
    .public-site .single_features_right h2 { font-size: 26px; }
    .right_col .form-horizontal .control-label { text-align: left; margin-bottom: 6px; }
    .right_col table:not(.mobile-card-table) input, .right_col table:not(.mobile-card-table) select { max-width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .main_container > .left_col { transition: none !important; } }
@media print { .mobile-menu-backdrop, .mobile-menu-close, .mobile-row-toggle { display: none !important; } }

@media screen and (max-width: 991px) {
    .right_col .row > .row { margin-left: 0; margin-right: 0; }
    .mobile-company-list .mobile-company-heading { display: none; }
    .mobile-company-list .list-group-item > .row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; }
    .mobile-company-list .list-group-item > .row > div { width: auto; float: none; padding: 0; overflow-wrap: anywhere; }
    .mobile-company-list .list-group-item > .row > div:first-child { grid-column: 1 / -1; font-size: 16px; font-weight: 600; }
    .mobile-company-list a, .mobile-company-list button { display: inline-flex; flex-direction: column; gap: 6px; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 8px; }
    .mobile-company-list a::after, .mobile-company-list button::after { content: attr(aria-label); font-size: 12px; }
}
@media screen and (max-width: 991px) {
    .right_col .row > [class*="col-"] { min-width: 0; max-width: 100%; }
    .right_col .row > .col-md-12, .right_col .row > .col-sm-12 { width: 100%; }
    .right_col .tile_count { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0; }
    .right_col .tile_count .tile_stats_count { width: auto; float: none; padding: 12px; margin: 0; overflow-wrap: anywhere; }
    .right_col .tile_stats_count .count { font-size: 24px !important; white-space: normal; line-height: 1.4; }
    .right_col .tile_stats_count span { font-size: 14px; white-space: normal; }
}

@media screen and (max-width: 991px) {
    .security-records .security-records-heading { display: none; }
    .security-records .list-group-item { margin: 12px 0; border: 1px solid #d7dee5; border-radius: 8px; padding: 12px; }
    .security-records .list-group-item > .row { margin: 0; }
    .security-records [data-mobile-label] { display: grid; grid-template-columns: minmax(90px, 35%) minmax(0, 1fr); gap: 12px; float: none; width: 100%; padding: 8px 0; text-align: left; overflow-wrap: anywhere; font-size: 15px; }
    .security-records [data-mobile-label]::before { content: attr(data-mobile-label); color: #46566a; font-weight: 600; }
    .security-records button { min-width: 44px; min-height: 44px; font-size: 18px; border-radius: 6px; }
}

@media screen and (max-width: 991px) {
    .todo-list-heading { display: none; }
    .right_col .todo-list-card { border: 1px solid #d7dee5 !important; border-radius: 8px; background: #fff; margin: 12px 0; padding: 12px; }
    .todo-list-card > .todo-list-field { display: grid; grid-template-columns: minmax(90px, 35%) minmax(0, 1fr); gap: 12px; float: none; width: 100%; padding: 8px 0 !important; font-size: 15px !important; text-align: left; overflow-wrap: anywhere; line-height: 1.5; }
    .todo-list-card > .todo-list-field::before { content: attr(data-mobile-label); font-weight: 600; color: #46566a; }
    .todo-list-card > .todo-list-field > button { min-width: 44px; min-height: 44px; border-radius: 6px; }
}
/* Align the three header actions even when the profile wraps to its own row. */
.top_nav .navbar-right > li:not(:first-child) { display: flex; align-items: center; min-height: 58px; }
.top_nav .navbar-right > li:not(:first-child) > button { display: inline-flex; align-items: center; justify-content: center; gap: 4px; min-height: 44px; margin: 0 !important; padding: 0 10px; }
@media screen and (max-width: 991px) {
    .top_nav .navbar-right { align-items: center; }
    .top_nav .navbar-right > li:not(:first-child) { min-height: 44px; }
    .top_nav .navbar-right > li:not(:first-child) > a { height: 44px; padding-top: 0; padding-bottom: 0; }
}

.header-todo-completion { z-index: 1065; }
@media screen and (max-width: 991px) {
    .news-edit-form > .row > div, .news-edit-form .form-group > label, .news-edit-form .form-group > div { float: none; width: 100%; }
    .news-edit-form .form-group > label { display: block; padding-bottom: 8px; text-align: left; line-height: 1.5; }
    .news-edit-form button[type=submit], .personal-link-form button[type=submit] { width: 100%; margin: 16px 0; }
    .news-feed-suggestions { overflow-wrap: anywhere; padding: 16px; }
    .news-feed-suggestions ul { padding-left: 16px; }
    .news-feed-suggestions li { padding: 6px 0; }
    .personal-links > .row > div { width: 100%; }
    .personal-links > .row .btn { width: 100%; margin-bottom: 16px; }
    .personal-link-list > .row:first-child { display: none; }
    .personal-link-list > .row { border: 1px solid #d7dee5 !important; border-radius: 6px; padding: 12px; margin-bottom: 12px; }
    .personal-link-list > .row > div { float: none; width: 100%; overflow-wrap: anywhere; text-align: left; }
    .personal-link-list button { min-width: 44px; min-height: 44px; }
    .personal-link-list button::after { content: ' Törlés'; }
}
@media screen and (max-width: 991px) {
    table.monthly-summary-table.mobile-card-table > tbody > tr > td:last-child { display: block; }
    table.monthly-summary-table.mobile-card-table > tbody > tr > td:last-child::before { display: block; margin-bottom: 8px; }
    .monthly-summary-table a[data-toggle=collapse] { display: flex; align-items: center; min-height: 44px; padding: 10px; border: 1px solid #337ab7; border-radius: 6px; }
    table.monthly-task-table.mobile-card-table > tbody > tr:not(.mobile-row-expanded) > td.mobile-secondary { display: grid; }
    table.monthly-task-table.mobile-card-table .mobile-row-toggle { display: none; }
    table.monthly-task-table.mobile-card-table > tbody > tr > td { grid-template-columns: minmax(80px, 32%) minmax(0, 1fr); }
}
@media screen and (max-width: 991px) {
    .deposit-create-form > .row > div,
    .deposit-create-form .form-group > label,
    .deposit-create-form .form-group > div { float: none; width: 100%; }
    .deposit-create-form .form-group > label { display: block; padding-bottom: 8px; text-align: left; line-height: 1.5; }
    .deposit-create-form button[type=submit] { width: 100%; margin-bottom: 16px; }
}
@media screen and (max-width: 991px) {
    .right_col .row > .kft-template-action:has(.kft-template-add) { width: 100%; }
    .kft-template-add { width: 100%; margin: 12px 0 20px; }
    .kft-template-list > li:first-child { display: none; }
    .kft-template-list > li { margin-bottom: 12px; border: 1px solid #d7dee5; border-radius: 6px; }
    .kft-template-list > li > .row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0; }
    .kft-template-list > li > .row > div { float: none; width: auto; padding: 0; min-width: 0; }
    .kft-template-list > li > .row > div:first-child { grid-column: 1 / -1; overflow-wrap: anywhere; font-size: 16px; padding: 6px 0 12px; }
    .kft-template-list .kft-template-action a,
    .kft-template-list .kft-template-action button { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; min-height: 56px; width: 100%; font-size: 13px; }
    .kft-template-list [aria-label]::after { content: attr(aria-label); }
    .kft-template-list .modal [aria-label]::after { content: none; }
    .kft-template-upload .modal-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
    .kft-template-upload .modal-header::before, .kft-template-upload .modal-header::after { display: none; }
    .kft-template-upload .modal-header .close { flex-shrink: 0; margin: 0; }
}
@media screen and (max-width: 991px) {
    .company-create-form > .row > div,
    .company-create-form .form-group > label,
    .company-create-form .form-group > div { float: none; width: 100%; }
    .company-create-form .form-group > label { display: block; padding-bottom: 8px; text-align: left; line-height: 1.5; }
    .company-create-form .form-group.text-center > label { text-align: center; }
    .company-create-form button[type=submit] { width: 100%; }
}
.template-code-panel > summary { cursor: pointer; padding: 12px 0; font-size: 15px; font-weight: 600; }
.template-code-panel > summary::before { content: '+ '; }
.template-code-panel[open] > summary::before { content: '− '; }
@media screen and (max-width: 991px) {
    .template-create-form .template-editor-layout > div { float: none; width: 100%; padding: 12px; }
    .template-create-form .template-code-options { font-size: 14px; line-height: 1.5; }
    .template-create-form .template-code-options .btn-group { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; width: 100%; margin: 8px 0; }
    .template-create-form .template-code-options .btn { float: none; width: 100% !important; height: auto !important; margin: 0; border-radius: 4px !important; font-size: 14px; }
    .template-create-form .template-editor-column .tox-tinymce { width: 100% !important; max-width: 100%; height: min(700px, 85vh) !important; min-height: 400px; }
    .template-create-form .form-group > label { padding-bottom: 8px; }
    .template-create-form button[type=submit], .template-create-form .form-group .btn { width: 100%; }
}
.header-todo-modal .modal-body > .container { width: 100%; padding: 0; }
@media screen and (max-width: 991px) {
    .todo-create-form > .row > div,
    .todo-create-form .form-group > label,
    .todo-create-form .form-group > div { float: none; width: 100%; }
    .todo-create-form .form-group > label { display: block; padding-bottom: 8px; text-align: left; line-height: 1.5; }
    .todo-create-form .todo-assignee { display: flex; align-items: center; gap: 10px; min-height: 44px; margin: 0; font-weight: normal; cursor: pointer; }
    .todo-create-form .todo-assignee input { flex-shrink: 0; margin: 0; }
    .todo-create-form > center .btn { width: 100%; }
}
@media screen and (max-width: 991px) {
    .header-todo-modal .todo-list-card { border: 1px solid #d7dee5 !important; border-radius: 8px; margin: 12px 0; padding: 12px; }
    .header-todo-modal .modal-content { display: flex; flex-direction: column; max-height: calc(100vh - 24px); max-height: calc(100dvh - 24px); }
    .header-todo-modal .modal-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-shrink: 0; }
    .header-todo-modal .modal-header::before, .header-todo-modal .modal-header::after { display: none; }
    .header-todo-modal .modal-header .close { flex-shrink: 0; margin: 0; }
    .header-todo-modal .modal-body { min-height: 0; overflow-y: auto; }
    .header-todo-modal .modal-footer { flex-shrink: 0; }
    .header-todo-modal .modal-title { font-size: 20px; }
}
