        :root {
            --forest-dark: #0a3a2a;
            --forest-mid: #145a3e;
            --forest-light: #1e7a54;
            --gold: #d4af37;
            --gold-light: #f4d77f;
            --cream: #faf8f3;
            --sage: #8ba888;
            --shadow: rgba(10, 58, 42, 0.3);
        }
        * { margin: 0; padding: 0; box-sizing: border-box; }
        body {
            font-family: 'Cairo', sans-serif;
            background: linear-gradient(135deg, var(--forest-dark) 0%, var(--forest-mid) 50%, var(--forest-light) 100%);
            background-attachment: fixed;
            color: var(--cream);
            min-height: 100vh;
            overflow-x: hidden;
        }
        body[dir="ltr"] { font-family: 'Crimson Pro', serif; }
        .app { max-width: 1400px; margin: 0 auto; padding: 20px; position: relative; z-index: 1; }
        /* Header Layout */
        header {
            position: relative;
            padding: 1.5rem 1rem;
            text-align: center;
        }

        .header-top {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 1rem;
            max-width: 1200px;
            margin-left: auto;
            margin-right: auto;
        }

        .header-left,
        .header-right {
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }

        .header-center {
            margin-top: 0.5rem;
        }

        /* Language Toggle Button */
        .lang-toggle {
            background: rgba(255, 255, 255, 0.1);
            border: 2px solid rgba(212, 175, 55, 0.3);
            color: var(--cream);
            padding: 8px 16px;
            border-radius: 50px;
            cursor: pointer;
            transition: all 0.3s;
            font-weight: 600;
            font-size: 0.85rem;
        }
        .lang-toggle:hover {
            background: rgba(212, 175, 55, 0.2);
            border-color: var(--gold);
        }

        /* Help Button */
        .help-btn {
            background: rgba(255, 255, 255, 0.1);
            border: 2px solid rgba(212, 175, 55, 0.3);
            color: var(--cream);
            width: 40px;
            height: 40px;
            border-radius: 50%;
            cursor: pointer;
            transition: all 0.3s;
            font-weight: 700;
            font-size: 1.2rem;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .help-btn:hover {
            background: var(--gold);
            color: var(--forest-dark);
            transform: scale(1.1);
        }

        /* User Profile Section */
        .user-profile {
            display: flex;
            align-items: center;
            gap: 0.75rem;
        }

        #userName {
            color: var(--gold);
            font-weight: 600;
            font-size: 0.95rem;
        }

        .btn-logout, .btn-admin {
            padding: 0.5rem 1rem;
            font-size: 0.85rem;
            background: rgba(212, 175, 55, 0.1);
            border: 1px solid var(--gold);
            color: var(--gold);
            border-radius: 6px;
            cursor: pointer;
            transition: all 0.3s ease;
            font-family: inherit;
            margin-left: 0.5rem;
        }
        .btn-logout:hover, .btn-admin:hover {
            background: var(--gold);
            color: var(--dark-bg);
        }

        /* Admin button gets a distinct color */
        .btn-admin {
            background: rgba(147, 112, 219, 0.1);
            border: 1px solid #9370DB;
            color: #9370DB;
        }
        .btn-admin:hover {
            background: #9370DB;
            color: var(--dark-bg);
        }

        /* Responsive Header */
        @media (max-width: 768px) {
            .header-top {
                flex-direction: column;
                gap: 0.75rem;
            }

            .user-profile {
                font-size: 0.9rem;
            }

            #userName {
                font-size: 0.85rem;
            }

            .btn-logout, .btn-admin {
                padding: 0.4rem 0.8rem;
                font-size: 0.8rem;
            }
        }

        @media (max-width: 480px) {
            #userName {
                max-width: 120px;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
            }
        }
        h1 {
            font-family: 'Rakkas', cursive;
            font-size: clamp(2.5rem, 6vw, 4.5rem);
            background: linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            margin-bottom: 10px;
        }
        .subtitle { font-family: 'Amiri', serif; font-size: 1.3rem; color: var(--sage); }
        body[dir="ltr"] .subtitle { font-family: 'Crimson Pro', serif; }
        .stats-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 20px; margin: 40px 0;
        }
        .stat-card {
            background: rgba(255, 255, 255, 0.05);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(212, 175, 55, 0.2);
            border-radius: 20px; padding: 25px;
            text-align: center;
            transition: all 0.3s;
        }
        .stat-card:hover { transform: translateY(-5px); border-color: var(--gold); }
        .stat-number { font-size: 2.5rem; font-weight: 700; color: var(--gold); }
        .stat-label { font-size: 0.95rem; color: var(--sage); margin-top: 5px; }
        .progress-ring { width: 120px; height: 120px; margin: 0 auto 20px; }
        .progress-ring-circle {
            transition: stroke-dashoffset 1s ease-out;
            transform: rotate(-90deg);
            transform-origin: 50% 50%;
        }
        .tabs {
            display: flex; gap: 10px;
            margin: 40px 0 30px;
            flex-wrap: wrap;
            justify-content: center;
        }
        .tab {
            background: rgba(255, 255, 255, 0.05);
            border: 2px solid rgba(212, 175, 55, 0.3);
            color: var(--cream);
            padding: 12px 30px;
            border-radius: 50px;
            cursor: pointer;
            transition: all 0.3s;
            font-weight: 600;
        }
        .tab:hover { background: rgba(212, 175, 55, 0.1); border-color: var(--gold); }
        .tab.active {
            background: var(--gold);
            color: var(--forest-dark);
            border-color: var(--gold);
        }
        .content {
            background: rgba(255, 255, 255, 0.03);
            backdrop-filter: blur(20px);
            border: 1px solid rgba(212, 175, 55, 0.2);
            border-radius: 25px;
            padding: 30px;
        }
        .juz-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
            gap: 15px;
            margin-top: 20px;
        }
        .juz-card {
            background: rgba(255, 255, 255, 0.05);
            border: 2px solid rgba(212, 175, 55, 0.2);
            border-radius: 15px;
            padding: 20px;
            text-align: center;
            cursor: pointer;
            transition: all 0.3s;
        }
        .juz-card:hover { transform: scale(1.05); border-color: var(--gold); }
        .juz-card.completed {
            background: linear-gradient(135deg, var(--forest-light) 0%, var(--forest-mid) 100%);
            border-color: var(--gold);
        }
        .juz-number { font-size: 2rem; font-weight: 700; color: var(--gold); }
        .juz-name { font-size: 0.85rem; color: var(--sage); margin-top: 5px; }
        .juz-status { font-size: 0.75rem; color: var(--gold-light); margin-top: 8px; }
        .daily-log {
            background: rgba(255, 255, 255, 0.03);
            border: 1px solid rgba(212, 175, 55, 0.2);
            border-radius: 15px;
            padding: 25px;
            margin-bottom: 20px;
        }
        .log-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 20px;
            flex-wrap: wrap;
            gap: 15px;
        }
        .log-date { font-size: 1.3rem; color: var(--gold); font-weight: 600; }
        .input-group { margin-bottom: 20px; }
        label {
            display: block;
            color: var(--sage);
            margin-bottom: 8px;
            font-weight: 600;
        }
        input, textarea, select {
            width: 100%;
            background: rgba(255, 255, 255, 0.05);
            border: 2px solid rgba(212, 175, 55, 0.2);
            border-radius: 10px;
            padding: 12px 15px;
            color: var(--cream);
            font-family: inherit;
            font-size: 1rem;
            transition: all 0.3s;
        }
        
        select option {
            background: var(--forest-dark);
            color: var(--cream);
            padding: 10px;
        }
        
        select option:hover,
        select option:focus,
        select option:checked {
            background: var(--forest-mid);
            color: var(--gold);
        }
        input:focus, textarea:focus, select:focus {
            outline: none;
            border-color: var(--gold);
            background: rgba(255, 255, 255, 0.08);
        }
        textarea { min-height: 80px; resize: vertical; }
        .btn {
            background: linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);
            color: var(--forest-dark);
            border: none;
            padding: 14px 35px;
            border-radius: 50px;
            font-weight: 700;
            cursor: pointer;
            transition: all 0.3s;
            font-family: inherit;
        }
        .btn:hover { transform: translateY(-2px); }
        .btn-secondary { background: rgba(255, 255, 255, 0.1); color: var(--cream); }
        .history-item {
            background: rgba(255, 255, 255, 0.03);
            border-left: 4px solid var(--gold);
            border-radius: 10px;
            padding: 20px;
            margin-bottom: 15px;
            transition: all 0.3s;
        }
        body[dir="ltr"] .history-item { border-left: none; border-right: 4px solid var(--gold); }
        .history-item:hover { background: rgba(255, 255, 255, 0.05); }
        .history-date { color: var(--gold); font-weight: 600; margin-bottom: 10px; }
        .history-content { color: var(--sage); line-height: 1.6; }
        .rating-stars {
            display: flex;
            gap: 5px;
            font-size: 1.5rem;
            justify-content: center;
            margin: 10px 0;
        }
        .star {
            cursor: pointer;
            transition: all 0.2s;
            color: rgba(212, 175, 55, 0.3);
        }
        .star:hover, .star.active { color: var(--gold); transform: scale(1.2); }
        .modal {
            display: none;
            position: fixed;
            top: 0; left: 0; right: 0; bottom: 0;
            background: rgba(10, 58, 42, 0.95);
            backdrop-filter: blur(10px);
            z-index: 1000;
            padding: 20px;
            overflow-y: auto;
        }
        .modal.active { display: flex; align-items: center; justify-content: center; }
        .modal-content {
            background: var(--forest-dark);
            border: 2px solid var(--gold);
            border-radius: 25px;
            padding: 40px;
            max-width: 600px;
            width: 100%;
            max-height: 90vh;
            overflow-y: auto;
        }
        .modal-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 30px;
        }
        .modal-title { font-size: 1.8rem; color: var(--gold); font-weight: 700; }
        .close-btn {
            background: none;
            border: none;
            color: var(--cream);
            font-size: 2rem;
            cursor: pointer;
            transition: all 0.3s;
        }
        .close-btn:hover { color: var(--gold); transform: rotate(90deg); }
        .button-group { display: flex; gap: 15px; margin-top: 25px; flex-wrap: wrap; }
        .empty-state { text-align: center; padding: 60px 20px; color: var(--sage); }

        /* Leaderboard Styles */
        .leaderboard-header { text-align: center; margin-bottom: 30px; }

        .my-rank-card {
            background: linear-gradient(135deg, rgba(212, 175, 55, 0.1), rgba(212, 175, 55, 0.05));
            border: 2px solid var(--gold);
            border-radius: 20px;
            padding: 25px;
            margin-bottom: 30px;
        }

        .rank-info {
            display: flex;
            align-items: center;
            gap: 25px;
        }

        .rank-number {
            font-size: 3.5rem;
            font-weight: 700;
            color: var(--gold);
            font-family: 'Rakkas', cursive;
            min-width: 80px;
            text-align: center;
        }

        .rank-details { flex: 1; }
        .rank-details p { color: var(--sage); margin-bottom: 10px; font-size: 1.1rem; }

        .my-stats {
            display: flex;
            gap: 20px;
            flex-wrap: wrap;
        }

        .my-stats span {
            color: var(--text-primary);
            font-weight: 600;
            padding: 8px 16px;
            background: rgba(255, 255, 255, 0.05);
            border-radius: 12px;
            font-size: 0.95rem;
        }

        .leaderboard-container {
            background: rgba(255, 255, 255, 0.02);
            border-radius: 20px;
            overflow: hidden;
            margin-bottom: 20px;
        }

        .leaderboard {
            width: 100%;
            border-collapse: collapse;
        }

        .leaderboard thead {
            background: rgba(212, 175, 55, 0.15);
        }

        .leaderboard th {
            padding: 15px 20px;
            text-align: center;
            color: var(--gold);
            font-weight: 700;
            font-size: 1rem;
            border-bottom: 2px solid rgba(212, 175, 55, 0.3);
        }

        .leaderboard td {
            padding: 15px 20px;
            text-align: center;
            color: var(--text-primary);
            border-bottom: 1px solid rgba(212, 175, 55, 0.1);
            font-size: 0.95rem;
        }

        .leaderboard tbody tr {
            transition: all 0.3s;
        }

        .leaderboard tbody tr:hover {
            background: rgba(255, 255, 255, 0.05);
        }

        .leaderboard tbody tr.highlight {
            background: linear-gradient(90deg, rgba(212, 175, 55, 0.15), rgba(212, 175, 55, 0.05));
            border-left: 4px solid var(--gold);
        }

        .leaderboard .rank-cell {
            font-weight: 700;
            font-size: 1.2rem;
            color: var(--gold);
        }

        .leaderboard .rank-cell.top-3 {
            font-size: 1.5rem;
        }

        .leaderboard .name-cell {
            font-weight: 600;
            text-align: right;
        }

        .leaderboard td.loading {
            text-align: center;
            color: var(--sage);
            padding: 40px;
        }

        .leaderboard-footer {
            text-align: center;
            margin-top: 25px;
        }

        /* Responsive - Tablets and mobile */
        @media (max-width: 768px) {
            .stats-grid { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
            .button-group { flex-direction: column; }
            .btn { width: 100%; }
            .juz-grid { grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: 12px; }
            .tabs { gap: 8px; }
            .tab { padding: 10px 20px; font-size: 0.9rem; }
            .content { padding: 20px; border-radius: 20px; }
            .daily-log { padding: 20px; }
            .rank-info { flex-direction: column; text-align: center; }
            .my-stats { justify-content: center; }
            .leaderboard { font-size: 0.9rem; }
            .leaderboard th, .leaderboard td { padding: 10px 12px; }
        }

        /* Responsive - Small mobile */
        @media (max-width: 480px) {
            .app { padding: 15px; }
            .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 15px; }
            .stat-card { padding: 20px; }
            .stat-number { font-size: 2rem; }
            .juz-grid { grid-template-columns: repeat(auto-fill, minmax(90px, 1fr)); gap: 10px; }
            .juz-card { padding: 15px; }
            .juz-number { font-size: 1.6rem; }
            .tabs { gap: 6px; }
            .tab { padding: 8px 16px; font-size: 0.85rem; }
            .content { padding: 15px; border-radius: 15px; }
            .daily-log { padding: 15px; }
            input, textarea, select { font-size: 0.95rem; }
        }

        /* ================================
           RECITATION (تلاوة) TAB
           ================================ */
        .surah-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
            gap: 15px;
            margin-top: 20px;
        }
        .surah-card-name {
            font-family: 'Amiri', serif;
            font-size: 1.05rem;
            color: var(--cream);
            margin-top: 6px;
            line-height: 1.6;
        }
        .surah-card-en { font-size: 0.75rem; color: var(--sage); margin-top: 6px; }

        .recite-setup-card {
            background: rgba(255, 255, 255, 0.03);
            border: 1px solid rgba(212, 175, 55, 0.2);
            border-radius: 15px;
            padding: 30px;
            text-align: center;
            max-width: 520px;
            margin: 30px auto;
        }
        .recite-progress {
            height: 10px;
            background: rgba(212, 175, 55, 0.15);
            border-radius: 5px;
            overflow: hidden;
            margin: 20px 0 10px;
        }
        .recite-progress-bar {
            height: 100%;
            width: 0%;
            background: linear-gradient(90deg, var(--gold) 0%, var(--gold-light) 100%);
            border-radius: 5px;
            transition: width 0.3s ease;
        }
        .recite-progress-bar.indeterminate {
            animation: recite-indeterminate 1.4s ease-in-out infinite;
        }
        @keyframes recite-indeterminate {
            0%, 100% { opacity: 0.35; }
            50% { opacity: 1; }
        }
        .recite-progress-text { color: var(--sage); font-size: 0.9rem; min-height: 1.4em; }

        .recite-topbar {
            display: flex;
            align-items: center;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: 12px;
            background: rgba(255, 255, 255, 0.03);
            border: 1px solid rgba(212, 175, 55, 0.2);
            border-radius: 15px;
            padding: 14px 20px;
            margin-bottom: 18px;
        }
        .recite-surah-title {
            font-family: 'Amiri', serif;
            font-size: 1.3rem;
            color: var(--gold);
        }
        .recite-verse-pos { color: var(--sage); font-size: 0.9rem; margin-top: 3px; }
        .recite-topbar-status { display: flex; align-items: center; gap: 14px; }
        .recite-pulse {
            width: 14px;
            height: 14px;
            border-radius: 50%;
            background: var(--sage);
            display: inline-block;
            transition: transform 0.15s ease, background 0.3s ease;
            animation: recite-idle-pulse 2.4s ease-in-out infinite;
        }
        .recite-pulse.speaking {
            background: var(--gold);
            animation: none;
        }
        @keyframes recite-idle-pulse {
            0%, 100% { opacity: 0.45; }
            50% { opacity: 1; }
        }
        .recite-elapsed { color: var(--cream); font-variant-numeric: tabular-nums; }
        .recite-stop-btn { padding: 8px 18px; }

        .recite-hint {
            min-height: 1.6em;
            text-align: center;
            color: var(--sage);
            font-size: 0.95rem;
            margin-bottom: 14px;
            opacity: 0;
            transition: opacity 0.4s ease;
        }
        .recite-hint.visible { opacity: 1; }

        .verse-text {
            font-family: 'Amiri', serif;
            font-size: 2.2rem;
            line-height: 2.3;
            text-align: center;
            color: var(--cream);
            background: rgba(255, 255, 255, 0.03);
            border: 1px solid rgba(212, 175, 55, 0.2);
            border-radius: 15px;
            padding: 30px 25px;
            margin-bottom: 20px;
        }
        .verse-text-sm {
            font-family: 'Amiri', serif;
            font-size: 1.4rem;
            line-height: 2;
            color: var(--cream);
        }
        .verse-text .word,
        .verse-text-sm .word { transition: color 0.3s ease, text-shadow 0.3s ease; }
        .word-matched {
            color: var(--gold);
            text-shadow: 0 0 12px rgba(212, 175, 55, 0.35);
        }
        .word-missed {
            color: #e05c5c;
            text-decoration: underline;
            text-decoration-color: rgba(224, 92, 92, 0.6);
            text-underline-offset: 6px;
        }
        .word-uncertain {
            color: var(--gold);
            text-decoration: underline dashed;
            text-decoration-color: rgba(212, 175, 55, 0.55);
            text-underline-offset: 6px;
        }
        .waqf-mark { color: var(--sage); font-size: 0.8em; }

        .recite-verse-list { display: flex; flex-direction: column; gap: 8px; }
        .recite-verse-item {
            display: flex;
            align-items: center;
            gap: 10px;
            padding: 8px 14px;
            background: rgba(255, 255, 255, 0.02);
            border-radius: 10px;
        }
        .recite-verse-num {
            min-width: 2em;
            text-align: center;
            color: var(--gold);
            font-weight: 700;
        }
        .recite-chip {
            font-size: 0.78rem;
            padding: 3px 10px;
            border-radius: 12px;
            white-space: nowrap;
        }
        .chip-done { background: rgba(30, 122, 84, 0.35); color: #9fd6b8; }
        .chip-skipped { background: rgba(212, 160, 23, 0.25); color: var(--gold-light); }
        .chip-unverified { background: rgba(196, 90, 40, 0.3); color: #f0b088; }
        .chip-repeat { background: rgba(139, 168, 136, 0.2); color: var(--sage); }

        .recite-summary-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
            gap: 15px;
            margin-bottom: 25px;
        }
        .stat-value { font-size: 2rem; font-weight: 700; color: var(--gold); }
        .recite-section-title { color: var(--gold); margin: 20px 0 12px; }
        .recite-mistake-verse {
            display: flex;
            align-items: flex-start;
            gap: 12px;
            padding: 12px 16px;
            background: rgba(255, 255, 255, 0.02);
            border: 1px solid rgba(212, 175, 55, 0.12);
            border-radius: 12px;
            margin-bottom: 10px;
        }
        .recite-no-mistakes {
            text-align: center;
            color: var(--gold-light);
            font-size: 1.1rem;
            padding: 18px;
        }
        .recite-note { color: var(--sage); font-size: 0.9rem; margin-top: 10px; }
        .recite-summary-actions { margin-top: 25px; }
        .recite-range-row { display: flex; gap: 15px; }
        .recite-range-row .input-group { flex: 1; }

        @media (max-width: 600px) {
            .surah-grid { grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: 12px; }
            .verse-text { font-size: 1.6rem; padding: 20px 15px; }
            .recite-topbar { padding: 12px 14px; }
        }

        .freestyle-card {
            grid-column: 1 / -1;
            background: linear-gradient(135deg, rgba(212, 175, 55, 0.12) 0%, rgba(30, 122, 84, 0.15) 100%);
            border-color: var(--gold);
        }
        .freestyle-card .surah-card-name { color: var(--gold-light); font-size: 1.15rem; }

        /* Volume level meter (audio-input feedback for the reciter) */
        .recite-meter {
            width: 90px;
            height: 10px;
            border-radius: 5px;
            background: rgba(255, 255, 255, 0.08);
            border: 1px solid rgba(212, 175, 55, 0.25);
            overflow: hidden;
            position: relative;
        }
        /* Zone ticks: below ~18% reads as too quiet, above ~85% as too hot */
        .recite-meter::before,
        .recite-meter::after {
            content: '';
            position: absolute;
            top: 0;
            bottom: 0;
            width: 1px;
            background: rgba(250, 248, 243, 0.25);
        }
        .recite-meter::before { inset-inline-start: 18%; }
        .recite-meter::after { inset-inline-start: 85%; }
        .recite-meter-fill {
            height: 100%;
            width: 0%;
            border-radius: 5px;
            background: var(--sage);
            transition: width 0.06s linear;
        }
        .recite-meter-fill.level-good { background: linear-gradient(90deg, var(--forest-light), var(--gold)); }
        .recite-meter-fill.level-low { background: var(--sage); }
        .recite-meter-fill.level-hot { background: #e05c5c; }

        /* On-screen debug panel (?debug=1) */
        #reciteDebugPanel {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            z-index: 9999;
            background: rgba(6, 30, 22, 0.96);
            border-top: 2px solid var(--gold);
            font-family: monospace;
            font-size: 11px;
            color: var(--cream);
            direction: ltr;
            text-align: left;
        }
        .rdbg-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 6px 10px;
            color: var(--gold);
        }
        .rdbg-btn {
            background: rgba(212, 175, 55, 0.2);
            border: 1px solid var(--gold);
            color: var(--gold);
            border-radius: 4px;
            padding: 2px 8px;
            font-family: monospace;
            font-size: 11px;
            cursor: pointer;
        }
        .rdbg-body { padding: 0 10px 8px; }
        .rdbg-live { border-bottom: 1px solid rgba(212, 175, 55, 0.25); padding-bottom: 5px; margin-bottom: 5px; }
        .rdbg-k { color: var(--sage); display: inline-block; min-width: 80px; }
        .rdbg-log { max-height: 130px; overflow-y: auto; }
        .rdbg-event { color: #f4d77f; }
        .rdbg-effect { color: #9fd6b8; }
        .rdbg-diag { color: #999; }
        .rdbg-error { color: #e05c5c; }
        .rdbg-milestones {
            border-bottom: 1px solid rgba(212, 175, 55, 0.25);
            padding-bottom: 5px;
            margin-bottom: 5px;
            max-height: 90px;
            overflow-y: auto;
        }
        .rdbg-milestone { color: var(--gold-light); }
