        :root {
            /* Светлая тема */
            --primary-color: #2C5530;
            --primary-light: #4A7C59;
            --secondary-color: #6B7280;
            --background-light: #F9FAFB;
            --surface-white: #FFFFFF;
            --text-primary: #1F2937;
            --text-secondary: #6B7280;
            --accent-warm: #D17A3F;
            --border-light: #E5E7EB;
            --success-color: #10B981;
            --warning-color: #F59E0B;
            --error-color: #EF4444;
            --card-shadow: 0 4px 12px rgba(0,0,0,0.03);
            --hover-shadow: 0 8px 25px rgba(0,0,0,0.08);
            --max-width-content: 1100px;
        }

        .dark-theme {
            /* Темная тема */
            --primary-color: #4A7C59;
            --primary-light: #5D8A6F;
            --secondary-color: #9CA3AF;
            --background-light: #11182790;
            --surface-white: #1F2937;
            --text-primary: #F9FAFB80;
            --text-secondary: #D1D5DB80;
            --accent-warm: #E5985F;
            --border-light: #374151;
            --success-color: #34D399;
            --warning-color: #FBBF24;
            --error-color: #F87171;
            --card-shadow: 0 4px 12px rgba(0,0,0,0.25);
            --hover-shadow: 0 8px 25px rgba(0,0,0,0.35);
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Inter', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            transition: background-color 0.3s, color 0.3s, border-color 0.3s, box-shadow 0.3s;
        }

        body {
            background-color: var(--background-light);
            color: var(--text-primary);
            line-height: 1.6;
            overflow-x: hidden;
            position:relative;
        }
        section {display:flex;justify-content:space-between;}
        h3 span {color:var(--secondary-color);}
        .mobile {display:none;}
        .container {
            display: flex;
        }

        /* Боковое меню */
        .sidebar {
            width: 260px;
            background: var(--surface-white);
            color: var(--text-primary);
            padding: 0;
            transition: all 0.3s ease;
            position: fixed;
            left: 0;
            overflow-x: hidden;
            height:100vh;
            border-right: 1px solid var(--border-light);
            z-index: 101;
            box-shadow:3px 0px 16px #00000020;
        }
        .sidebar .buhgalter {display:none;}
        .sidebar.collapsed {
            width: 60px;
            overflow-y:hidden;
        }

        .logo {
            padding: 15px;
            border-bottom: 1px solid var(--border-light);
            background: var(--surface-white);
            display: flex;
            align-items: center;
            justify-content: space-between;
            transition: padding 0.3s ease;
        }
        .logo img {height: 80px;}

        .sidebar.collapsed .logo {
            justify-content: center;
        }

        .logo-content {
            display: flex;
            align-items: center;
            gap: 12px;
            transition: opacity 0.3s ease;
        }

        .sidebar.collapsed .logo-content {
            opacity: 0;
            width: 0;
            overflow: hidden;
        }

        .logo img {
            height: 36px;
            transform:scale(1.3);
        }

        .logo-text {
            font-size: 1.2em;
            line-height:100%;
            font-weight: 600;
            color: var(--primary-color);
        }

        .toggle-btn {
            background: none;
            border: none;
            color: var(--secondary-color);
            font-size: 1.1em;
            cursor: pointer;
            transition: all 0.3s ease;
            padding: 6px;
            border-radius: 6px;
        }

        .toggle-btn:hover {
            background: var(--background-light);
            color: var(--text-primary);
            transform: rotate(10deg);
        }

        .sidebar.collapsed .toggle-btn {
            transform: rotate(180deg);
        }

        #nav-links {
            list-style: none;
            padding: 20px 0;
            transition: padding 0.3s ease;
        }
        #nav-work-alert {display:none;}
        #nav-warn-alert {display:none;}
        #nav-foot {
            font-size:.8em;
            list-style: none;
            padding: 13vh 30px 20px 60px;
            box-sizing: border-box;
            transition: padding 0.3s ease;
        }
        #nav-foot li {margin-bottom:10px;}
        #nav-links li {
            position: relative;
        }
        #nav-links > li > a {
            padding: 1vh 20px;
            transition: all 0.3s ease;
            display: flex;
            align-items: center;
            color: var(--text-primary);
            text-decoration: none;
            font-size: 0.95em;
            white-space: nowrap;
            border-left: 4px solid transparent;
        }

        .sidebar.collapsed #nav-links > li > a {
            padding: 14px 20px;
            justify-content: center;
        }
        body.dark-theme #nav-links > li > a {
            padding: 14px 20px;
            transition: all 0.3s ease;
            display: flex;
            align-items: center;
            color: #6B7280;
            text-decoration: none;
            font-size: 0.95em;
            white-space: nowrap;
            border-left: 4px solid transparent;
        } 
        #nav-links > li.active > a {
            background: #2980b920;
            border-left: 4px solid var(--error-color);
            color: #111827;
            font-weight:700;
        }
        #nav-links > a svg {
            margin-right:30px;
            fill:#111827;
            stroke:#111827;
        }
        #nav-links > li.active > a svg {
            fill:#111827;

        }

        body.dark-theme #nav-links > li.active > a {
            background: #111827;
            color:#ffffff90;
            border-left: 4px solid #219653;
        }
        body.dark-theme #nav-links > li.active > a svg {
            fill:#ffffff90;
            stroke:#ffffff90;
        }
        #nav-links > li:hover > a {
            background: var(--background-light);
            color: var(--primary-color);

        }
        body.dark-theme #nav-links > li:hover > a {
            background: transparent;
            color: #ffffff;     
        } 
        body.dark-theme #nav-links > li:hover > a  svg{
            stroke: #ffffff;
            fill: #ffffff;

        } 

        .nav-icon {
            margin-right: 12px;
            width: 24px;
            height: 24px;
            text-align: center;
            color: var(--secondary-color);
            transition: margin 0.3s ease, color 0.3s ease, transform 0.3s ease;
        }

        .sidebar.collapsed .nav-icon {
            min-width:32px;
            margin-right: 0;
        }

        #nav-links > li.active .nav-icon,
        #nav-links > li:hover .nav-icon {
            color: var(--primary-color);
            transform: scale(1.1);
        }

        .nav-text {
            font-size:1.2em;
            transition: opacity 0.3s ease;
            font-weight: 500;
        }

        .sidebar.collapsed .nav-text {
            opacity: 0;
            width: 0;
            overflow: hidden;
        }

        /* Подкатегории */
        .submenu {
            display:none;
            list-style: none;
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease;
            background: var(--background-light);
        }

        .submenu.show {
            max-height: 500px;
        }

        .submenu li a {
            padding: 12px 20px 12px 52px;
            display: flex;
            align-items: center;
            color: var(--secondary-color);
            text-decoration: none;
            font-size: 0.9em;
            transition: all 0.3s;
            border-left: 4px solid transparent;
        }

        .sidebar.collapsed .submenu li a {
            padding: 12px 20px;
            justify-content: center;
        }

        .submenu li a:hover {
            opacity:.8;
            background: rgba(0,0,0,0.05);
            color: var(--primary-color);
        }

        .submenu li.active a {
            background: rgba(0,0,0,0.05);
            color: var(--primary-color);
            border-left: 4px solid var(--primary-color);
        }

        .submenu-icon {
            font-size: 0.9em;
            margin-right: 10px;
            width: 16px;
            height: 16px;
        }

        .sidebar.collapsed .submenu-icon {
            margin-right: 0;
        }

        .arrow {
            margin-left: auto;
            transition: transform 0.3s ease;
            font-size: 0.8em;
            color: var(--secondary-color);
        }

        .sidebar.collapsed .arrow {
            display: none;
        }

        #nav-links li.active .arrow {
            transform: rotate(90deg);
            color: var(--primary-color);
        }

        /* Основная область контента */
        .main-content {
            flex: 1;
            order:1;
            position:relative;
            padding:90px 30px 30px 20vw;
            margin:auto;
            background: var(--background-light);
            transition: margin-left 0.3s ease;
        }
        .main-content.collapsed {margin-left:0px;padding:90px 0 30px 0;}
        .main-content.collapsed .header {left:55px;}
        .header {
            position:fixed;z-index:100;
            background:#fff;
            top:0;right:0px;left:260px;
            display: flex;
            justify-content: flex-start;
            align-items: center;
            padding: 8.9px 0 8.9px 30px;
            border-bottom: 1px solid var(--border-light);
            box-shadow:0px 3px 16px #00000020;
        }
        body.dark-theme .header {
            background:#1F2937;
            border-bottom: 1px solid var(--border-light);
        }

        .header h2 {
            color: var(--text-primary);
            font-weight: 600;
        }
        .header div.flex {border-top: 1px solid var(--border-light);margin:10px auto 0 0;padding:10px 0 0px;width:100%;display: flex;justify-content: space-between;align-items:center;}
        .header h3 {
            color: var(--primary-color);
            font-weight: 600;
        }
        .header-controls {
            width:65%;
            max-width:1500px;
            min-width:500px;
            display: flex;
            margin:auto 40px auto 0;
            justify-content:space-between;
            align-items: center;
            gap: 10px;
        }


        .actions {
            display: flex;
            justify-content:space-around;
            align-items:center;
            min-width:220px;
            margin:auto 10px;
        }
        .btn {
            padding: 6px 10px;
            border: none;
            border-radius: 6px;
            cursor: pointer;
            white-space:nowrap;
            font-weight: 500;
            transition: all 0.3s;
        }

        .btn-primary {
            background: #c0392b;
            color: white;
        }

        .btn-primary.small {transform:scale(.8);padding:2px 10px 5px; border-radius:4px;cursor:pointer;box-shadow:none;border:none;}
        div.header .btn-primary {transform:scale(1);padding:5px 20px 8px;}
        body.dark-theme .btn-primary {
            background: #219653;
            color: white;
        }

        .btn-primary:hover {
            background: #c0392b90;
        }
        .btn-disabled {
            background: #7f8c8d;
            color: white;
        }

        .btn-disabled:hover {
            background: #7f8c8d;
        }
        .btn-success {
            background: #27ae60;
            color: white;
        }

        .btn-success:hover {
            background: #219653;
        }
        .btn-warning {
            background: #F59E0B;
            color: #fff;
        }
        .btn-secondary {
            padding:5px 20px 8px;
            background: #95a5a6;
            color: #fff;
        }
        .btn-danger {
            background: #e74c3c;
            color: white;
        }

        .btn-danger:hover {
            background: #c0392b;
        }

        /* Фильтры и поиск */
        .filters {
            display: flex;
            gap: 15px;
            margin-bottom: 25px;
        }

        .search-box {
            flex: 1;
            min-width: 300px;
            position: relative;
        }

        .search-input {
            width: 100%;
            padding: 12px 45px 12px 15px;
            border: 1px solid #dcdfe6;
            border-radius: 6px;
            font-size: 0.95em;
        }

        #search-icon {
            position: absolute;
            right: 15px;
            top: 50%;
            transform: translateY(-50%);
            color: #7f8c8d;
            cursor:pointer;
        }

        .filter-select {
            padding: 12px 15px;
            border: 1px solid #dcdfe6;
            border-radius: 6px;
            background: white;
            min-width: 180px;
        }
        body.dark-theme .filter-select,
        body.dark-theme .search-input {
            background:#7f8c8d40;
            border: 1px solid #dcdfe640;
            color:#ffffff70;
        }
        table.user-tbl {margin:auto;border-spacing:0;width:auto;font-size:.83em;}
        table.user-tbl td {position:relative;padding:0 0;box-sizing:border-box;white-space:nowrap;}
        table.user-tbl td.user-mail {padding:5px;width:100px;}
        table.user-tbl td.user-mail a {visibility:hidden;}
        table.user-tbl td.user-mail svg {width:30px;margin-left:40px;fill:var(--error-color);}
        table.user-tbl td.user-mail b {color:var(--error-color);position:absolute;right:0px;top:-5px;}
        table.user-tbl td.user-comp {color:#6B7280;white-space:nowrap;}
        table.user-tbl td.user-comp a {display:inline-block;}
        table.user-tbl td.user-balance {white-space:nowrap;} 
        table.user-tbl td.user-balance b {color:#219653;font-size:1.2em;margin:0 10px;white-space:nowrap;}
        table.user-tbl td.user-rate {white-space:nowrap;}
        table.user-tbl td.user-rate b {margin:0 10px;}
        table.user-tbl td a {display:block;text-decoration:none;position:relative;}
        table.user-tbl td a.hidden {display:none;transition:all .5s ease 0s;}
        table.user-tbl td:hover a.hidden {display:block;position:absolute;bottom:-12px;left:0;white-space:nowrap;}
        
        /* Стили для подтверждения удаления */
        .confirm-modal {
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0,0,0,0.5);
            z-index: 1100;
            align-items: center;
            justify-content: center;
        }

        .confirm-content {
            background: white;
            border-radius: 10px;
            width: 400px;
            max-width: 90%;
            padding: 25px;
            box-shadow: 0 5px 25px rgba(0,0,0,0.2);
            text-align: center;
        }

        .confirm-buttons {
            display: flex;
            justify-content: center;
            gap: 15px;
            margin-top: 20px;
        }

        .theme-toggle {
            position: relative;
            margin:auto 10px auto auto;
            width: 60px;
            height: 30px;
        }

        .theme-toggle input {
            opacity: 0;
            width: 0;
            height: 0;
        }

        .theme-slider {
            position: absolute;
            cursor: pointer;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background-color: var(--secondary-color);
            transition: .4s;
            border-radius: 34px;
        }

        .theme-slider:before {
            position: absolute;
            content: "";
            height: 22px;
            width: 22px;
            left: 4px;
            bottom: 4px;
            background-color: white;
            transition: .4s;
            border-radius: 50%;
        }

        input:checked + .theme-slider {
            background-color: var(--primary-color);
        }
        input[type=submit]:disabled {background:var(--secondary-color) !important;}
        input:checked + .theme-slider:before {
            transform: translateX(30px);
        }

        .user-info {
            display: flex;
            align-items: center;
            gap: 15px;
            position: relative;
            cursor: pointer;
        }

        .user-avatar {
            width: 55px;
            height: 55px;
            border-radius: 50%;
            background: var(--primary-color);
            box-shadow:var(--card-shadow);
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            font-weight: 600;
            font-size: 0.9em;
            transition: transform 0.3s;
            overflow:hidden;
        }
        .user-avatar img {width:100%;height:100%;}
        .user-info:hover .user-avatar {
            transform: scale(1.05);
        }

        .user-details {
            text-align: right;
        }

        .user-name {
            font-weight: 600;
            color: var(--text-primary);
            display:none;
        }

        .user-role {
            font-size: 0.85em;
            color: var(--secondary-color);
            display:none;
        }

        /* Выпадающее меню администратора */
        .user-dropdown {
            position: absolute;
            top: 100%;
            right: 0;
            width: 200px;
            background: var(--surface-white);
            border-radius: 12px;
            box-shadow: var(--hover-shadow);
            padding: 10px 0;
            margin-top: 10px;
            opacity: 0;
            visibility: hidden;
            transform: translateY(-10px);
            transition: all 0.3s ease;
            z-index: 1000;
            border: 1px solid var(--border-light);
        }

        .user-dropdown.active {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }

        .dropdown-item {
            display: flex;
            align-items: center;
            padding: 6px 20px;
            color: var(--text-primary);
            text-decoration: none;
            transition: all 0.3s;
            white-space: nowrap;
        }

        .dropdown-item:hover {
            background: var(--background-light);
            color: var(--primary-color);
            padding-left: 25px;
        }

        .dropdown-icon {
            width: 18px;
            height: 18px;
            margin-right: 12px;
            color: var(--secondary-color);
        }

        .dropdown-item:hover .dropdown-icon {
            color: var(--primary-color);
            transform: scale(1.1);
        }

        .dropdown-divider {
            height: 1px;
            background: var(--border-light);
            margin: 8px 0;
        }

        .content {
            position:relative;
            width:90%;
            min-width:600px;
            max-width:1000px;
            background: var(--surface-white);
            border-radius: 10px;
            padding: 30px 30px 20px;
            margin:auto auto auto 30px;
            box-shadow: var(--card-shadow);
            border: 1px solid var(--border-light);
        }
        .content div.warn {display:table;width:100%;margin-top:4vh;}
        .content div.warn div.drow {display:table-row;margin:5px auto;border-bottom:solid 1px #7f8c8d;font-size:.85em;}
        .content div.warn div.drow div {display:table-cell;padding:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
        .content div.warn div.drow div:nth-child(1) {width:20%;font-weight:600;}
        .content div.warn div.drow div:nth-child(2) {width:30%;}
        .content div.warn div.drow div:nth-child(3) {width:25%;font-weight:400;}
        .content div.warn div.drow div:nth-child(4) {width:25%;text-align:right;}

        .table-container {
            width:90%;
            max-width:1000px;
            position:relative;
            background: var(--background-light);
            border-radius: 10px;
            padding: 0;
            box-shadow: none;
            margin:20px auto 20px 30px;
        }
        .step-container{
            display:none !important;
            width:90%;
            margin:20px auto 20px 30px;
            padding: 0px;
            background:none;border:none;box-shadow:none;
        }
        .step-container.plot{
            visibility:hidden;
            border-radius:10px;
            display:block !important;
            min-height:450px;
            max-width:1000px;
            padding: 0px;
            background:transparent;
            margin:20px auto 20px 30px;
        }
        .main-content.collapsed .content,
        .main-content.collapsed .table-container {width:90%;margin: 20px auto 50px 13%; }
        .content h2:first-child {position:absolute;left:0;right:0;top:0;padding:5px 20px;font-size:1.2em;background:#9CA3AF80;color:#fff;border-radius: 10px 10px 0 0;}


        /* Таблица техники */
        .units-container {
            display:flex;flex-wrap:wrap;
            background: none;
            border-radius: 10px;
            padding: 0px;
            margin:20px auto 20px 20px;
            /*box-shadow: 0 3px 15px rgba(0,0,0,0.08);*/
            width:90%;
            max-width:1000px;
        }
        img.loader {margin:50px auto 70vh 35%;opacity:.8;}
        .units-container figure{
            position:relative;
            background: var(--surface-white);
            margin:10px;
            padding: 16px 12px 12px;
            width:200px;
            border-radius: 12px;
            text-align: center;
            border: 1px solid var(--border-light);
            transition: all 0.3s ease;
            position: relative;
            box-shadow: var(--card-shadow);
            overflow: hidden;
        }
        .units-container figure div.wrap {display:flex;justify-content:space-between;align-items:center;}
        .units-container figure img.logo-root {width:32px;height:32px;margin:auto;border-bottom:none;cursor:pointer;}
        .units-container figure div.nums {width:42%;display:flex;flex-wrap:wrap;justify-content:space-between;font-size:.6em;margin-top:10px;}
        .units-container figure div.nums p {width:100%;white-space:nowrap;margin:1px;padding:1px 4px;color:#95a5a6;display:flex;justify-content:space-between;border-radius:3px;}
        .units-container figure div.nums p span {font-weight:600;transform:scale(1.2);color:#1a252f90;}
        .units-container figure div.nums p.worked-new {background:#d6eaf8;}
        .units-container figure div.nums p.worked-work {background:#fef5e7;}
        .units-container figure div.nums p.worked-ready {background:#d5f4e6;}

        .units-container figure img.add {opacity:.7;position:absolute;bottom:5px;right:5px;cursor:pointer;width:20px;height:20px;}
        .units-container figure aside {display:flex;flex-wrap:wrap;position:absolute;right:5px;top:20px;width:100px;background:#fff;}
        .units-container figure figcaption {font-size:.9em;text-align:left;}
        .units-container figure i.bg {position:absolute;top:5px;left:5px;display:block;width:15px;height:15px;border-radius:50%;}
        .units-container figure i.edit {opacity:.7;position:absolute;top:0px;right:2px;transform:scale(.8);cursor:pointer;width:20px;height:20px;}
        
        h2.title {display:none;}
        h2.title-form {display:block;}

        /* Таблицы */


        .table-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 20px;
        }

        .table-header h3 {
            color: #2c3e50;
        }

        .stat {
            padding: 1px 5px 1px;
            border-radius: 0px 5px 0px 5px;
            font-size: 0.9em;
            font-weight: 400;
            white-space: nowrap;
            color: #d5f4e6;
            border: groove 2px transparent;
            corner-top-right-shape:bevel;
            corner-bottom-left-shape:bevel;
        }

        .status-available {
            background: #d5f4e6;
            color: #27ae60;
        }

        .status-busy {
            background: #fde8e8;
            color: #e74c3c;
        }

        .status-maintenance {
            background: #fef5e7;
            color: #f39c12;
        }


        body.dark-theme .step-container.plot{
            display:none;
            background:#111827;
        }
        body.dark-theme .step-container.plot div{
            background:#111827;
        }
        .step-container .card-title {margin-left:20px;}
        .form-content {margin-top:10px;}
        .stat-container {border-radius:10px;margin-top:0px;}

        /*
         @media (min-width: 1600px) {
            .main-content {
                display:flex;
                flex-wrap:wrap;
                justify-content:space-between;
                align-items:flex-start;
                align-content:flex-start;
                position:relative;
                box-sizing:border-box;
                width:80%;
                max-width:1800px;
                margin: 0 15% 0 0;
            }
            .content {max-width:1800px;}
            #plot, .plot {width:100%;max-width:1800px;}
            .stat-container {width:30%;min-width:220px;max-width:300px;order:3;margin:0 0 0 40px;}
            .table-container {width:67%;min-width:700px;max-width:1600px;order:2;}
            .step-container {width:100%;order:4;margin-top:5vh;}
            .step-container.plot {max-width:1800px;}
            .form-content {margin:30px auto 40px 15%;}
            .tbl-center {margin:auto;width:80%;}
            .units-container figure{
                margin:10px;
                padding: 16px 12px 12px;
                max-height:125px;
            }
            .stat-card {
                background: var(--surface-white);
                margin:15px;
                padding: 16px 12px 12px;
                width:90%;
                min-width:180px;
                margin:auto;
            }
            .filters {
                flex-wrap:wrap;
                gap: 5px 0px;
                margin: 20px auto 15px;
            }
            .search-input {
                width: 100%;
                padding: 12px 45px 12px 15px;
            }
            .search-box {
                flex: 1;
                min-width: 240px;
                position: relative;
            }
            .filter-select {
                min-width: 240px;
            }
            #stats-flex {margin: 0px auto;flex-wrap:wrap;max-width:180px;order:2;}
            #stats-flex li {margin:5px;width:160px;font-size:1em;white-space:nowrap;}
         }    
*/

        /* Индикатор свернутого меню */
        .collapsed-hint {
            position: absolute;
            bottom: 20px;
            left: 0;
            right: 0;
            text-align: center;
            color: var(--secondary-color);
            font-size: 0.75em;
            padding: 10px;
            opacity: 1;
            transition: opacity 0.3s ease;
        }

        .sidebar.collapsed .collapsed-hint {
            opacity: 0;
        }

        /* Подсказки при наведении на свернутое меню */
        .menu-tooltip {
            position: absolute;
            left: 100%;
            top: 0;
            background: var(--text-primary);
            color: white;
            padding: 8px 12px;
            border-radius: 6px;
            font-size: 0.85em;
            white-space: nowrap;
            z-index: 1001;
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.3s;
            box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        }
        
        #nav-links > li:hover .menu-tooltip {
            opacity: 1;
        }
        
        .submenu-tooltip {
            position: absolute;
            left: 100%;
            top: 0;
            background: var(--text-primary);
            color: white;
            padding: 8px 12px;
            border-radius: 6px;
            font-size: 0.85em;
            white-space: nowrap;
            z-index: 1001;
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.3s;
            box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        }
        
        .submenu li:hover .submenu-tooltip {
            opacity: 1;
        }

        /* НОВЫЕ СТИЛИ ДЛЯ ОБНОВЛЕННОГО ДИЗАЙНА */

        /* Приветственная секция */
        .welcome-section {
            text-align: center;
            margin-bottom: 20px;
            padding: 10px;
        }

        .welcome-section h1 {
            font-size: 1.6em;
            font-weight: 600;
            color: var(--text-primary);
            margin-bottom: 10px;
        }

        .welcome-subtitle {
            font-size: .9em;
            color: var(--text-secondary);
            max-width: 800px;
            margin: 0 auto;
        }


        /* Магазин модулей */
        .modules-container {
            padding: 0px;
            margin-top: 30px;
            max-width:1000px;
        }

        .modules-grid {
            display: flex;
            justify-content: space-around;
            margin-top: 20px;
        }

        .module-card {
            width:30%;
            min-width:280px;
            border: 1px solid #e0e0e0;
            border-radius: 10px;
            overflow: hidden;
            transition: all 0.3s;
            background: white;
            position: relative;
            margin-left:15px;
        }
        body.dark-theme .module-card {border: 1px solid #e0e0e090;background: transparent;}
        #rates aside.date {display:flex;justify-content:space-around;margin:0;padding:0;}
        #rates aside.date i {color:#6B7280;font-size:.7em;font-style:normal;}
        .module-card .active-rate {display:none;}
        .module-card.active .module-footer {display:none;}
        .module-card.active .active-rate {display:block;}
        .module-card:hover {
            box-shadow: 0 5px 15px rgba(0,0,0,0.1);
        }

        .module-card.premium {
            border: 2px solid #f39c12;
        }

        .module-card.pro {
            border: 2px solid #9b59b6;
        }

        .module-card.business {
            border: 2px solid #3498db;
        }

        .module-header {
            padding: 10px 10px 4px 10px;
            background: #34495e;
            color: white;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        .module-card.active .module-header {
            background: #219653;
            color: white;
        }
        .module-header h3 {
            text-transform: uppercase;
            font-size: 1.2em;
            font-weight: 600;
        }

        .module-badge {
            padding: 5px 10px;
            border-radius: 20px;
            font-size: 0.8em;
            font-weight: 600;
        }

        .badge-premium {
            background: #f39c12;
        }

        .badge-pro {
            background: #9b59b6;
        }

        .badge-business {
            background: #3498db;
        }

        .module-price {
            color:#219653;
            font-size: 1.3em;
            font-weight: 700;
            margin-top: 10px;
        }

        .module-body {
            padding: 20px;
        }

        .module-features {
            list-style: none;
            margin: 15px 0;
        }

        .module-features li {
            padding: 5px 0;
            border-bottom: 1px solid #f0f0f0;
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 5px;
            font-size:.9em;
        }

        .module-features li:last-child {
            border-bottom: none;
        }

        .feature-included {
            position:relative;
            color: #27ae60;
            text-align:center;
        }
        .active-rate .feature-included {
            font-size:1.05em;
            padding-top:0;
            white-space:nowrap;
        }
        .feature-excluded {
            color: #e74c3c;
        }

        .module-limitation {
            background: #f8f9fa;
            padding: 10px 15px;
            border-radius: 6px;
            margin-top: 15px;
            font-size: 0.9em;
            color: #7f8c8d;
        }

        .module-footer {
            padding: 15px 20px 25px;
            border-top: 1px solid #e0e0e0;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        .module-footer .btn-primary {background:#219653;width:80%;}
        .module-status {
            padding: 5px 10px;
            border-radius: 20px;
            font-size: 0.9em;
            font-weight: 800;
        }

        .status-active {
            background: #d5f4e6;
            color: #27ae60;
        }

        .status-inactive {
            background: #fde8e8;
            color: #e74c3c;
        }

        .status-trial {
            background: #fef5e7;
            color: #f39c12;
        }




        /* Обновленная сетка статистики */
        .stats-grid {
            display: flex;
            flex-wrap:wrap;
            justify-content:space-around;
        }
        
        .stat-card {
            position: relative;
            background: var(--surface-white);
            margin:15px;
            padding: 16px 12px 12px;
            width:28%;
            min-width:210px;
            border-radius: 12px;
            text-align: center;
            border: 1px solid var(--border-light);
            transition: all 0.3s ease;
            box-shadow: var(--card-shadow);
            overflow: hidden;
            cursor:pointer;
        }
        .stat-card.total {
            border-top-color: #3498db;
        }

        .stat-card.active {
            border-top-color: #27ae60;
        }

        .stat-card.archived {
            border-top-color: #95a5a6;
        }

        .stat-card.expired {
            border-top-color: #e74c3c;
        }

        .stat-card.fines {
            border-top-color: #f39c12;
        }

        .stat-card.passes {
            border-top-color: #9b59b6;
        }

        .stat-card.tolls {
            border-top-color: #1abc9c;
        }

        .stat-card:hover {
            transform: translateY(-5px);
            box-shadow: var(--hover-shadow);
        }

        
        .stat-card:hover::before {
            transform: scaleX(1);
        }
        
        .stat-icon {
            width: 55px;
            margin: 10px auto 6px;
            padding:8px 10px;
            fill:#6B7280;
            background: var(--background-light);
            border-radius: 8px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.2em;
            transition: all 0.3s ease;
        }
        
        .stat-card:hover .stat-icon {
            background: #10B981;
            fill:#fff;
            transform: rotate(10deg) scale(1.1);
        }
        
        .stat-value {
            font-size: 2.2em;
            font-weight: 700;
            color: #1a252f;
            margin-bottom: 4px;
        }
        body.dark-theme .stat-value {color: var(--primary-light); }     
        .stat-label {
            color: var(--text-secondary);
            font-size: 1em;font-weight:600;
            margin-bottom: 8px;
            text-transform: lowercase;
        }
        
        .stat-trend {
            font-size: 0.8em;
            padding: 2px 8px;
            border-radius: 12px;
            display: inline-block;
        }
        
        .positive {
            background: rgba(16, 185, 129, 0.1);
            color: var(--success-color);
        }
        
        .stat-card .stat-value.zero {opacity:.5;}  
        .stat-card .warn-icon {display:none;position:absolute;right:5px;top:5px;width:25px;} 
        .stat-card.negative .warn-icon {display:block;}

        /* Заголовки секций */
        .section-header {
            margin: 20px 0 10px;
            padding-bottom: 12px;
            border-bottom: 1px solid var(--border-light);
        }

        .section-header h3 {
            margin-bottom: 4px;
            font-weight: 600;
            color: var(--text-primary);
        }

        .section-header p {
            color: var(--text-secondary);
            font-size: 0.95em;
        }
        #warning-activate {display:none;background:#c0392b;color:#fff;text-align:center;width:95%;margin:0 auto 20px;padding:10px;border-radius:12px;font-size:1.1em;cursor:pointer;}
        /* Обновленные кнопки быстрых действий */
        .quick-actions {
            display: grid;
            grid-template-columns: 31% 31% 31%;
            gap: 16px;
            margin: 24px auto;
            max-width:900px;
        }
        .quick-actions a:link, 
        .quick-actions a:visited {color:#1a252f;}
        .quick-actions a:hover {text-decoration:none;}
        .action-btn {
            display: flex;
            flex-direction: column;
            align-items: center;
            text-align: center;
            padding: 20px 16px;
            border-radius: 10px;
            border: 1px solid var(--border-light);
            background: var(--surface-white);
            cursor: pointer;
            transition: all 0.3s ease;
            min-height: 100px;
            justify-content: center;
            text-decoration: none;
            position: relative;
            overflow: hidden;
        }
        .action-btn svg {fill:#1F293780;width:40px;}
        body.dark-theme .action-btn svg {fill:#6B7280;} 

        .action-btn::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: #3498db;
            opacity: 0;
            transition: opacity 0.3s ease;
            z-index: 0;
        }
        
        .action-btn:hover {
            border-color: #219653;
            transform: translateY(-3px);
            box-shadow: var(--hover-shadow);
        }
        
        .action-btn:hover::before {
            opacity: 0.05;
        }
        
        .action-btn i {
            font-size: 1.6em;
            margin-bottom: 12px;
            color: #219653;
            position: relative;
            z-index: 1;
            transition: all 0.3s ease;
        }
        
        .action-btn:hover i {
            transform: scale(1.2);
        }
        
        .action-btn span {
            color: var(--text-secondary);
            font-weight: 500;
            margin-bottom: 4px;
            position: relative;
            z-index: 1;
        }
        
        .action-btn small {
            color: var(--text-secondary);
            font-size: 0.8em;
            position: relative;
            z-index: 1;
        }

        /* Список задач */
        .task-list {
            list-style: none;
            margin-top: 20px;
        }

        .task-item {
            padding: 20px;
            border-bottom: 1px solid var(--border-light);
            display: flex;
            align-items: center;
            transition: all 0.3s;
        }

        .task-item:hover {
            background: var(--background-light);
            transform: translateX(5px);
        }

        .task-item:last-child {
            border-bottom: none;
        }

        .task-icon {
            width: 40px;
            height: 40px;
            border-radius: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-right: 16px;
            color: white;
            font-size: 1em;
            transition: transform 0.3s;
        }

        .task-item:hover .task-icon {
            transform: scale(1.1) rotate(5deg);
        }

        .task-info {
            flex: 1;
        }

        .task-title {
            font-weight: 500;
            color: var(--text-primary);
            margin-bottom: 4px;
        }

        .task-desc {
            font-size: 0.85em;
            color: var(--text-secondary);
        }

        .task-meta {
            display: flex;
            gap: 12px;
            margin-top: 6px;
        }

        .task-meta-item {
            font-size: 0.8em;
            color: var(--text-secondary);
            display: flex;
            align-items: center;
            gap: 4px;
        }

        .task-status {
            font-size: 0.8em;
            padding: 6px 12px;
            border-radius: 20px;
            font-weight: 500;
            transition: all 0.3s;
        }

        .task-item:hover .task-status {
            transform: scale(1.05);
        }

        .status-pending {
            background: rgba(245, 158, 11, 0.1);
            color: var(--warning-color);
        }

        .status-inprogress {
            background: rgba(44, 85, 48, 0.1);
            color: var(--primary-color);
        }

        .status-completed {
            background: rgba(16, 185, 129, 0.1);
            color: var(--success-color);
        }



        /* Дополнительные стили для улучшения читаемости */
        .content h3 {
            color: var(--text-primary);
            margin-bottom: 16px;
            font-weight: 600;
        }

        .content p {
            line-height: 1.6;
            margin-bottom: 20px;
            color: var(--text-secondary);
        }

        .content ul {
            margin-left: 20px;
            margin-bottom: 20px;
        }

        .content li {
            margin-bottom: 8px;
            line-height: 1.5;
            color: var(--text-secondary);
        }

        /* Двухколоночный макет */
        .two-column-layout {
            display: grid;
            grid-template-columns: 2fr 1fr;
            gap: 30px;
            margin-top: 30px;
        }

        @media (max-width: 1024px) {
            .two-column-layout {
                grid-template-columns: 1fr;
            }
        }

        /* Карточки */
        .card {
            background: var(--surface-white);
            border-radius: 12px;
            padding: 24px;
            box-shadow: var(--card-shadow);
            border: 1px solid var(--border-light);
            margin-bottom: 24px;
            transition: all 0.3s ease;
        }

        .card:hover {
            box-shadow: var(--hover-shadow);
        }

        .card-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 20px;
        }

        .card-title {
            font-weight: 600;
            color: var(--text-primary);
            font-size: 1.1em;
        }

        .card-actions {
            display: flex;
            gap: 8px;
        }

        .card-action-btn {
            background: none;
            border: none;
            color: var(--text-secondary);
            cursor: pointer;
            padding: 6px;
            border-radius: 6px;
            transition: all 0.3s;
        }

        .card-action-btn:hover {
            background: var(--background-light);
            color: var(--text-primary);
            transform: rotate(15deg);
        }

        /* Анимация появления элементов */
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(20px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .fade-in {
            animation: fadeInUp 0.5s ease forwards;
        }

        .delay-1 { animation-delay: 0.1s; }
        .delay-2 { animation-delay: 0.2s; }
        .delay-3 { animation-delay: 0.3s; }
        .delay-4 { animation-delay: 0.4s; }
        .delay-5 { animation-delay: 0.5s; }

.my-20 {margin:20px 0;}

ul.messages {z-index:1000;position:fixed;bottom:3vh;right:30px;max-width:300px;background:#3498db;border-radius:10px;padding:10px 20px;}
ul.messages li {color:#fff;list-style-type:none;}
.error, .errors, ul.messages.error, ul.messages.errors {background:var(--error-color);}
.errorlist {margin:20px auto;width:auto;font-size:1.1em;background:var(--error-color);}
.errorlist li {color:#fff;padding:10px;}
.errorlist li .errorlist {display:inline-block;margin: 0 0 0 40px;}
.thumbs {display:flex;flex-wrap:wrap;padding:20px;border-radius:5px;background:var(--background-light);}
a:link,
a:visited {color:var(--primary-light);text-decoration:none;font-weight:700;}
a:hover {color:#2C553080;}
a.btn:link,
a.btn:visited {color:#fff;text-decoration:none;}
a.btn:hover {text-decoration:none;}
a.thumb {width:100px;height:90px;display:block;margin:5px;line-height:95%;overflow:hidden;white-space:nowrap;text-overflow: ellipsis;}
a.thumb:link,
a.thumb:visited {font-size:.85em;}
a.thumb img {width:100%;height:70px;object-fit:cover;}
a.mail-confirm {color:var(--error-color);position:relative;font-size:1em;font-weight:500;}

#unit-form {max-width:var(--max-width-content);display:flex;justify-content:space-around;flex-wrap:wrap;margin:40px auto 40px 0;}  
#unit-form blockquote {border-radius:10px;background:#1abc9c20;color:#2C553090;font-size:.9em;width:90%;padding:10px;margin:0px auto 30px;box-shadow:var(--card-shadow);box-sizing: border-box;}
#unit-form blockquote img.help {opacity:.9;margin:10px 0;}
#unit-form blockquote span {font-weight:800;color:#c0392b;}
#unit-form input,
#unit-form select,
#unit-form textarea {min-width:30px;width:65%;box-sizing:border-box;padding:10px; border:1px solid #dcdfe6; border-radius:6px; font-size:0.95em;}  
#unit-form textarea {max-height:180px;}
#unit-form input[type=button] {margin:10px auto;background:var(--text-secondary);color:#fff;width:100%;max-width:250px;margin:30px auto 0;cursor:pointer;}
#unit-form input[type=button]:hover {background:var(--primary-light);}
#unit-form input[type=submit] {margin:10px auto;background:var(--success-color);color:#fff;width:100%;max-width:250px;margin:30px auto 0;cursor:pointer;}
#unit-form input[type=submit]:hover {background:var(--primary-light);}
#unit-form select#id_user {display:none;}
#unit-form li select {width:100%;}
#unit-form select.select-multi {height:200px;width:100%;max-width:500px;min-width:320px;margin:auto;}
#unit-form ul.checks {display:block;width:100%;margin:30px auto 30px 0;}
#unit-form ul.checks li {display:flex;flex-wrap:nowrap;align-items:center;}
#unit-form ul.checks li label {margin-left:0px;}
#unit-form h4 {margin:30px 0 10px 0;}
#unit-form h2 {width:95%;color:var(--secondary-color);white-space:nowrap;border-bottom:solid 1px var(--secondary-color);margin:40px auto 20px;} 
#unit-form div {width:45%;}
#unit-form radioset {display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;}
#unit-form radioset div {display:flex;justify-content:flex-start;align-items:center;max-width:120px;}
#unit-form radioset input {width:10px;height:10px;}
#unit-form fieldset {position:relative;width:100%;border:0;display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;}  
#unit-form fieldset.file {flex-wrap:wrap;}
#unit-form fieldset.file input {margin-top:20px;width:100%;}
#unit-form fieldset label {cursor:pointer;line-height:95%;min-width:60px;display:flex;justify-content:space-between;} 
#unit-form fieldset.inline {margin:4vh auto;}
#unit-form fieldset.inline label {width:70%;}
#unit-form fieldset input[type=checkbox] {width:20px;min-width:none;}
#unit-form fieldset label b.error {position:absolute;left:-15px;top:15px;background:transparent;color:var(--error-color);font-size:1.1em;}
#unit-form fieldset a.sub-link {position:absolute;display:flex;align-items:center;left:-5px;bottom:-5px;font-size:.7em;}
#unit-form fieldset a.sub-link img {margin:0 5px -2px 5px;padding:0;width:8px;height:8px;}
#unit-form fieldset a.sub-link img:hover {transform:none;}
#unit-form fieldset i.mail-confirm {color:var(--success-color);font-style:normal;}
#unit-form fieldset a {margin:auto;}
#unit-form fieldset.w-100 {width:95%;}
#unit-form fieldset.checks aside {display:none;position:absolute;bottom:50px;left:0px;line-height:100%;font-size:.9em;background:#219653;color:#fff;box-shadow:var(--card-shadow);padding:5px;border-radius:5px;}
#unit-form fieldset.checks:hover aside {display:block;}
#unit-form fieldset.radio div {display:flex;align-items:center;}
#unit-form fieldset.radio div div {white-space:nowrap;}
#unit-form fieldset img {width:70px;height:54px;object-fit:cover;transform:scale(1.2);margin:30px 30px 0 20px;transition:all 1s ease 0s;}
#unit-form fieldset img:hover {transform:scale(3);transition:none;}
#unit-form fieldset div.error {color:var(--error-color);background:none;display:none;position:absolute;left:0;bottom:-17px;font-size:.7em;white-space:nowrap;}
#unit-form fieldset div.success {color:var(--success-color);display:none;position:absolute;left:0;bottom:-17px;font-size:.7em;white-space:nowrap;}
#unit-form fieldset div.info {z-index:10;position:absolute;left:0;top:30px;width:280px;display:none;background:#e8f3ff;box-shadow:var(--card-shadow);padding:10px;border-radius:5px;font-size:.85em;}
#unit-form fieldset div.info h4 {margin-top:5px;position:relative;}
#unit-form fieldset div.info h4 span {position:absolute;right:0;top:-5px;color:var(--error-color);font-weight:800;cursor:pointer;}
#unit-form fieldset aside.info {position:absolute;left:0px;bottom:-16px;font-size:.8em;color:#6B7280;}

#unit-form div.mail {width:40%;}
#unit-form div.mail p {line-height:90%;font-size:.9em;text-align:center;}
#unit-form div.mail fieldset {flex-wrap:wrap;max-height:600px;overflow-y:auto;}
#unit-form div.mail fieldset textarea {width:90%;min-width:200px;;margin:auto;}
#unit-form div.mail fieldset #send-mail {width:90% !important;margin:auto;}
#unit-form div.mails {width:55%;margin-right:4%;}
#unit-form div.mails fieldset {flex-wrap:wrap;padding-right:20px;max-height:72vh;overflow-y:hidden;overflow-y:auto;}
#unit-form div.mails fieldset aside {width:100%;margin-bottom:50px;padding:20px;background:#7f8c8d10;}
#unit-form div.mails fieldset aside h4 {position:relative;margin-top:0;line-height:100%;font-weight:600;font-size:.9em;display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:flex-end;}
#unit-form div.mails fieldset aside h4 a {position:absolute;right:10px;top:0px;font-weight:400;font-size:.9em;color:#fff;background:#10B981;padding:3px 5px;border-radius:3px;margin-left:20px;}
#unit-form div.mails fieldset aside h4 span {font-size:.8em;color:#6B7280;display:block;width:80%;}
#unit-form div.mails fieldset aside p {position:relative;border:solid 1px #7f8c8d60;width:80%;line-height:97%;font-size:.9em;padding:5px 5px 20px 5px;border-radius:5px;}
#unit-form div.mails fieldset aside p.text {margin:auto auto 10px 0;}
#unit-form div.mails fieldset aside p.answer {margin:auto 0 10px auto;background:#9CA3AF30;cursor:pointer;}
#unit-form div.mails fieldset aside p date {font-size:.65em;font-weight:600;display:block;text-align:right;margin-top:15px;}
#unit-form div.mails fieldset aside p:nth-child(1) date {display:none;}
#unit-form div.mails fieldset aside p svg {display:none;position:absolute;left:10px;bottom:5px;width:12px;fill:#7f8c8d;} 
#unit-form div.mails fieldset aside p.answer i {position:absolute;left:10px;bottom:5px;font-size:.75em;color:#c0392b;}
#unit-form div.mails fieldset aside p.received svg {display:block;fill:#2980b9;}
#unit-form div.mails fieldset aside p.received i {display:none;}
#unit-form div.mails a.all-mails {display:block;font-size:.9em;text-align:center;color:#c0392b;margin:50px auto 20px;}


#unit-form a {white-space:nowrap;}
#unit-form div#pay-href {display:none;}
#unit-form div#deal-href {display:none;margin:auto;}
#unit-form div.buttons {width:90%;margin:auto;display:flex;justify-content:space-between;align-items:center;}
#unit-form ul {margin:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-around;}
#unit-form li {width:40%;list-style-type:none;display:flex;flex-wrap:wrap;margin-bottom:15px;}
#unit-form li input {width:100%;}
#unit-form li label {white-space:nowrap;width:100%;}
#unit-form div.errors {background:none;color:var(--error-color);width:100%;text-align:center;}
#unit-form img.user-foto {width:160px;height:135px;object-fit:cover;margin:40px auto 0;}
#unit-form input.storage {color:#95a5a6;}
#unit-form div#id_checks {width:65%;display:flex;flex-wrap:wrap;}
#unit-form div#id_checks div {width:100%;display:flex;margin-bottom:5px;}
#unit-form div#id_checks label {white-space:nowrap;display:flex;justify-content:space-between;}
#unit-form div#id_checks span {color:#219653;font-weight:600;font-size:.85em;margin:0 0 0 7px;}
#unit-form div#id_checks input {max-width:18px;}
#unit-form aside.leasing {display:flex;flex-wrap:wrap;justify-content:center;align-items:center;width:100%;max-height:250px;overflow:hidden;overflow-y:auto;}
#unit-form aside.leasing span {padding:3px 5px;margin:3px;border:solid 1px #ccc;font-size:.9em;}
#unit-form aside.leasing span.ready {background:#219653;color:#fff;}

#stat-confirm {visibility:hidden;display:flex;justify-content:center;}
#oper-pin {flex-wrap:wrap;}
#oper-pin span {margin:auto;font-weight:600;font-size:1.1em;transform:scale(1.5);}
#oper-pin i {width:100%;margin-top:10px;font-size:.85em;}


.tbl-types {width:80%;margin:20px auto;}
.tbl-types tr {border-bottom:solid 1px #6B7280;}
.tbl-types .title {width:60%;}
.tbl-types .redact a:link,
.tbl-types .redact a:visited {color:#219653;font-size:.7em;}
.tbl-types .delete a:link,
.tbl-types .delete a:visited {color:#c0392b;font-size:.7em;}

#checks-result {width:100% !important;min-height:220px;display:flex;align-items:center;justify-content:flex-start;overflow:hidden;}
#checks-result .error {width:100%;background:none;color:var(--error-color);white-space:nowrap;}
#checks-result .success {width:100%;background:none;color:var(--success-color);white-space:nowrap;}
#checks-result aside {width:200px;margin-right:30px;}
#checks-result aside h4 {white-space:nowrap;overflow:hidden;text-overflow: ellipsis;border-bottom:solid 1px #95a5a6;}
#checks-result aside p {white-space:nowrap;overflow:hidden;text-overflow: ellipsis;margin:0;padding:0;margin-bottom:5px;}
#checks-result aside div {line-height:100%;font-size:.9em;font-weight:600;margin:20px auto;}


body.dark-theme #unit-form input,
body.dark-theme #unit-form select,
body.dark-theme #unit-form textarea {color:#ffffff90;border:1px solid #dcdfe630; background:#7f8c8d10;}  
body.dark-theme #unit-form label {color:#ffffff80;}

#company-info p,
#bank-info p {display:inline-block;white-space:wrap;}
button {cursor:pointer;}
button#save-units {padding:4px 10px;border-radius:4px;margin:5px 0;box-shadow:none;border:none;cursor:pointer;}

label {min-width:40px;max-width:130px;cursor:pointer;font-size:.9em;}


#free-units {padding:0 20px;}
#free-units h3 {margin-bottom:20px;}
#free-units aside {display:flex;flex-wrap:wrap;justify-content:space-around;}
#free-units aside div.unit-wrap {position:relative;width:160px;display:flex;flex-wrap:wrap;margin:10px;box-sizing:border-box;overflow:hidden;border:solid 1px #9CA3AF60;border-radius:5px;box-shadow: var(--card-shadow);}
#free-units aside div.unit-wrap img {width:100%;max-height:85px;object-fit:cover;}
#free-units aside div.unit-wrap a {width:100%;}
#free-units aside div.unit-wrap label {width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.85em;line-height:110%;}
#free-units aside div.unit-wrap fieldset {min-width:150px;display:flex;justify-content:space-between;border:none;padding: 5px 5px 8px;}
#free-units aside div.unit-wrap fieldset input[type=number] {width:70px;text-align: center;}
#free-units aside div.unit-wrap.disabled fieldset,
#free-units aside div.unit-wrap.disabled img {opacity:.5;}
#free-units aside div.unit-wrap.disabled div.info {z-index:2;position:absolute;top:0px;left:0px;padding:2px 5px;background:#7f8c8d;color:#fff;}

td.unit-multi div {display:flex;align-items:center;overflow-x:auto;padding:20px;background:#f2f2f2;}
td.unit-multi div aside {display:none;width:90px;margin-right:15px;}
td.unit-multi div aside.active {display:block;}
td.unit-multi div aside.active a {width:100%;display:flex;align-items:flex-start;flex-wrap:wrap;overflow:hidden;}
td.unit-multi div aside img {width:100%;height:60px;object-fit:cover;border-radius:4px;margin-right:8px;}
td.unit-multi div aside input[type=checkbox] {margin:4px 5px -4px 0;}
td.unit-multi div aside label {font-size:.85em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
td.unit-multi div aside span {margin:auto;}

div.unit-checkbox {width:75% !important;min-width:240px;max-width:450px;}
div.unit-checkbox label {min-width:60px;max-width:80px;}
div.unit-checkbox input {min-width:20px;margin-right:5px;}
div.unit-checkbox div {width:100%;min-width:240px;display:flex;justify-content:space-around;flex-wrap:wrap;padding:15px 0px;}
div.unit-checkbox div div {width:auto;min-width:60px !important;max-width:80px;margin-bottom:10px;}
div.unit-checkbox div div label {font-size:.75em;justify-content:flex-start !important;}
#id_license_categories div,
#id_tractor_categories div {width:auto;min-width:75px;max-width:80px;}





#dates {display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;padding-bottom:20px;max-height:73vh;overflow:hidden;overflow-y:auto;}
#dates aside {width:14%;border-radius:1px;border-right:solid 1px var(--secondary-color);border-bottom:solid 1px var(--secondary-color);margin:0px;padding-bottom:10px;cursor:pointer;} 
#dates aside date {display:flex;justify-content:space-between;width:90%;margin:0px auto 10px;font-size:1.3em;}
#dates aside date span:first-child {color:var(--secondary-color);font-size:.8em;}
#dates aside p {display:flex;justify-content:space-between;width:90%;line-height:120%;margin:0 auto;font-size:.65em;}
#dates aside p span {font-size:1.1em;white-space:nowrap;}
#dates aside.past {opacity:.6;}
#dates aside.future {background:#27ae6030;color: #1a252f;}
#dates aside.future date span:first-child {color:#1a252f;}
#dates aside.future date span:last-child {color:#219653;}
#dates aside.future.active {opacity:1;background:var(--success-color);}
#dates aside.active {opacity:1;background:#34D39990;color: white;}
#dates aside.future.active date span:last-child {color:#fff;}
#dates aside:hover {opacity:1;}


#dates-nav {background:var(--text-secondary);display:flex;justify-content:space-between;align-items:center;width:100%;margin:0;padding:5px 20px 10px;}
#dates-nav fieldset {border:0;color:#fff;font-size:1.3em;}
#dates-nav table td {vertical-align:middle;padding:5px 10px;color:#fff;}
#dates-nav table#tbl-naw td {font-size:1.3em;}
#dates-nav table#tbl-naw img {cursor:pointer;margin-bottom:-8px;}

#dates-form {display:none;z-index:10;position:absolute;opacity:1;padding:20px;min-height:280px;background:white;border-radius:5px;box-shadow: 0 5px 25px rgba(0,0,0,0.2);animation: modalAppear 0.3s;}
#dates-form.serv {display:block;position:relative;}
#books-form {display:none;z-index:10;position:absolute;opacity:1;padding:20px;min-height:280px;background:white;border-radius:5px;box-shadow: 0 5px 25px rgba(0,0,0,0.2);animation: modalAppear 0.3s;}

div.calendar form h4 {border-bottom:solid 1px var(--secondary-color);margin-bottom:20px;}
div.calendar form h4 span {display:block;font-size:.85em;color:var(--secondary-color);}
div.calendar form label {white-space:nowrap;}
div.calendar form fieldset {border:0;display:flex;justify-content:space-between;width:90%;margin:10px auto 5px;min-width:240px;}
div.calendar form fieldset.wrap {flex-wrap:wrap;}
div.calendar form fieldset select {width:130px;}
div.calendar form fieldset input {width:80px;}
div.calendar form fieldset div.error {display:none;width:80%;color:var(--error-color);background:none;font-size:.75em;margin-top:-8px;}
div.calendar form input,
div.calendar form select {min-width:40px;width:100%;box-sizing:border-box;padding:3px 5px; border:1px solid #dcdfe6; border-radius:6px; font-size:0.95em;}  
div.calendar form input[type=button] {margin:10px auto;background:var(--text-secondary);color:#fff;width:90%;margin:30px auto 0;cursor:pointer;}
div.calendar form input[type=button]:hover {background:var(--primary-light);}
div.calendar form input[type=submit] {margin:10px auto;background:var(--success-color);color:#fff;width:90%;margin:30px auto 0;cursor:pointer;}
div.calendar form input[type=submit]:hover {background:var(--primary-light);}
div.calendar form div.buttons {display:flex;}
div.calendar .tbl-colors {width:80%;}
div.calendar .tbl-colors th {width:30px;}
div.calendar .tbl-colors th div {width:20px;height:20px;}
div.calendar .tbl-colors td {padding-right:60px;white-space:nowrap;}
div.calendar .tbl-colors .btn-future {background:#27ae6030}

#tbl-worked td {font-size:.7em;}
#tbl-worked span {color:#ffffff70;font-size:1.5em;margin-right:0px;}

#worked-price span {color:var(--success-color);font-size:1.6em;font-weight:700;}


#step-list {display:flex;flex-wrap:wrap;justify-content:flex-start;padding:0;margin:0;box-shadow:none;}
#step-list li {list-style-type:none;transform:scale(1);font-size:.9em;padding:5px 10px 0px;margin:3px;box-sizing:border-box;border:solid 1px #9CA3AF30;box-shadow:var(--card-shadow);border-radius:6px;transition:all .3s ease 0s;}
#step-list li aside {display:flex;justify-content:space-between;min-width:250px;}
#step-list li aside p {margin:0;color:#6B7280;font-size:.75em;}
#step-list li aside date {color:#1F2937;display:block;font-size:.9em;padding:0;font-weight:bold;margin:0px 0px 10px;}
#step-list li.add {background:#2980b910;}
#step-list li.add date {color:#2980b9;}
#step-list li.set {background:#10B98110;}
#step-list li.set date {color:#10B981;}
#step-list li:hover {z-index:2;transform:scale(1);transition:none;}
#step-list li p {line-height:150%;margin-bottom:5px;font-size:.8em;}
#step-list li p a:link,
#step-list li p a:visited {color:#111827;font-weight:400;font-size:1.1em;}

body.dark-theme #step-list li p {color:#ffffff90;}
body.dark-theme #step-list li.add {background:#2980b930;}
body.dark-theme #step-list li.add date {color:#2980b9;}
body.dark-theme #step-list li.set {background:#10B98130;}
body.dark-theme #step-list li.set date {color:#10B981;}

#opts {width:90% !important;}
#opts div {display:flex;align-items:center;width:100%;}
#opts aside {white-space:nowrap;margin:3px 3px 15px 20px;padding:1px 8px 4px;border:solid 1px #7f8c8d40;border-radius:6px;cursor:pointer;}
#opts input[type=radio] {width:10px;}
#opts b {margin-bottom:18px;}

        /* Стили для уведомлений */
        .notification {
            z-index:10000;
            position: fixed;
            top: 20px;
            right: 20px;
            padding: 15px 20px;
            border-radius: 6px;
            color: white;
            font-weight: 500;
            z-index: 1200;
            opacity: 0;
            transform: translateY(-20px);
            transition: all 0.3s;
        }

        .notification.show {
            opacity: 1;
            transform: translateY(0);
        }

        .notification.success {
            background: #27ae60;
        }

        .notification.error {
            background: #e74c3c;
        }

        .notification.info {
            background: #3498db;
        }