﻿        /* Плавное появление страниц-разделов (когда снимается .hidden) */
        @keyframes pageFadeIn {
            from { opacity: 0; transform: translateY(8px); }
            to   { opacity: 1; transform: translateY(0); }
        }
        .container:not(.hidden) {
            animation: pageFadeIn 0.28s ease both;
        }
        /* Не дёргать главную страницу логина при загрузке у залогиненных */
        #login-page:not(.hidden) {
            animation: none;
        }
        @media (prefers-reduced-motion: reduce) {
            .container:not(.hidden),
            .modal-content,
            .modal-content--toast,
            .alert,
            .meter-input-card,
            .grafik-card,
            .tariff-card,
            .submitted-card,
            .info-tile,
            .info-buttons-grid button,
            .company-info-buttons-grid button {
                animation: none !important;
                transition: none !important;
            }
        }

        /* Лёгкое появление карточек */
        .meter-input-card,
        .grafik-card,
        .tariff-card,
        .submitted-card {
            animation: pageFadeIn 0.32s ease both;
        }

        /* Стили для второй страницы */
        #payment-page {
            margin-top: 30px;
            margin-bottom: 30px;
            padding: 20px;
        }

        #payment-page h2 {
            margin-bottom: 20px;
        }

        #payment-page p#account-info {
            margin-bottom: 20px;
        }

        #detailed-info {
            margin-top: 30px;
            margin-bottom: 30px;
            padding: 20px;
        }

        #detailed-info p {
            margin-bottom: 5px;
        }

        #detailed-info h3 {
            margin-top: 0;
            margin-bottom: 10px;
            font-size: 1.2em;
        }

        .button-container {
            margin-top: 20px;
        }

        /* Info Buttons Grid Styles */
        .info-buttons-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(125px, 1fr));
            gap: 1rem;
            margin: 0 auto;
            margin-bottom:10px;
            max-width: 1000px;
        }

        .info-buttons-grid button {
            background-color: #fff;
            border: 1px solid #e3e8ef;
            border-radius: 12px;
            padding: 1.2rem;
            text-align: left;
            cursor: pointer;
            transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
            position: relative;
            color: #1f3540;
            box-shadow: 0 1px 3px rgba(20, 60, 100, 0.04);
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            width: 100%;
        }
        .info-buttons-grid button:hover {
            transform: translateY(-2px);
            box-shadow: 0 8px 20px rgba(44, 182, 125, 0.14);
            border-color: rgba(44, 182, 125, 0.35);
        }

        .info-buttons-grid img {
            display: block;
            width: 36px;
            height: 36px;
            padding: 8px;
            background: #e8f7f0;
            border-radius: 10px;
            box-sizing: content-box;
            margin-bottom: 1rem;
            transition: background-color 0.18s ease;
        }
        .info-buttons-grid button:hover img {
            background: #d2efe1;
        }

        .info-buttons-grid h3 {
            font-size: 1.2em;
            margin-bottom: 0.25rem;
            color: #1f3540;
        }

        .info-buttons-grid p {
            font-size: 0.9em;
            color: var(--text-muted);
        }

        .info-buttons-grid span {
            position: absolute;
            top: 14px;
            right: 14px;
            font-size: 1.3em;
            color: #6f7e8a;
            transition: transform 0.18s ease, color 0.18s ease;
        }
        .info-buttons-grid button:hover span {
            transform: translateX(4px);
            color: var(--accent-info);
        }
