        :root {
            --app-bg-base: #f3f5f8;
            --app-bg-surface: #eef2f7;
            --app-bg-accent: #dbe4f0;
            --app-text-color: #1f2937;
            --app-link-color: #36597a;
            --app-link-hover: #2d4c69;
            --app-link-visited: #4b5e72;
            --app-link-focus: rgba(54, 89, 122, 0.24);
        }

        html, body {
            min-height: 100%;
            min-height: 100vh;
            min-height: 100dvh;
            margin: 0;
        }

        body {
            color: var(--app-text-color);
            background:
                radial-gradient(circle at 12% 16%, rgba(219, 228, 240, 0.45) 0%, rgba(219, 228, 240, 0) 38%),
                radial-gradient(circle at 86% 12%, rgba(224, 231, 241, 0.55) 0%, rgba(224, 231, 241, 0) 34%),
                linear-gradient(165deg, var(--app-bg-base) 0%, var(--app-bg-surface) 58%, #e8edf4 100%);
        }

        a:not(.button):not(.navbar-item):not(.navbar-link):not(.dropdown-item):not(.pagination-link):not(.pagination-previous):not(.pagination-next) {
            color: var(--app-link-color);
            text-decoration-color: rgba(54, 89, 122, 0.38);
            text-decoration-thickness: 1px;
            text-underline-offset: 0.14em;
            transition: color 0.15s ease, text-decoration-color 0.15s ease;
        }

        a:not(.button):not(.navbar-item):not(.navbar-link):not(.dropdown-item):not(.pagination-link):not(.pagination-previous):not(.pagination-next):visited {
            color: var(--app-link-visited);
            text-decoration-color: rgba(75, 94, 114, 0.34);
        }

        a:not(.button):not(.navbar-item):not(.navbar-link):not(.dropdown-item):not(.pagination-link):not(.pagination-previous):not(.pagination-next):hover {
            color: var(--app-link-hover);
            text-decoration-color: rgba(45, 76, 105, 0.58);
        }

        a:not(.button):not(.navbar-item):not(.navbar-link):not(.dropdown-item):not(.pagination-link):not(.pagination-previous):not(.pagination-next):focus-visible {
            outline: 2px solid var(--app-link-focus);
            outline-offset: 2px;
            border-radius: 2px;
        }

        .navbar {
            background: rgba(255, 255, 255, 0.86);
            border-bottom: 1px solid rgba(15, 23, 42, 0.08);
            box-shadow: 0 6px 18px rgba(15, 23, 42, 0.08);
            backdrop-filter: blur(8px);
        }

        .container {
            padding: 0 1rem 2rem;
        }

        .box {
            background: #ffffff;
            border: 1px solid rgba(15, 23, 42, 0.08);
            box-shadow: 0 10px 24px rgba(15, 23, 42, 0.07);
        }

        .table {
            background: #ffffff;
            border: 1px solid rgba(15, 23, 42, 0.09);
            box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06);
        }

        .table th {
            background: #f7f9fc;
        }

        .table-responsive {
            width: 100%;
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
        }

        .table-responsive .table {
            margin-bottom: 0;
        }

        @media screen and (max-width: 768px) {
            .container {
                padding: 0 0.75rem 1.5rem;
            }

            .navbar-item {
                padding-left: 0.75rem;
                padding-right: 0.75rem;
            }

            .table {
                font-size: 0.9rem;
            }

            .table th,
            .table td {
                white-space: nowrap;
                padding: 0.5rem 0.45rem;
            }

            .pagination {
                display: flex;
                justify-content: center;
                align-items: center;
                gap: 0.5rem;
                flex-wrap: wrap;
            }

            .pagination .button {
                min-height: 2.5rem;
            }
        }