
        :root {
            /* Luxury Color Palette */
            --color-primary: #5a0000; /* Deep Burgundy */
            --color-primary-light: #a52a2a;
            --color-secondary: #D4AF37; /* Antique Gold */
            --color-secondary-light: #e6c875;
            --color-dark: #0A0A0A; /* Rich Black */
            --color-dark-2: #1a1a1a;
            --color-light: #F5F5F5; /* Soft Ivory */
            --color-light-2: #fafafa;
            --color-text: #1A1A1A;
            --color-text-light: #4d4d4d;
            --color-bg: #FFFFFF;
            --color-card: #FAFAFA;
            --color-accent: #5A3921; /* Earthy Brown */
            
            /* Typography */
            --font-heading: 'Cormorant Garamond', serif;
            --font-body: 'Inter', sans-serif;
            
            /* Spacing */
            --space-xxl: 8rem;
            --space-xl: 6rem;
            --space-lg: 4rem;
            --space-md: 2.4rem;
            --space-sm: 1.6rem;
            --space-xs: 0.8rem;
            
            /* Shadows */
            --shadow-sm: 0 2px 8px rgba(0,0,0,0.08);
            --shadow-md: 0 4px 16px rgba(0,0,0,0.12);
            --shadow-lg: 0 8px 30px rgba(0,0,0,0.15);
            --shadow-xl: 0 12px 40px rgba(0,0,0,0.2);
            --shadow-gold: 0 0 20px rgba(212,175,55,0.4);
            
            /* Borders */
            --border-radius-sm: 4px;
            --border-radius-md: 8px;
            --border-radius-lg: 16px;
            --border-radius-xl: 24px;
            --border-radius-round: 50%;
            
            /* Transitions */
            --transition-smooth: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
            --transition-fast: all 0.3s ease;
        }
        
        /* Base Reset */
        *, *::before, *::after {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        
        html {
            scroll-behavior: smooth;
            font-size: 62.5%;
        }
        
        body {
            font-family: var(--font-body);
            font-size: 1.8rem;
            line-height: 1.7;
            color: var(--color-text);
            background-color: var(--color-bg);
            overflow-x: hidden;
            transition: var(--transition-smooth);
            padding: 2rem;
            position: relative;
        }

        /* ============================================
           KJ3 STUDY PANEL STYLES
           ============================================ */
        
        .ai-study-panel {
          position: fixed;
          right: -550px;
          top: 0;
          width: 550px;
          max-width: 90vw;
          height: 100vh;
          background: white;
          box-shadow: -5px 0 25px rgba(0, 0, 0, 0.2);
          z-index: 2000;
          transition: right 0.4s cubic-bezier(0.16, 1, 0.3, 1);
          overflow-y: auto;
          display: flex;
          flex-direction: column;
        }
        
        .ai-study-panel.active {
          right: 0;
        }
        
        .ai-header {
          background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
          color: white;
          padding: 2rem 2.5rem;
          display: flex;
          justify-content: space-between;
          align-items: center;
          flex-shrink: 0;
          box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
        }
        
        .ai-header-content {
          flex: 1;
        }
        
        .ai-header h3 {
          margin: 0 0 0.5rem 0;
          font-size: 2rem;
          color: white;
          display: flex;
          align-items: center;
          gap: 1rem;
        }
        
        .ai-verse-ref {
          font-size: 1.4rem;
          color: rgba(255, 255, 255, 0.9);
          font-family: var(--font-body);
          font-weight: 400;
        }
        
        .ai-close {
          background: rgba(255, 255, 255, 0.2);
          border: none;
          color: white;
          font-size: 2.5rem;
          cursor: pointer;
          line-height: 1;
          width: 40px;
          height: 40px;
          border-radius: 50%;
          display: flex;
          align-items: center;
          justify-content: center;
          transition: var(--transition-fast);
          flex-shrink: 0;
        }
        
        .ai-close:hover {
          background: rgba(255, 255, 255, 0.3);
          transform: scale(1.1);
        }
        
        .ai-loading {
          text-align: center;
          padding: 4rem 2rem;
          display: none;
        }
        
        .ai-loading .spinner {
          width: 50px;
          height: 50px;
          border: 4px solid rgba(139, 0, 0, 0.1);
          border-top-color: var(--color-primary);
          border-radius: 50%;
          animation: spin 1s linear infinite;
          margin: 0 auto 2rem;
        }
        
        @keyframes spin {
          to { transform: rotate(360deg); }
        }
        
        .ai-loading p {
          color: var(--color-text-light);
          font-size: 1.4rem;
        }
        
        .ai-results {
          flex: 1;
          padding: 2.5rem;
          overflow-y: auto;
        }
        
        .ai-answer {
          font-size: 1.6rem;
          line-height: 1.8;
          color: var(--color-text);
        }
        
        .ai-answer p {
          margin-bottom: 1.5rem;
        }
        
        .ai-answer strong {
          color: var(--color-primary);
          font-weight: 600;
        }
        
        .ai-answer em {
          font-style: italic;
          color: var(--color-text-light);
        }
        
        .ai-list-item {
          display: flex;
          gap: 1rem;
          margin-bottom: 1.5rem;
          padding: 1.2rem;
          background: var(--color-light);
          border-radius: 8px;
          border-left: 3px solid var(--color-secondary);
        }
        
        .ai-number,
        .ai-bullet {
          color: var(--color-primary);
          font-weight: 600;
          flex-shrink: 0;
        }
        
        .ai-unavailable {
          background: linear-gradient(135deg, #fff3cd 0%, #ffeaa7 100%);
          border-left: 4px solid #ffc107;
          padding: 2rem;
          border-radius: 8px;
          display: flex;
          gap: 1.5rem;
          align-items: start;
        }
        
        .ai-unavailable i {
          color: #856404;
          font-size: 2.4rem;
          flex-shrink: 0;
        }
        
        .ai-error {
          background: linear-gradient(135deg, #f8d7da 0%, #f5c6cb 100%);
          border-left: 4px solid #dc3545;
          padding: 2rem;
          border-radius: 8px;
          display: flex;
          gap: 1.5rem;
          align-items: start;
        }
        
        .ai-error i {
          color: #721c24;
          font-size: 2.4rem;
          flex-shrink: 0;
        }
        
        .ai-error p {
          margin: 0 0 0.5rem 0;
          color: #721c24;
          font-size: 1.5rem;
        }
        
        .ai-footer {
          padding: 1.5rem 2.5rem;
          border-top: 1px solid rgba(0, 0, 0, 0.1);
          text-align: center;
          background: var(--color-light-2);
          flex-shrink: 0;
        }
        
        .ai-footer small {
          color: var(--color-text-light);
          font-size: 1.2rem;
        }
        
        .study-dropdown {
          position: relative;
          display: inline-block;
        }
        
        .study-btn {
          background: linear-gradient(135deg, var(--color-secondary), var(--color-secondary-light));
          color: var(--color-dark);
          border: none;
          padding: 0.6rem 1.2rem;
          border-radius: 6px;
          font-size: 1.3rem;
          font-weight: 600;
          cursor: pointer;
          transition: var(--transition-fast);
          display: flex;
          align-items: center;
          gap: 0.5rem;
        }
        
        .study-btn:hover {
          transform: translateY(-2px);
          box-shadow: 0 4px 12px rgba(212, 175, 55, 0.4);
        }
        
        .study-menu {
          display: none;
          position: absolute;
          top: 100%;
          left: 0;
          margin-top: 0.5rem;
          background: white;
          border-radius: 8px;
          box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
          min-width: 220px;
          z-index: 1000;
          overflow: hidden;
        }
        
        .study-dropdown.active .study-menu {
          display: block;
        }
        
        .study-menu button {
          display: block;
          width: 100%;
          text-align: left;
          padding: 1.2rem 1.5rem;
          border: none;
          background: white;
          color: var(--color-text);
          font-size: 1.4rem;
          cursor: pointer;
          transition: var(--transition-fast);
          border-bottom: 1px solid rgba(0, 0, 0, 0.05);
        }
        
        .study-menu button:last-child {
          border-bottom: none;
        }
        
        .study-menu button:hover {
          background: var(--color-light);
          color: var(--color-primary);
        }
        
        .study-menu-divider {
          height: 1px;
          background: rgba(139, 0, 0, 0.2);
          margin: 0.5rem 0;
        }
        
        .study-menu-header {
          background: var(--color-light) !important;
          color: var(--color-primary) !important;
          font-weight: 600 !important;
          font-size: 1.3rem !important;
          padding: 0.8rem 1.5rem !important;
          cursor: default !important;
          text-transform: uppercase;
          letter-spacing: 0.05em;
        }
        
        .study-menu-header:hover {
          background: var(--color-light) !important;
          color: var(--color-primary) !important;
        }
        
        /* Hide book-level study tools in verse menu on desktop */
        @media (min-width: 769px) {
          .study-menu-divider,
          .study-menu-header,
          .study-menu button[onclick*="openStudyTool"] {
            display: none !important;
          }
        }
        
        /* Immersive Mode: Dark study menu */
        .bible-reader.immersive-mode .study-menu {
          background: #1a1a1a;
          border: 1px solid rgba(255, 255, 255, 0.1);
        }
        
        .bible-reader.immersive-mode .study-menu button {
          background: #1a1a1a;
          color: #b8b8b8;
          border-bottom-color: rgba(255, 255, 255, 0.05);
        }
        
        .bible-reader.immersive-mode .study-menu button:hover {
          background: #2a2a2a;
          color: #D4AF37;
        }
        
        .bible-reader.immersive-mode .study-menu-divider {
          background: rgba(212, 175, 55, 0.2);
        }
        
        .bible-reader.immersive-mode .study-menu-header {
          background: #2a2a2a !important;
          color: #D4AF37 !important;
        }
        
        .bible-reader.immersive-mode .study-menu-header:hover {
          background: #2a2a2a !important;
          color: #D4AF37 !important;
        }
        
        .verse-tools {
          display: inline-flex;
          gap: 0.5rem;
          margin-left: 1rem;
          align-items: center;
        }
        
        /* Study panel backdrop for mobile */
        .ai-study-backdrop {
          display: none;
          position: fixed;
          top: 0; left: 0; right: 0; bottom: 0;
          background: rgba(0,0,0,0.5);
          z-index: 1999;
        }
        .ai-study-backdrop.active { display: block; }

        @media (max-width: 768px) {
          .ai-study-panel {
            width: 100vw;
            right: -100vw;
          }
          
          .ai-study-panel .ai-close {
            display: none;
          }
          
          .ai-study-panel .ai-mobile-close {
            display: none !important;
          }
          
          .ai-header {
            padding: 1.5rem;
          }
          
          .ai-header h3 {
            font-size: 1.8rem;
          }
          
          .ai-results {
            padding: 1.5rem;
          }
          
          .ai-answer {
            font-size: 1.5rem;
          }
          
          .study-menu {
            position: fixed;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            width: 90vw;
            max-width: 400px;
          }
        }

        /* Loading States */
        .loading-indicator {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background: white;
            padding: 3rem;
            border-radius: var(--border-radius-lg);
            box-shadow: var(--shadow-xl);
            z-index: 10000;
            display: none;
        }

        .loading-indicator.active {
            display: block;
        }

        .loading-spinner {
            border: 4px solid #f3f3f3;
            border-top: 4px solid var(--color-primary);
            border-radius: 50%;
            width: 50px;
            height: 50px;
            animation: spin 1s linear infinite;
            margin: 0 auto 2rem;
        }

        .loading-verse {
            text-align: center;
            padding: 2rem;
            color: var(--color-text-light);
            font-style: italic;
        }

        @keyframes spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        /* Search Results Panel */
        .search-results-panel {
            position: fixed;
            top: 0;
            right: -400px;
            width: 400px;
            height: 100vh;
            background: white;
            box-shadow: -5px 0 15px rgba(0,0,0,0.2);
            z-index: 1500;
            transition: right 0.3s ease;
            display: flex;
            flex-direction: column;
            border-left: 1px solid rgba(139, 0, 0, 0.1);
        }

        .search-results-panel.active {
            right: 0;
        }

        .search-results-header {
            padding: 2rem;
            background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
            color: white;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .search-results-header h3 {
            margin: 0;
            font-size: 1.8rem;
            color: white;
        }

        .close-search-btn {
            background: none;
            border: none;
            color: white;
            font-size: 2rem;
            cursor: pointer;
            padding: 0;
            width: 30px;
            height: 30px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            transition: var(--transition-fast);
        }

        .close-search-btn:hover {
            background: rgba(255, 255, 255, 0.2);
        }

        .search-controls {
            padding: 1.5rem;
            border-bottom: 1px solid #eee;
            background: #f8f9fa;
        }

        .search-stats {
            font-size: 1.4rem;
            color: var(--color-text-light);
            margin-bottom: 1rem;
        }

        .search-filters {
            display: flex;
            flex-direction: column;
            gap: 1rem;
        }

        .filter-group {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
        }

        .filter-group label {
            font-size: 1.3rem;
            font-weight: 600;
            color: var(--color-text);
        }

        .filter-group select,
        .filter-group input {
            padding: 0.8rem;
            border: 1px solid #ddd;
            border-radius: 6px;
            font-size: 1.3rem;
        }

        .filter-actions {
            display: flex;
            gap: 0.8rem;
            margin-top: 1rem;
        }

        .filter-btn {
            flex: 1;
            padding: 0.8rem 1.2rem;
            border: 1px solid var(--color-primary);
            background: white;
            color: var(--color-primary);
            border-radius: 6px;
            font-size: 1.2rem;
            font-weight: 600;
            cursor: pointer;
            transition: var(--transition-fast);
        }

        .filter-btn:hover,
        .filter-btn.active {
            background: var(--color-primary);
            color: white;
        }

        .search-results-list {
            flex: 1;
            overflow-y: auto;
            padding: 1rem;
        }

        .search-result-item {
            padding: 1.5rem;
            border-bottom: 1px solid #eee;
            cursor: pointer;
            transition: var(--transition-fast);
            border-left: 3px solid transparent;
        }

        .search-result-item:hover {
            background: rgba(139, 0, 0, 0.05);
            border-left-color: var(--color-primary);
        }

        .result-reference {
            font-family: var(--font-heading);
            font-size: 1.6rem;
            font-weight: 600;
            color: var(--color-primary);
            margin-bottom: 0.8rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .result-actions {
            display: flex;
            gap: 0.5rem;
        }

        .result-action-btn {
            background: none;
            border: none;
            color: var(--color-text-light);
            font-size: 1.2rem;
            cursor: pointer;
            padding: 0.3rem;
            border-radius: 3px;
            transition: var(--transition-fast);
        }

        .result-action-btn:hover {
            background: var(--color-light);
            color: var(--color-primary);
        }

        .result-text {
            font-size: 1.4rem;
            line-height: 1.6;
            color: var(--color-text);
        }

        .search-highlight {
            background: rgba(212, 175, 55, 0.4);
            padding: 0.1rem 0.3rem;
            border-radius: 3px;
            font-weight: 600;
        }

        .no-search-results {
            text-align: center;
            padding: 3rem 2rem;
            color: var(--color-text-light);
        }

        .no-search-results i {
            font-size: 4rem;
            margin-bottom: 1rem;
            color: var(--color-text-light);
        }

        /* Enhanced Search Input */
        .enhanced-search-container {
            position: relative;
        }

        .search-input-wrapper {
            position: relative;
            margin-bottom: var(--space-sm);
        }

        .search-input-wrapper input {
            padding-right: 8rem !important;
        }

        .search-mode-toggle {
            position: absolute;
            right: 1rem;
            top: 50%;
            transform: translateY(-50%);
            background: var(--color-secondary);
            color: var(--color-dark);
            border: none;
            padding: 0.5rem 0.8rem;
            border-radius: 4px;
            font-size: 1.1rem;
            font-weight: 600;
            cursor: pointer;
            transition: var(--transition-fast);
        }

        .search-mode-toggle:hover {
            background: var(--color-secondary-light);
        }

        /* Search highlighting in main text */
        .verse-search-highlight {
            background: rgba(212, 175, 55, 0.3);
            padding: 0.1rem 0.2rem;
            border-radius: 3px;
            box-shadow: 0 0 5px rgba(212, 175, 55, 0.5);
        }

        .search-active .bible-verse {
            opacity: 0.4;
            transition: opacity 0.3s ease;
        }

        .search-active .bible-verse.has-match {
            opacity: 1;
        }

        /* Visual Art Canvas Background */
        #visualCanvas {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: -1;
            opacity: 0;
            transition: opacity 2s ease-in-out;
            pointer-events: none;
        }

        #visualCanvas.active {
            opacity: 1;
        }

        /* Immersive Mode Overlay */
        .immersive-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(
                180deg,
                rgba(0,0,0,0.85) 0%,
                rgba(10,0,0,0.9) 50%,
                rgba(0,0,0,0.95) 100%
            );
            pointer-events: none;
            opacity: 0;
            transition: opacity 2s ease-in-out;
            z-index: -1;
        }

        .immersive-overlay.active {
            opacity: 1;
        }

        .immersive-overlay.active::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: radial-gradient(
                ellipse at center,
                transparent 0%,
                rgba(0,0,0,0.4) 40%,
                rgba(0,0,0,0.8) 100%
            );
            pointer-events: none;
        }
        
        /* Typography */
        h1, h2, h3, h4, h5, h6 {
            font-family: var(--font-heading);
            font-weight: 700;
            line-height: 1.3;
            letter-spacing: -0.5px;
            color: var(--color-primary);
            margin-bottom: 2rem;
        }
        
        h1 { font-size: 4.8rem; }
        h2 { font-size: 3.6rem; }
        h3 { font-size: 2.8rem; }
        
        a {
            text-decoration: none;
            color: var(--color-primary);
            transition: var(--transition-fast);
        }
        
        a:hover {
            color: var(--color-primary-light);
        }

        /* AI Assistant */
        .ai-assistant {
            position: fixed;
            bottom: 40px;
            right: 40px;
            width: 80px;
            height: 80px;
            background: var(--color-primary);
            color: white;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            box-shadow: 0 10px 30px rgba(139, 0, 0, 0.3);
            z-index: 1000;
            transition: var(--transition-fast);
            font-size: 32px;
            border: none;
        }

        .ai-assistant:hover {
            transform: scale(1.1) translateY(-5px);
            background: var(--color-primary-light);
        }

        .ai-assistant.pulse {
            animation: pulse 2s infinite;
        }

        @keyframes pulse {
            0% { box-shadow: 0 10px 30px rgba(139, 0, 0, 0.3); }
            50% { box-shadow: 0 10px 40px rgba(212, 175, 55, 0.5); }
            100% { box-shadow: 0 10px 30px rgba(139, 0, 0, 0.3); }
        }

        /* Audio Player */
        .audio-player {
            position: fixed;
            bottom: 2rem;
            left: 50%;
            transform: translateX(-50%);
            background: var(--color-card);
            padding: 2rem 3rem;
            border-radius: var(--border-radius-xl);
            box-shadow: var(--shadow-xl);
            display: flex;
            align-items: center;
            gap: 2rem;
            z-index: 999;
            backdrop-filter: blur(10px);
            background: rgba(250, 250, 250, 0.95);
            border: 1px solid rgba(139, 0, 0, 0.1);
            min-width: 500px;
            transition: var(--transition-smooth);
        }

        .audio-player.hidden {
            transform: translateX(-50%) translateY(150%);
            opacity: 0;
        }

        /* Dark audio player in immersive mode */
        .bible-reader.immersive-mode ~ .audio-player {
            background: rgba(20, 20, 20, 0.95) !important;
            border: 1px solid rgba(255, 255, 255, 0.1) !important;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.8) !important;
        }

        .bible-reader.immersive-mode ~ .audio-player .time-display,
        .bible-reader.immersive-mode ~ .audio-player .speed-btn,
        .bible-reader.immersive-mode ~ .audio-player .immersive-toggle {
            color: #888888 !important;  /* Dimmer gray text */
        }

        .bible-reader.immersive-mode ~ .audio-player .progress-bar {
            background: rgba(255, 255, 255, 0.1) !important;  /* Dimmer */
        }

        .bible-reader.immersive-mode ~ .audio-player .progress-fill {
            background: rgba(255, 255, 255, 0.3) !important;  /* Dimmer */
        }

        /* Dim audio buttons in immersive mode */
        .bible-reader.immersive-mode ~ .audio-player .audio-btn {
            opacity: 0.6 !important;
        }

        .bible-reader.immersive-mode ~ .audio-player .audio-btn:hover {
            opacity: 1 !important;
        }

        .bible-reader.immersive-mode ~ .audio-player .speed-btn {
            opacity: 0.5 !important;
        }

        .bible-reader.immersive-mode ~ .audio-player .speed-btn:hover {
            opacity: 0.9 !important;
        }

        .bible-reader.immersive-mode ~ .audio-player .immersive-toggle {
            opacity: 0.7 !important;
        }

        .bible-reader.immersive-mode ~ .audio-player .immersive-toggle:hover {
            opacity: 1 !important;
        }

        /* Immersive mode exit hint */
        .immersive-exit-hint {
            position: fixed;
            top: 2rem;
            right: 2rem;
            background: rgba(20, 20, 20, 0.9);
            color: #888888;
            padding: 0.8rem 1.2rem;
            border-radius: var(--border-radius-md);
            font-size: 1.2rem;
            opacity: 0;
            transition: opacity 0.5s ease;
            pointer-events: none;
            z-index: 998;
            border: 1px solid rgba(255, 255, 255, 0.1);
        }

        .bible-reader.immersive-mode ~ .immersive-exit-hint {
            animation: fadeInOut 5s ease-in-out;
        }

        @keyframes fadeInOut {
            0% { opacity: 0; }
            10% { opacity: 1; }
            90% { opacity: 1; }
            100% { opacity: 0; }
        }

        kbd {
            background: rgba(255, 255, 255, 0.1);
            padding: 0.2rem 0.5rem;
            border-radius: 3px;
            font-family: monospace;
            font-size: 1.1rem;
            color: #cccccc;
        }

        .mobile-hint {
            display: none;
        }

        @media (max-width: 768px) {
            .desktop-hint {
                display: none;
            }
            .mobile-hint {
                display: inline;
            }
        }

        /* Book and Chapter Selector Modals */
        .selector-modal {
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.85);
            z-index: 2001;
            justify-content: center;
            align-items: center;
            animation: fadeIn 0.2s ease;
        }

        .selector-modal.active {
            display: flex;
        }

        .selector-content {
            background: var(--color-bg);
            width: 90%;
            max-width: 600px;
            max-height: 80vh;
            border-radius: var(--border-radius-lg);
            overflow: hidden;
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
            animation: slideUp 0.3s ease;
        }

        .selector-header {
            padding: 1.5rem 2rem;
            background: linear-gradient(135deg, #8B0000, #a52a2a);
            color: white;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .selector-header h3 {
            margin: 0;
            font-size: 2rem;
            color: white;
        }

        .selector-close {
            background: none;
            border: none;
            color: white;
            font-size: 2.4rem;
            cursor: pointer;
            padding: 0;
            width: 35px;
            height: 35px;
        }

        .selector-body {
            padding: 2rem;
            max-height: 60vh;
            overflow-y: auto;
        }

        .selector-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
            gap: 1rem;
        }

        .selector-item {
            padding: 1.5rem;
            background: var(--color-card);
            border: 2px solid transparent;
            border-radius: var(--border-radius-md);
            cursor: pointer;
            transition: all 0.2s ease;
            text-align: center;
            font-weight: 600;
            font-size: 1.5rem;
        }

        .selector-item:hover {
            background: var(--color-secondary);
            color: var(--color-dark);
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(212, 175, 55, 0.3);
        }

        .selector-item.current {
            background: var(--color-primary);
            color: white;
            border-color: var(--color-primary);
        }
        
        /* Verse Study Modal Body */
        .verse-study-body {
            padding: 0;
        }
        
        .verse-study-body button {
            display: block;
            width: 100%;
            text-align: left;
            padding: 1.5rem 2rem;
            border: none;
            background: white;
            color: var(--color-text);
            font-size: 1.5rem;
            cursor: pointer;
            transition: var(--transition-fast);
            border-bottom: 1px solid rgba(0, 0, 0, 0.05);
            font-family: var(--font-body);
        }
        
        .verse-study-body button:last-child {
            border-bottom: none;
        }
        
        .verse-study-body button:hover {
            background: var(--color-light);
            color: var(--color-primary);
        }
        
        .verse-study-divider {
            height: 1px;
            background: rgba(139, 0, 0, 0.2);
            margin: 0.5rem 0;
        }
        
        .verse-study-header {
            background: var(--color-light) !important;
            color: var(--color-primary) !important;
            font-weight: 600 !important;
            font-size: 1.3rem !important;
            padding: 1rem 2rem !important;
            cursor: default !important;
            text-transform: uppercase;
            letter-spacing: 0.05em;
        }
        
        .verse-study-header:hover {
            background: var(--color-light) !important;
            color: var(--color-primary) !important;
        }

        @media (max-width: 768px) {
            .selector-grid {
                grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
                gap: 0.8rem;
            }
            
            .selector-item {
                padding: 1.2rem;
                font-size: 1.4rem;
            }
        }

        /* Dark mode for selectors in immersive mode */
        .bible-reader.immersive-mode ~ .selector-modal {
            background: rgba(0, 0, 0, 0.95);
        }

        .bible-reader.immersive-mode ~ .selector-modal .selector-content {
            background: #1a1a1a;
            border: 1px solid rgba(255, 255, 255, 0.1);
        }

        .bible-reader.immersive-mode ~ .selector-modal .selector-header {
            background: rgba(30, 30, 30, 0.95);
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        }

        .bible-reader.immersive-mode ~ .selector-modal .selector-header h3 {
            color: #cccccc;
        }

        .bible-reader.immersive-mode ~ .selector-modal .selector-close {
            color: #cccccc;
        }

        .bible-reader.immersive-mode ~ .selector-modal .selector-item {
            background: rgba(40, 40, 40, 0.8);
            color: #cccccc;
            border-color: rgba(255, 255, 255, 0.05);
        }

        .bible-reader.immersive-mode ~ .selector-modal .selector-item:hover {
            background: rgba(139, 0, 0, 0.4);
            color: #ffffff;
        }

        .bible-reader.immersive-mode ~ .selector-modal .selector-item.current {
            background: rgba(139, 0, 0, 0.6);
            color: #ffffff;
            border-color: rgba(139, 0, 0, 0.8);
        }
        
        /* Verse Study Modal Dark Mode */
        .bible-reader.immersive-mode ~ .selector-modal .verse-study-body button {
            background: #1a1a1a;
            color: #b8b8b8;
            border-bottom-color: rgba(255, 255, 255, 0.05);
        }
        
        .bible-reader.immersive-mode ~ .selector-modal .verse-study-body button:hover {
            background: #2a2a2a;
            color: #D4AF37;
        }
        
        .bible-reader.immersive-mode ~ .selector-modal .verse-study-divider {
            background: rgba(212, 175, 55, 0.2);
        }
        
        .bible-reader.immersive-mode ~ .selector-modal .verse-study-header {
            background: #2a2a2a !important;
            color: #D4AF37 !important;
        }

        .audio-controls {
            display: flex;
            align-items: center;
            gap: 1.5rem;
        }

        .audio-btn {
            background: var(--color-primary);
            color: var(--color-light);
            border: none;
            width: 50px;
            height: 50px;
            border-radius: var(--border-radius-round);
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.8rem;
            transition: var(--transition-fast);
        }

        .audio-btn:hover {
            background: var(--color-primary-light);
            transform: scale(1.1);
        }

        .audio-btn.play-btn {
            width: 60px;
            height: 60px;
            font-size: 2.2rem;
            background: var(--color-secondary);
            color: var(--color-dark);
        }

        .audio-btn.play-btn:hover {
            background: var(--color-secondary-light);
            box-shadow: var(--shadow-gold);
        }

        .audio-progress {
            flex: 1;
            display: flex;
            align-items: center;
            gap: 1.5rem;
        }

        .progress-bar {
            flex: 1;
            height: 6px;
            background: rgba(139, 0, 0, 0.1);
            border-radius: 3px;
            position: relative;
            cursor: pointer;
        }

        .progress-fill {
            height: 100%;
            background: linear-gradient(90deg, var(--color-primary), var(--color-secondary));
            border-radius: 3px;
            width: 0%;
            transition: width 0.1s linear;
        }

        .time-display {
            font-size: 1.4rem;
            color: var(--color-text-light);
            font-weight: 500;
            min-width: 100px;
        }

        .speed-control {
            position: relative;
        }

        .speed-btn {
            background: rgba(139, 0, 0, 0.1);
            color: var(--color-primary);
            border: 1px solid var(--color-primary);
            padding: 0.5rem 1rem;
            border-radius: var(--border-radius-md);
            cursor: pointer;
            font-size: 1.4rem;
            font-weight: 600;
            transition: var(--transition-fast);
        }

        .speed-btn:hover {
            background: var(--color-primary);
            color: var(--color-light);
        }

        .immersive-toggle {
            background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
            color: var(--color-light);
            border: none;
            padding: 0.8rem 1.6rem;
            border-radius: var(--border-radius-md);
            cursor: pointer;
            font-size: 1.4rem;
            font-weight: 600;
            transition: var(--transition-fast);
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }

        .immersive-toggle:hover {
            transform: scale(1.05);
            box-shadow: var(--shadow-gold);
        }

        .immersive-toggle.active {
            background: linear-gradient(135deg, var(--color-secondary), var(--color-primary));
        }
        
        /* Bible Reader Container */
        .bible-reader {
            display: grid;
            grid-template-columns: 300px 1fr;
            gap: var(--space-lg);
            height: 90vh;
            background: var(--color-bg);
            border-radius: var(--border-radius-lg);
            overflow: hidden;
            box-shadow: var(--shadow-lg);
            max-width: 1400px;
            margin: 0 auto;
            position: relative;
            transition: var(--transition-smooth);
        }

        .bible-reader.immersive-mode {
            background: #000000;
            backdrop-filter: none;
            box-shadow: none;
            border: none;
            grid-template-columns: 1fr !important;
            max-width: 100% !important;
        }
        
        /* Bible Sidebar */
        .bible-sidebar {
            background: var(--color-card);
            padding: var(--space-lg);
            overflow-y: auto;
            border-right: 1px solid rgba(0,0,0,0.1);
            transition: var(--transition-smooth);
        }

        .bible-reader.immersive-mode .bible-sidebar {
            display: none;
        }
        
        /* Hide help button in immersive mode */
        .bible-reader.immersive-mode ~ .help-guide-btn {
            display: none !important;
        }

        .bible-reader.immersive-mode .bible-sidebar h3,
        .bible-reader.immersive-mode .bible-sidebar h4 {
            color: var(--color-secondary);
            text-shadow: 0 0 8px rgba(212, 175, 55, 0.2);
        }

        .sidebar-title {
            font-size: 2.4rem;
            text-align: center;
            margin-bottom: var(--space-md);
        }

        /* Study Tools Section */
        .study-tools {
            margin-bottom: var(--space-md);
            padding: var(--space-sm);
            background: rgba(212, 175, 55, 0.1);
            border-radius: var(--border-radius-md);
            border: 1px solid var(--color-secondary);
        }

        .study-tools h4 {
            font-size: 1.8rem;
            margin-bottom: 1rem;
            color: var(--color-primary);
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }

        .study-tool-btn {
            width: 100%;
            padding: 1rem;
            background: var(--color-bg);
            color: var(--color-text);
            border: 1px solid rgba(139, 0, 0, 0.2);
            border-radius: var(--border-radius-md);
            font-weight: 500;
            font-size: 1.4rem;
            cursor: pointer;
            transition: var(--transition-fast);
            margin-bottom: 0.8rem;
            display: flex;
            align-items: center;
            justify-content: space-between;
        }

        .study-tool-btn:hover {
            background: var(--color-secondary);
            color: var(--color-dark);
            transform: translateY(-2px);
            box-shadow: var(--shadow-sm);
        }

        .study-tool-btn.active {
            background: var(--color-primary);
            color: var(--color-light);
            border-color: var(--color-primary);
        }

        .study-tool-btn i {
            font-size: 1.6rem;
        }

        /* Bookmarks Section */
        .bookmarks-section {
            margin-bottom: var(--space-md);
            padding: var(--space-sm);
            background: rgba(139, 0, 0, 0.05);
            border-radius: var(--border-radius-md);
            border: 1px solid rgba(139, 0, 0, 0.2);
        }

        .bookmarks-section h4 {
            font-size: 1.8rem;
            margin-bottom: 1rem;
            color: var(--color-primary);
            display: flex;
            align-items: center;
            justify-content: space-between;
        }

        .bookmark-count {
            background: var(--color-secondary);
            color: var(--color-dark);
            padding: 0.2rem 0.8rem;
            border-radius: 12px;
            font-size: 1.2rem;
            font-weight: 600;
        }

        .bookmarks-list {
            max-height: 200px;
            overflow-y: auto;
        }

        .bookmarks-list::-webkit-scrollbar {
            width: 6px;
        }

        .bookmarks-list::-webkit-scrollbar-track {
            background: #f0f0f0;
        }

        .bookmarks-list::-webkit-scrollbar-thumb {
            background: var(--color-secondary);
            border-radius: 3px;
        }

        .bookmark-item {
            padding: 0.8rem;
            margin-bottom: 0.5rem;
            background: var(--color-bg);
            border-radius: var(--border-radius-sm);
            display: flex;
            justify-content: space-between;
            align-items: center;
            cursor: pointer;
            transition: var(--transition-fast);
            font-size: 1.4rem;
        }

        .bookmark-item:hover {
            background: var(--color-secondary);
            color: var(--color-dark);
            transform: translateX(5px);
        }

        .bookmark-item .reference {
            font-weight: 600;
        }

        .bookmark-item .remove-bookmark {
            color: var(--color-text-light);
            transition: var(--transition-fast);
        }

        .bookmark-item:hover .remove-bookmark {
            color: var(--color-dark);
        }

        .no-bookmarks {
            text-align: center;
            color: var(--color-text-light);
            font-size: 1.4rem;
            font-style: italic;
            padding: 2rem;
        }

        /* Audio Section in Sidebar */
        .audio-section {
            margin-bottom: var(--space-md);
            padding: var(--space-sm);
            background: rgba(212, 175, 55, 0.1);
            border-radius: var(--border-radius-md);
            border: 1px solid var(--color-secondary);
        }

        .audio-section h4 {
            font-size: 1.8rem;
            margin-bottom: 1rem;
            color: var(--color-primary);
        }

        .audio-select {
            width: 100%;
            padding: 0.8rem 1.2rem;
            font-size: 1.4rem;
            border-radius: var(--border-radius-sm);
            border: 1px solid rgba(0,0,0,0.1);
            background-color: var(--color-bg);
            margin-bottom: 1rem;
        }

        .audio-load-btn {
            width: 100%;
            padding: 1rem;
            background: var(--color-secondary);
            color: var(--color-dark);
            border: none;
            border-radius: var(--border-radius-md);
            font-weight: 600;
            font-size: 1.4rem;
            cursor: pointer;
            transition: var(--transition-fast);
        }

        .audio-load-btn:hover {
            background: var(--color-secondary-light);
            transform: translateY(-2px);
            box-shadow: var(--shadow-gold);
        }
        
        .immersive-sidebar-btn {
            width: 100%;
            padding: 1rem;
            background: linear-gradient(135deg, #1a1a1a, #2a2a2a);
            color: #ffffff;
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: var(--border-radius-md);
            font-weight: 600;
            font-size: 1.4rem;
            cursor: pointer;
            transition: var(--transition-fast);
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.8rem;
        }

        .immersive-sidebar-btn:hover {
            background: linear-gradient(135deg, #2a2a2a, #3a3a3a);
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
        }

        .immersive-sidebar-btn i {
            font-size: 1.6rem;
        }
        
        /* Help Guide Button - Hidden on desktop, shown on mobile */
        .help-guide-btn {
            display: none;
            width: 100%;
            padding: 1rem;
            background: linear-gradient(135deg, #8B0000, #D4AF37);
            color: white;
            border: none;
            border-radius: var(--border-radius-md);
            font-family: var(--font-body);
            font-weight: 600;
            font-size: 1.6rem;
            cursor: pointer;
            transition: var(--transition-fast);
            align-items: center;
            justify-content: center;
            gap: 0.5rem;
            margin-top: 10px;
        }
        
        .help-guide-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 20px rgba(139, 0, 0, 0.4);
        }
        
        .chapter-selector {
            margin-bottom: var(--space-md);
        }
        
        .chapter-selector select, .book-selector select {
            width: 100%;
            padding: 1rem 1.5rem;
            font-size: 1.6rem;
            border-radius: var(--border-radius-md);
            border: 1px solid rgba(0,0,0,0.1);
            background-color: var(--color-bg);
            font-family: var(--font-body);
            margin-bottom: var(--space-sm);
        }
        
        .chapter-selector select:focus {
            outline: none;
            border-color: var(--color-primary);
            box-shadow: var(--shadow-sm);
        }
        
        .chapter-selector button {
            width: 100%;
            padding: 1rem 0;
            background: var(--color-primary);
            color: var(--color-light);
            border: none;
            border-radius: var(--border-radius-md);
            font-family: var(--font-body);
            font-weight: 600;
            font-size: 1.6rem;
            cursor: pointer;
            transition: var(--transition-fast);
        }
        
        .chapter-selector button:hover {
            background: var(--color-primary-light);
            transform: translateY(-3px);
            box-shadow: var(--shadow-sm);
        }
        
        /* Bible Display */
        .bible-display {
            padding: var(--space-lg);
            overflow-y: auto;
            height: calc(100% - var(--space-lg) * 2);
            scroll-behavior: smooth;
            transition: var(--transition-smooth);
            position: relative;
        }

        .bible-reader.immersive-mode .bible-display {
            background: #000000 !important;
            color: #b8b8b8 !important;  /* Softer gray instead of pure white */
            padding: 6rem 8rem !important;
            max-width: 100% !important;
            width: 100% !important;
            margin: 0 !important;
        }

        /* Center the actual content */
        .bible-reader.immersive-mode #chapterContent {
            max-width: 800px;
            margin: 0 auto;
            padding: 0 2rem;
        }
        
        .chapter-title {
            font-size: 3.6rem;
            text-align: center;
            margin-bottom: var(--space-sm);
        }
        
        .summary {
            font-style: italic;
            margin-bottom: var(--space-lg);
            padding: var(--space-md);
            background: rgba(139, 0, 0, 0.05);
            border-radius: var(--border-radius-md);
            border-left: 4px solid var(--color-primary);
            font-size: 1.6rem;
        }
        
        .bible-verse {
            margin-bottom: 1.5rem;
            padding: 0;
            border-radius: 0;
            transition: var(--transition-fast);
            display: flex;
            align-items: flex-start;
            position: relative;
            background: transparent;
            border: none;
        }
        
        .bible-verse:hover {
            background: transparent;
        }

        .bible-verse:hover .verse-ai-btn {
            opacity: 1;
        }
        
        .bible-verse.highlighted {
            background: rgba(201, 162, 39, 0.3);
            border-left: 3px solid #c9a227;
            border-radius: 4px;
            padding-left: 8px;
            margin-left: -11px;
        }

        .bible-verse.currently-reading {
            background: linear-gradient(90deg, rgba(212, 175, 55, 0.15), transparent);
            border-left: 3px solid var(--color-secondary);
            padding-left: 0.5rem;
        }

        .bible-reader.immersive-mode .bible-verse.currently-reading {
            background: rgba(212, 175, 55, 0.15) !important;  /* Warm amber glow */
            border-left: 4px solid #D4AF37 !important;  /* Bright gold border */
            padding-left: 1.5rem !important;
            box-shadow: 0 0 20px rgba(212, 175, 55, 0.2) !important;  /* Subtle glow effect */
        }

        /* Ultra immersive - clean layout with proper spacing */
        .bible-reader.immersive-mode .verse-number {
            color: #555555 !important;  /* Dimmer gray */
            font-weight: 400 !important;
        }

        /* Hide robot button in immersive mode */
        .bible-reader.immersive-mode ~ .ai-assistant {
            display: none !important;
        }

        .bible-reader.immersive-mode .chapter-title {
            color: #cccccc !important;  /* Softer than pure white */
            text-shadow: none !important;
            border: none !important;
        }

        .bible-reader.immersive-mode .summary {
            background: transparent !important;
            border: none !important;
            color: #777777 !important;  /* Very dim for summary */
        }

        .bible-reader.immersive-mode .bible-verse:hover {
            background: transparent !important;
        }

        .bible-reader.immersive-mode .bible-verse {
            background: transparent !important;
            border: none !important;
            margin-bottom: 1.5rem !important;
        }

        .bible-reader.immersive-mode .bible-verse.highlighted {
            background: rgba(201, 162, 39, 0.25) !important;
            border-left: 3px solid #c9a227 !important;
        }

        .bible-reader.immersive-mode .verse-text {
            line-height: 1.8 !important;
            font-size: 1.8rem !important;
        }

        /* Dim buttons in immersive mode for night reading */
        .bible-reader.immersive-mode .hebrew-flip-btn {
            background: rgba(139, 0, 0, 0.4) !important;  /* Dimmer red */
            opacity: 0.7 !important;
        }

        .bible-reader.immersive-mode .study-btn {
            background: rgba(212, 175, 55, 0.4) !important;  /* Dimmer gold */
            opacity: 0.7 !important;
        }

        .bible-reader.immersive-mode .hebrew-flip-btn:hover,
        .bible-reader.immersive-mode .study-btn:hover {
            opacity: 1 !important;
        }

        .verse-number {
            font-family: var(--font-heading);
            font-weight: 700;
            color: var(--color-primary);
            margin-right: var(--space-sm);
            min-width: 2.5rem;
            text-align: right;
        }
        
        .verse-text {
            flex: 1;
        }

        .verse-ai-btn {
            position: absolute;
            right: 50px;
            top: 50%;
            transform: translateY(-50%);
            background: var(--color-secondary);
            color: var(--color-dark);
            border: none;
            width: 30px;
            height: 30px;
            border-radius: 50%;
            cursor: pointer;
            font-size: 14px;
            opacity: 0;
            transition: var(--transition-fast);
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .verse-ai-btn:hover {
            transform: translateY(-50%) scale(1.2);
            box-shadow: var(--shadow-gold);
        }
        
        .bookmark-btn {
            background-color: transparent;
            border: none;
            color: rgba(139, 0, 0, 0.3);
            cursor: pointer;
            font-size: 1.8rem;
            margin-left: var(--space-sm);
            transition: var(--transition-fast);
        }
        
        .bookmark-btn:hover {
            transform: scale(1.2);
            color: var(--color-primary);
        }
        
        .bookmark-btn.bookmarked {
            color: var(--color-secondary);
        }

        .bookmark-saved {
            position: fixed;
            bottom: 20px;
            left: 50%;
            transform: translateX(-50%);
            background: var(--color-secondary);
            color: var(--color-dark);
            padding: 8px 16px;
            border-radius: 20px;
            font-size: 14px;
            opacity: 0;
            transition: opacity 0.3s ease;
            z-index: 1000;
        }
        
        .bookmark-saved.show {
            opacity: 1;
        }

        /* ============================================
           HEBREW INTERLINEAR STYLES (OPTIONAL FEATURE)
           Hidden by default - shows only when toggled
           ============================================ */
        
        .interlinear-verse {
            display: none; /* HIDDEN BY DEFAULT */
            flex-wrap: wrap;
            gap: 15px;
            margin: 10px 0 15px 0;
            padding: 15px;
            background: rgba(212, 175, 55, 0.05);
            border-radius: var(--border-radius-md);
            border-left: 3px solid var(--color-secondary);
        }

        .interlinear-verse.show {
            display: flex; /* Only show when .show class is added */
        }

        .word-unit {
            display: inline-flex;
            flex-direction: column;
            align-items: center;
            cursor: pointer;
            padding: 8px 12px;
            border-radius: var(--border-radius-sm);
            transition: var(--transition-fast);
            position: relative;
        }

        .word-unit:hover {
            background: var(--color-light);
            box-shadow: var(--shadow-sm);
        }

        .hebrew-word {
            font-size: 20px;
            font-weight: 600;
            color: var(--color-text);
            font-family: 'Times New Roman', serif;
            direction: rtl;
            margin-bottom: 4px;
        }

        .transliteration {
            font-size: 11px;
            color: var(--color-text-light);
            font-style: italic;
            margin-bottom: 2px;
        }

        .word-unit .english-word {
            font-size: 13px;
            color: var(--color-primary);
            font-weight: 500;
        }

        .meaning-tooltip {
            display: none;
            position: absolute;
            bottom: 100%;
            left: 50%;
            transform: translateX(-50%);
            background: var(--color-dark);
            color: var(--color-light);
            padding: 12px 15px;
            border-radius: var(--border-radius-md);
            box-shadow: var(--shadow-lg);
            width: 300px;
            z-index: 1000;
            margin-bottom: 8px;
            font-size: 12px;
            line-height: 1.5;
        }

        .meaning-tooltip::after {
            content: '';
            position: absolute;
            top: 100%;
            left: 50%;
            transform: translateX(-50%);
            border: 6px solid transparent;
            border-top-color: var(--color-dark);
        }

        .word-unit:hover .meaning-tooltip {
            display: block;
        }

        .tooltip-header {
            font-weight: bold;
            color: var(--color-secondary);
            margin-bottom: 6px;
            font-size: 13px;
        }

        .tooltip-twot {
            font-size: 10px;
            color: var(--color-secondary-light);
            margin-bottom: 6px;
            cursor: pointer;
            display: inline-block;
        }

        .tooltip-twot:hover {
            text-decoration: underline;
        }

        .tooltip-meaning {
            margin-top: 6px;
            color: var(--color-light-2);
        }

        .tooltip-meaning strong {
            color: var(--color-secondary-light);
        }

        /* Hebrew Toggle Button - Single elegant button */
        .hebrew-toggle-btn {
            width: 100%;
            padding: 12px 15px;
            margin: 15px 0;
            background: linear-gradient(135deg, rgba(139, 0, 0, 0.05), rgba(212, 175, 55, 0.05));
            color: var(--color-primary);
            border: 1px solid rgba(139, 0, 0, 0.2);
            border-radius: var(--border-radius-md);
            cursor: pointer;
            font-size: 13px;
            font-weight: 500;
            transition: var(--transition-fast);
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
        }

        .hebrew-toggle-btn:hover {
            background: linear-gradient(135deg, rgba(139, 0, 0, 0.08), rgba(212, 175, 55, 0.08));
            border-color: var(--color-primary);
            transform: translateY(-1px);
        }

        .hebrew-toggle-btn.active {
            background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
            color: white;
            border-color: transparent;
            box-shadow: var(--shadow-gold);
        }

        .hebrew-toggle-btn i {
            font-size: 14px;
        }

        /* Hide class for individual elements */
        .hidden {
            display: none !important;
        }

        /* Mobile responsive for Hebrew */
        @media (max-width: 768px) {
            .interlinear-verse.show {
                gap: 12px;
                padding: 12px;
            }
            
            .word-unit {
                padding: 6px 10px;
            }
            
            .meaning-tooltip {
                width: 250px;
                font-size: 11px;
            }
            
            .hebrew-word {
                font-size: 18px;
            }
        }

        .chapter-navigation {
            display: flex;
            flex-direction: column;
            gap: var(--space-sm);
        }

        .chapter-navigation button:hover {
            background: #a52a2a !important;
            transform: translateY(-1px);
            box-shadow: 0 4px 12px rgba(139, 0, 0, 0.3);
        }

        .compare-bookmarks-btn {
            width: 100%;
            padding: 0.8rem;
            margin: 1rem 0;
            background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
            color: white;
            border: none;
            border-radius: var(--border-radius-md);
            font-weight: 600;
            font-size: 1.3rem;
            cursor: pointer;
            transition: var(--transition-fast);
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.5rem;
        }

        .compare-bookmarks-btn:hover {
            transform: translateY(-2px);
            box-shadow: var(--shadow-gold);
        }
        
        /* Modal for Study Tools */
        .study-modal {
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.8);
            z-index: 2000;
            justify-content: center;
            align-items: center;
            animation: fadeIn 0.3s ease;
        }

        .study-modal.active {
            display: flex;
        }

        .modal-content {
            background: var(--color-bg);
            width: 90%;
            max-width: 900px;
            max-height: 85vh;
            border-radius: var(--border-radius-xl);
            overflow: hidden;
            box-shadow: var(--shadow-xl);
            display: flex;
            flex-direction: column;
            animation: slideUp 0.4s ease;
        }

        @keyframes slideUp {
            from { transform: translateY(50px); opacity: 0; }
            to { transform: translateY(0); opacity: 1; }
        }

        @keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }

        .modal-header {
            padding: 2rem 3rem;
            background: linear-gradient(135deg, #8B4513, #A0522D);
            color: var(--color-light);
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .modal-header h2 {
            color: var(--color-light);
            margin: 0;
            font-size: 2.8rem;
        }

        .modal-close {
            background: none;
            border: none;
            color: var(--color-light);
            font-size: 2.4rem;
            cursor: pointer;
            padding: 0;
            width: 40px;
            height: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            transition: var(--transition-fast);
        }

        .modal-close:hover {
            background: rgba(255, 255, 255, 0.2);
        }

        .modal-body {
            padding: 3rem;
            overflow-y: auto;
            flex: 1;
        }

        /* Timeline Styles */
        .timeline-container {
            position: relative;
            padding-left: 4rem;
        }

        .timeline-line {
            position: absolute;
            left: 1.5rem;
            top: 0;
            bottom: 0;
            width: 2px;
            background: linear-gradient(180deg, var(--color-secondary), var(--color-primary));
        }

        .timeline-event {
            position: relative;
            margin-bottom: 3rem;
            padding: 2rem;
            background: var(--color-card);
            border-radius: var(--border-radius-md);
            box-shadow: var(--shadow-sm);
            transition: var(--transition-fast);
        }

        .timeline-event:hover {
            transform: translateX(10px);
            box-shadow: var(--shadow-md);
        }

        .timeline-event::before {
            content: '';
            position: absolute;
            left: -2.5rem;
            top: 2rem;
            width: 12px;
            height: 12px;
            background: var(--color-secondary);
            border: 3px solid var(--color-bg);
            border-radius: 50%;
            box-shadow: 0 0 0 4px rgba(212, 175, 55, 0.2);
        }

        .timeline-event h4 {
            color: var(--color-primary);
            margin-bottom: 1rem;
            font-size: 2rem;
        }

        .timeline-event .event-description {
            color: var(--color-text);
            line-height: 1.6;
            margin-bottom: 0.8rem;
        }

        .timeline-event .event-reference {
            color: var(--color-text-light);
            font-size: 1.4rem;
            font-style: italic;
            display: inline-block;
            padding: 0.4rem 1rem;
            background: rgba(212, 175, 55, 0.1);
            border-radius: var(--border-radius-sm);
            cursor: pointer;
            transition: var(--transition-fast);
        }

        .timeline-event .event-reference:hover {
            background: var(--color-secondary);
            color: var(--color-dark);
        }

        /* Characters Grid */
        .characters-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
            gap: 2rem;
        }

        .character-card {
            background: var(--color-card);
            border-radius: var(--border-radius-lg);
            padding: 2rem;
            box-shadow: var(--shadow-sm);
            transition: var(--transition-fast);
            border-left: 4px solid var(--color-secondary);
        }

        .character-card:hover {
            transform: translateY(-5px);
            box-shadow: var(--shadow-md);
        }

        .character-name {
            font-family: var(--font-heading);
            font-size: 2.2rem;
            color: var(--color-primary);
            margin-bottom: 1rem;
            display: flex;
            align-items: center;
            gap: 1rem;
        }

        .character-description {
            color: var(--color-text);
            line-height: 1.6;
            font-size: 1.5rem;
        }

        /* Key Terms Styles */
        .key-terms-container {
            max-width: 100%;
        }

        .chapter-terms {
            margin-bottom: 3rem;
            padding: 2rem;
            background: var(--color-card);
            border-radius: var(--border-radius-lg);
            box-shadow: var(--shadow-sm);
        }

        .chapter-terms h4 {
            font-size: 2rem;
            color: var(--color-primary);
            margin-bottom: 1.5rem;
            padding-bottom: 1rem;
            border-bottom: 2px solid rgba(139, 0, 0, 0.1);
        }

        .terms-list {
            display: flex;
            flex-wrap: wrap;
            gap: 1rem;
        }

        .term-tag {
            padding: 0.6rem 1.2rem;
            background: linear-gradient(135deg, rgba(139, 0, 0, 0.1), rgba(212, 175, 55, 0.1));
            border: 1px solid rgba(139, 0, 0, 0.2);
            border-radius: 20px;
            font-size: 1.4rem;
            color: var(--color-text);
            transition: var(--transition-fast);
            cursor: pointer;
        }

        .term-tag:hover {
            background: var(--color-secondary);
            color: var(--color-dark);
            transform: translateY(-2px);
            box-shadow: var(--shadow-sm);
        }

        /* Responsive Design */
        @media (max-width: 992px) {
            .bible-reader {
                grid-template-columns: 1fr;
                height: auto;
            }
            
            .bible-sidebar {
                border-right: none;
                border-bottom: 1px solid rgba(0,0,0,0.1);
            }

            .audio-player {
                min-width: 90%;
                padding: 1.5rem 2rem;
            }

            .search-results-panel {
                width: calc(100% - 40px);
                right: -100%;
            }

            .search-results-panel.active {
                right: 20px;
            }
        }
        
        @media (max-width: 768px) {
            /* Remove body padding on mobile */
            body {
                padding: 0;
            }
            
            /* Hide prev/next chapter buttons on mobile */
            .chapter-navigation {
                display: none !important;
            }
            
            /* Hide book and chapter selector dropdowns on mobile */
            .book-selector,
            .chapter-selector {
                display: none !important;
            }
            
            /* Hide study tools section on mobile - will be in menu instead */
            .study-tools {
                display: none !important;
            }
            
            /* Hide floating GPT icon on mobile - accessible from study menu */
            .ai-assistant {
                display: none !important;
            }
            
            /* Show help guide button only on mobile */
            .help-guide-btn {
                display: flex !important;
            }
            
            .search-results-panel {
                width: 100%;
                right: -100%;
            }
            
            .search-results-panel.active {
                right: 0;
            }
            
            /* Mobile: Fix button alignment - always on right side */
            .bible-verse {
                display: flex;
                flex-direction: row;
                align-items: flex-start;
            }
            
            .verse-content {
                flex: 1;
                display: flex;
                align-items: flex-start;
                gap: 0.5rem;
            }
            
            .verse-buttons {
                display: flex;
                gap: 0.3rem;
                flex-shrink: 0;
                margin-left: auto;
            }
            
            /* Mobile immersive mode: Better text sizing and spacing */
            .bible-reader.immersive-mode .bible-display {
                padding: 3rem 2rem !important;
            }
            
            .bible-reader.immersive-mode #chapterContent {
                max-width: 100%;
                padding: 0 1rem;
            }
            
            .bible-reader.immersive-mode .verse-text {
                font-size: 1.6rem !important;
                line-height: 1.7 !important;
            }
            
            .bible-reader.immersive-mode .chapter-title {
                font-size: 2.4rem !important;
            }
            
            /* Smaller audio bar on mobile */
            .audio-player {
                padding: 1rem 1.5rem;
                min-width: 0;
                width: 95%;
                bottom: 1rem;
            }
            
            .audio-btn {
                width: 40px;
                height: 40px;
                font-size: 1.4rem;
            }
            
            .audio-controls {
                gap: 1rem;
            }
            
            .time-display {
                font-size: 1.2rem;
            }
            
            .speed-btn {
                font-size: 1.2rem;
                padding: 0.4rem 0.8rem;
            }
            
            /* Single scroll: make bible-reader the only scrolling container */
            .bible-reader {
                height: 100vh !important;
                overflow-y: auto !important;
                overflow-x: hidden !important;
                -webkit-overflow-scrolling: touch;
                margin: 0 !important;
                border-radius: 0 !important;
            }
            
            /* Sidebar and display don't scroll separately */
            .bible-sidebar {
                overflow-y: visible !important;
                height: auto !important;
            }
            
            .bible-display {
                overflow-y: visible !important;
                height: auto !important;
            }
            
            #chapterContent {
                touch-action: pan-y;
            }
        }
        
        @media (max-width: 576px) {
            html {
                font-size: 55%;
            }
            
            .bible-verse {
                flex-wrap: wrap;
            }
            
            .bookmark-btn {
                margin-left: auto;
                margin-top: var(--space-xs);
            }

            .audio-player {
                flex-direction: column;
                gap: 1rem;
            }

            .audio-controls {
                width: 100%;
                justify-content: center;
            }

            .ai-assistant {
                width: 60px;
                height: 60px;
                font-size: 24px;
                bottom: 20px;
                right: 20px;
            }
        }
        /* ========== TWOT Modal Styles ========== */
.twot-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(10, 10, 10, 0.85);
    backdrop-filter: blur(8px);
    z-index: 10000;
}

.twot-modal.active {
    display: flex;
    align-items: center;
    justify-content: center;
}

.twot-modal-content {
    background: var(--color-bg);
    border-radius: var(--border-radius-lg);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3), 
                0 0 40px rgba(212, 175, 55, 0.2);
    max-width: 800px;
    width: 90%;
    max-height: 85vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    border: 2px solid var(--color-secondary);
    animation: slideUp 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.twot-modal-header {
    background: linear-gradient(135deg, #8B4513, #A0522D);
    color: var(--color-secondary);
    padding: var(--space-md);
    border-bottom: 2px solid var(--color-secondary);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.twot-modal-title {
    font-family: var(--font-heading);
    font-size: 2.4rem;
    font-weight: 700;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 1rem;
    color: #ffffff;
}

.twot-number-badge {
    background: var(--color-secondary);
    color: var(--color-dark);
    padding: 0.4rem 1rem;
    border-radius: var(--border-radius-sm);
    font-size: 1.6rem;
    font-weight: 600;
}

.twot-modal-close {
    background: rgba(212, 175, 55, 0.2);
    border: 2px solid var(--color-secondary);
    color: var(--color-secondary);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    font-size: 2rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition-fast);
}

.twot-modal-close:hover {
    background: var(--color-secondary);
    color: var(--color-dark);
    transform: rotate(90deg);
}

.twot-modal-body {
    padding: var(--space-md);
    overflow-y: auto;
    flex: 1;
}

/* Hebrew Text Display */
.hebrew-text-primary {
    font-family: "Frank Ruhl Libre", "SBL Hebrew", "Times New Roman", serif;
    font-size: 3.5rem;
    font-weight: 500;
    color: var(--color-primary);
    direction: rtl;
    unicode-bidi: embed;
    display: inline-block;
    line-height: 1.4;
    letter-spacing: 0.02em;
}

.twot-hebrew-section {
    text-align: center;
    padding: 2rem 0;
    margin: 1.5rem 0;
    background: linear-gradient(135deg, rgba(139, 0, 0, 0.03), rgba(212, 175, 55, 0.05));
    border-radius: var(--border-radius-lg);
    border: 1px solid rgba(212, 175, 55, 0.2);
}

.twot-header-enhanced {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid var(--color-secondary);
}

.twot-header-enhanced h3 {
    font-family: var(--font-heading);
    font-size: 1.8rem;
    color: var(--color-primary);
    margin: 0;
}

.hebrew-toggle-btn {
    background: linear-gradient(135deg, var(--color-secondary), #e6c875);
    border: none;
    border-radius: var(--border-radius-md);
    padding: 0.6rem 1.2rem;
    font-family: "Frank Ruhl Libre", "SBL Hebrew", serif;
    font-size: 1.5rem;
    color: white;
    cursor: pointer;
    transition: var(--transition-fast);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    font-weight: 600;
}

.hebrew-toggle-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(212, 175, 55, 0.3);
}

.hebrew-mode-indicator {
    text-align: center;
    font-size: 1.3rem;
    color: var(--color-text-light);
    font-style: italic;
    margin-top: 0.5rem;
}

.twot-transliteration {
    text-align: center;
    font-size: 2.2rem;
    color: var(--color-accent);
    font-style: italic;
    margin: 1.5rem 0;
    font-weight: 500;
    font-family: var(--font-heading);
}

.twot-gloss {
    font-size: 1.6rem;
    color: var(--color-text);
    line-height: 1.8;
    margin: 1.5rem 0;
    padding: 1.5rem;
    background: rgba(245, 245, 245, 0.5);
    border-radius: var(--border-radius-md);
    border-left: 4px solid var(--color-secondary);
    border-left: 4px solid var(--color-secondary);
    padding-left: var(--space-sm);
}

.twot-strongs-refs {
    margin: 1.5rem 0;
    padding: 1.2rem;
    background: rgba(212, 175, 55, 0.08);
    border-radius: var(--border-radius-md);
    font-size: 1.4rem;
}

.strongs-label {
    font-weight: 600;
    color: var(--color-text);
    margin-right: 0.5rem;
    font-family: var(--font-heading);
}

.strongs-ref {
    display: inline-block;
    background: white;
    padding: 0.3rem 0.7rem;
    margin: 0.2rem;
    border-radius: var(--border-radius-sm);
    border: 1px solid var(--color-secondary);
    color: var(--color-primary);
    font-weight: 600;
    font-family: monospace;
    font-size: 1.3rem;
}

.twot-derivatives {
    margin: var(--space-md) 0;
    padding-top: 1.5rem;
    border-top: 2px solid rgba(212, 175, 55, 0.3);
}

.twot-derivatives h4 {
    font-family: var(--font-heading);
    color: var(--color-primary);
    margin-bottom: 1rem;
    font-size: 1.7rem;
}

.derivatives-list {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.twot-derivative-link {
    display: block;
    background: white;
    padding: 1rem;
    border: 1px solid rgba(212, 175, 55, 0.2);
    border-radius: var(--border-radius-md);
    text-decoration: none;
    color: var(--color-text);
    transition: var(--transition-fast);
}

.twot-derivative-link:hover {
    background: rgba(212, 175, 55, 0.05);
    border-color: var(--color-secondary);
    transform: translateX(5px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.deriv-number {
    font-weight: 700;
    color: var(--color-primary);
    margin-right: 0.5rem;
    font-size: 1.1em;
}

.deriv-hebrew {
    font-family: "Frank Ruhl Libre", "SBL Hebrew", "Times New Roman", serif;
    font-size: 1.6rem;
    color: var(--color-accent);
    direction: rtl;
    unicode-bidi: embed;
    margin: 0 0.5rem;
}

.deriv-translit {
    font-style: italic;
    color: var(--color-text-light);
    margin: 0 0.5rem;
}

.deriv-gloss {
    color: var(--color-text);
    margin-left: 0.5rem;
}

/* TWOT Search Bar */
.twot-search-container {
    padding: 1.5rem;
    background: linear-gradient(135deg, #8B4513, #A0522D);
    border-bottom: 2px solid rgba(255, 255, 255, 0.3);
    display: flex;
    gap: 1rem;
    align-items: center;
}

.twot-search-input {
    flex: 1;
    padding: 1rem 1.5rem;
    border: 2px solid rgba(255, 255, 255, 0.4);
    border-radius: var(--border-radius-md);
    font-size: 1.4rem;
    font-family: var(--font-body);
    background: white;
    color: var(--color-text);
    transition: var(--transition-fast);
}

.twot-search-input:focus {
    outline: none;
    border-color: #D4AF37;
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.2);
}

.twot-search-input::placeholder {
    color: #999;
    font-size: 1.3rem;
}

.twot-search-btn {
    background: linear-gradient(135deg, var(--color-secondary), #e6c875);
    border: none;
    border-radius: var(--border-radius-md);
    padding: 1rem 2rem;
    color: white;
    font-size: 1.6rem;
    cursor: pointer;
    transition: var(--transition-fast);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.twot-search-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(212, 175, 55, 0.3);
}

.twot-derivative-link:hover {
    background: var(--color-primary);
    color: var(--color-secondary);
}

.twot-full-entry {
    font-size: 1.6rem;
    line-height: 1.8;
    color: var(--color-text);
    margin-top: var(--space-md);
}

.twot-full-entry p {
    margin-bottom: var(--space-sm);
}

.hebrew-word {
    cursor: pointer;
    padding: 0.2rem 0.4rem;
    border-radius: 3px;
    transition: var(--transition-fast);
    position: relative;
}

.hebrew-word:hover {
    background: rgba(212, 175, 55, 0.2);
    color: var(--color-primary);
}

.twot-loading {
    text-align: center;
    padding: var(--space-lg);
    color: var(--color-text-light);
}

.twot-loading i {
    font-size: 3rem;
    color: var(--color-secondary);
    animation: spin 1s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}
.twot-full-entry {
    font-size: 1.5rem;
    line-height: 1.9;
    color: var(--color-text);
    margin-top: var(--space-md);
}

.twot-full-entry p {
    margin-bottom: 1.5rem;
    line-height: 1.8;
}
@media (max-width: 768px) {
    .twot-modal-content {
        width: 95%;
        max-height: 90vh;
    }
    
    .twot-modal-title {
        font-size: 2rem;
    }
    
    .twot-transliteration {
        font-size: 2.4rem;
    }
}
/* Enhanced TWOT text formatting */
.twot-paragraph {
    margin-bottom: 1.5rem;
    line-height: 1.8;
    text-align: justify;
}

.twot-section-header {
    font-family: var(--font-heading);
    color: var(--color-primary);
    font-size: 1.7rem;
    margin-top: 2rem;
    margin-bottom: 1rem;
    font-weight: 600;
}

.bible-ref {
    color: var(--color-secondary);
    font-weight: 600;
    white-space: nowrap;
}

.twot-bibliography {
    margin-top: 2.5rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(212, 175, 55, 0.3);
}

.twot-full-entry {
    font-size: 1.5rem;
    line-height: 1.9;
    color: var(--color-text);
    margin-top: var(--space-md);
    max-width: 100%;
}

.twot-full-entry h5 {
    margin-top: 2rem;
    margin-bottom: 1rem;
}
    
.twot-word {
    cursor: pointer;
    transition: all 0.2s ease;
}
.twot-word:hover {
    color: var(--color-secondary);
    text-decoration: underline;
    text-decoration-style: dotted;
    font-weight: 600;
}

/* Hebrew text in immersive mode - white for visibility */
.bible-reader.immersive-mode .verse-text.hebrew-mode {
    color: #ffffff !important;
    text-shadow: 0 0 10px rgba(212, 175, 55, 0.3);
}

/* ============================================================
   MOBILE UX FIXES — Agent λ (Mobile UX Specialist)
   2026-02-02 — Agarikon Workshop
   ============================================================ */

/* [M2-SKIP] Skip to content link */
.skip-to-content{position:absolute;top:-100%;left:50%;transform:translateX(-50%);background:var(--color-primary);color:#fff;padding:1.2rem 2.4rem;border-radius:0 0 8px 8px;font-size:1.6rem;font-weight:600;z-index:10000;text-decoration:none;transition:top 0.3s ease;}
.skip-to-content:focus{top:0;}

/* [M2-MOTION] Respect prefers-reduced-motion */
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;scroll-behavior:auto!important;}}

/* [M2-FOCUS] Focus-visible for all interactive elements */
a:focus-visible,button:focus-visible,[role="button"]:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--color-secondary);outline-offset:2px;}

/* [M2-TOUCH] Minimum 44px touch targets */
.audio-btn{min-width:44px;min-height:44px;}
.twot-modal-close{min-width:48px;min-height:48px;width:48px;height:48px;}
.ai-close{min-width:44px;min-height:44px;}
.close-search-btn{min-width:44px;min-height:44px;width:44px;height:44px;}
.bookmark-btn{min-width:44px;min-height:44px;}
.verse-tool-btn{min-width:44px;min-height:44px;}

/* [M2-SCROLL] Prevent horizontal overflow */
html,body{overflow-x:hidden;max-width:100vw;}

/* [M2-SAFE] Safe area insets */
@supports(padding:env(safe-area-inset-top)){body{padding-top:env(safe-area-inset-top);}}

/* [M2-NAV] Add minimal mobile navigation bar */
.mobile-site-nav{display:none;position:fixed;top:0;left:0;right:0;background:var(--color-primary);color:#fff;z-index:2000;padding:0;font-size:1.4rem;box-shadow:0 2px 8px rgba(0,0,0,0.3);}.mobile-nav-header{display:flex;align-items:center;justify-content:space-between;padding:0.8rem 1.5rem;min-height:44px;}.mobile-nav-title{font-weight:700;font-size:1.5rem;color:#fff;text-decoration:none;display:flex;align-items:center;gap:0.5rem;}.hamburger-btn{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0.5rem;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm);transition:background 0.2s ease;}.hamburger-btn:hover,.hamburger-btn:focus{background:rgba(255,255,255,0.1);}.hamburger-icon{width:24px;height:18px;position:relative;display:flex;flex-direction:column;justify-content:space-between;}.hamburger-icon span{display:block;width:100%;height:3px;background:#fff;border-radius:2px;transition:all 0.3s ease;}.hamburger-btn.active .hamburger-icon span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}.hamburger-btn.active .hamburger-icon span:nth-child(2){opacity:0;}.hamburger-btn.active .hamburger-icon span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px);}.mobile-nav-menu{display:none;background:#000;border-top:1px solid rgba(255,255,255,0.1);padding:0.5rem 0;}.mobile-nav-menu.open{display:block;}.mobile-nav-menu a{color:#fff;text-decoration:none;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:center;gap:1rem;font-weight:500;min-height:48px;transition:background 0.2s ease;}.mobile-nav-menu a:hover,.mobile-nav-menu a:focus{background:rgba(255,255,255,0.1);color:var(--color-secondary);}.mobile-nav-menu a i{width:20px;text-align:center;}@media(max-width:768px){.mobile-site-nav{display:block;}body{padding-top:60px!important;}.bible-reader{margin-top:0!important;padding-top:10px!important;}.bible-display{padding-top:10px!important;}.book-selector,.chapter-selector{display:none!important;}.bookmarks-section{display:none!important;}.sidebar-title{display:none!important;}.hebrew-toggle-btn,.immersive-sidebar-btn,.help-guide-btn{display:none!important;}.audio-section,.study-tools{display:none!important;}.chapter-title{margin-top:10px!important;}.bible-sidebar{padding:0!important;margin:0!important;border:none!important;min-height:0!important;}.enhanced-search-container{display:none!important;}.search-results-panel .close-search-btn{display:none!important;}.search-results-panel.active .close-search-btn{display:flex!important;position:fixed!important;top:70px!important;right:10px!important;z-index:2010!important;background:#8B0000!important;color:#fff!important;width:50px!important;height:50px!important;border-radius:50%!important;font-size:24px!important;box-shadow:0 2px 10px rgba(0,0,0,0.3)!important;}.bible-reader.immersive-mode .chapter-title{margin-top:70px!important;}}

/* [M2-C5] Remove body padding on tablet too */
@media(max-width:992px){body{padding:0!important;}}

/* [M2-I2] Search panel full width on mobile */
@media(max-width:768px){
    .search-results-panel{width:100%!important;right:-100%!important;}
    .search-results-panel.active{right:0!important;}
}

/* [M2-TWOT] TWOT modal full-screen on mobile */
@media(max-width:768px){
    .twot-modal-content{width:100%!important;max-width:100%!important;max-height:100vh!important;max-height:100dvh!important;border-radius:0!important;height:100vh!important;height:100dvh!important;}
}

/* [M2-BACK] Back to top button */
.back-to-top{position:fixed;bottom:80px;right:20px;width:44px;height:44px;background:var(--color-primary);color:#fff;border:none;border-radius:50%;font-size:1.8rem;cursor:pointer;z-index:1500;display:none;align-items:center;justify-content:center;box-shadow:var(--shadow-md);transition:var(--transition-fast);}
.back-to-top.visible{display:flex;}
.back-to-top:hover{background:var(--color-secondary);color:var(--color-dark);transform:translateY(-3px);}

/* Deep Analysis Confirmation Modal */
.gpt-confirm-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.7);
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.2s ease;
}
.gpt-confirm-overlay.show { opacity: 1; }
.gpt-confirm-box {
    background: linear-gradient(135deg, #1a1a2e, #2c1810);
    border: 2px solid #D4AF37;
    border-radius: 16px;
    padding: 40px 48px;
    max-width: 600px;
    width: 90%;
    color: #f5f0e8;
    box-shadow: 0 20px 60px rgba(0,0,0,0.6);
    text-align: center;
}
.gpt-confirm-box h3 {
    color: #D4AF37;
    margin: 0 0 16px 0;
    font-size: 1.8rem;
}
.gpt-confirm-box p {
    margin: 0 0 28px 0;
    font-size: 1.3rem;
    line-height: 1.6;
    opacity: 0.9;
}
.gpt-confirm-buttons {
    display: flex;
    gap: 12px;
    justify-content: center;
}
.gpt-confirm-buttons button {
    padding: 14px 36px;
    border-radius: 10px;
    border: none;
    font-size: 1.2rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}
.gpt-btn-go {
    background: #D4AF37;
    color: #1a1a2e;
}
.gpt-btn-go:hover { background: #e6c875; }
.gpt-btn-cancel {
    background: rgba(255,255,255,0.1);
    color: #f5f0e8;
    border: 1px solid rgba(255,255,255,0.2) !important;
}
.gpt-btn-cancel:hover { background: rgba(255,255,255,0.2); }

/* Interlinear View */
.interlinear-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px;
    padding: 16px;
    margin: 8px 0;
    background: linear-gradient(135deg, #fef9f3, #fdf6ed);
    border: 1px solid rgba(212,175,55,0.3);
    border-radius: 8px;
    direction: rtl;
}
.interlinear-word {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    min-width: 80px;
    padding: 12px;
    cursor: pointer;
    border-radius: 6px;
    transition: background 0.2s;
}
.interlinear-word:hover {
    background: rgba(212,175,55,0.15);
}
.interlinear-hebrew {
    font-family: 'SBL Hebrew', 'Ezra SIL', 'Times New Roman', serif;
    font-size: 2.8rem;
    color: #2c1810;
    direction: rtl;
}
.interlinear-strongs {
    font-size: 1.1rem;
    color: #8b4513;
    font-weight: 600;
    opacity: 0.7;
}
.interlinear-gloss {
    font-size: 1.3rem;
    color: #555;
    direction: ltr;
    text-align: center;
    font-style: italic;
}
.interlinear-twot {
    font-size: 1.0rem;
    color: #D4AF37;
    cursor: pointer;
    font-weight: 600;
}
.interlinear-twot:hover {
    text-decoration: underline;
}
.interlinear-morph {
    font-size: 0.9rem;
    color: #999;
    font-family: monospace;
}
.interlinear-toggle-btn {
    background: linear-gradient(135deg, #D4AF37, #B8960C);
    color: #1a1a2e;
    border: none;
    padding: 2px 8px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.8rem;
    font-weight: 600;
    margin-left: 4px;
    transition: all 0.2s;
}
.interlinear-toggle-btn:hover {
    filter: brightness(1.2);
    transform: scale(1.05);
}
@media (max-width: 768px) {
    .interlinear-row { gap: 10px; padding: 10px; }
    .interlinear-hebrew { font-size: 1.2rem; }
    .interlinear-word { min-width: 50px; padding: 6px; }
}
/* Dark mode */
.dark-mode .interlinear-row {
    background: linear-gradient(135deg, #1a1a2e, #16213e);
    border-color: rgba(212,175,55,0.2);
}
.dark-mode .interlinear-hebrew { color: #f5f0e8; }
.dark-mode .interlinear-gloss { color: #aaa; }

/* Pronunciation Transliteration */
.interlinear-singable {
    font-size: 1.2rem;
    color: #0097a7;
    font-weight: 600;
    direction: ltr;
    text-align: center;
    letter-spacing: 0.3px;
}
.dark-mode .interlinear-singable { color: #4dd0e1; }

/* Greek NT Interlinear */
.greek-interlinear-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 14px;
    padding: 16px;
    margin: 8px 0;
    background: linear-gradient(135deg, #f9f3f3, #fdf6f0);
    border: 1px solid rgba(139,0,0,0.2);
    border-radius: 8px;
    direction: ltr;
}
.interlinear-greek-text {
    font-family: 'SBL Greek', 'Times New Roman', serif;
    font-size: 2.6rem;
    color: #8B0000;
    direction: ltr;
}
.greek-interlinear-word {
    border-left: 2px solid rgba(139,0,0,0.1);
    padding-left: 12px;
    min-width: 80px;
    padding: 12px;
}
.dark-mode .greek-interlinear-row {
    background: linear-gradient(135deg, #1a1520, #201520);
    border-color: rgba(139,0,0,0.3);
}
.dark-mode .interlinear-greek-text { color: #ff6b6b; }


/* Bible Study Chat Panel */
.study-chat-overlay {
    display: none;
    position: fixed;
    top: 0; right: 0; bottom: 0; left: 0;
    background: rgba(0,0,0,0.5);
    z-index: 10000;
    justify-content: flex-end;
}
.study-chat-overlay.active { display: flex; }
.study-chat-panel {
    width: 440px;
    max-width: 100%;
    height: 100%;
    background: #fdf8f0;
    display: flex;
    flex-direction: column;
    box-shadow: -4px 0 20px rgba(0,0,0,0.3);
    animation: slideIn 0.3s ease;
}
@keyframes slideIn {
    from { transform: translateX(100%); }
    to { transform: translateX(0); }
}
.study-chat-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    background: linear-gradient(135deg, #1a1a2e, #2c1810);
    color: #f5f0e8;
    border-bottom: 2px solid #D4AF37;
}
.study-chat-header h3 {
    margin: 0;
    font-size: 1.1rem;
    color: #D4AF37;
}
.study-chat-header .verse-ref {
    font-size: 0.85rem;
    opacity: 0.8;
    margin-top: 2px;
}
.study-chat-close {
    background: none;
    border: none;
    color: #f5f0e8;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 4px 8px;
    opacity: 0.7;
    transition: opacity 0.2s;
}
.study-chat-close:hover { opacity: 1; }
.study-chat-messages {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.study-msg {
    max-width: 88%;
    padding: 16px 20px;
    border-radius: 16px;
    font-size: 1.05rem;
    line-height: 1.7;
    word-wrap: break-word;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
    letter-spacing: -0.01em;
}
.study-msg.user {
    align-self: flex-end;
    background: linear-gradient(135deg, #D4AF37, #B8960C);
    color: #1a1a2e;
    border-bottom-right-radius: 4px;
    font-size: 1rem;
}
.study-msg.assistant {
    align-self: flex-start;
    background: white;
    color: #333;
    border: 1px solid rgba(212,175,55,0.15);
    border-bottom-left-radius: 4px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
    font-size: 1.05rem;
    line-height: 1.75;
}
.study-msg.assistant strong {
    color: #2c1810;
    font-weight: 600;
}
.study-msg.assistant em {
    color: #8b4513;
}
.study-msg.assistant li {
    line-height: 1.6;
}
.study-msg.system {
    align-self: center;
    background: rgba(212,175,55,0.1);
    color: #8b4513;
    font-size: 0.9rem;
    text-align: center;
    font-style: italic;
}
.study-msg.loading {
    align-self: flex-start;
    background: linear-gradient(135deg, #faf6ee, #fff9ee);
    color: #8b4513;
    font-style: normal;
    text-align: center;
    padding: 24px 32px;
    min-width: 200px;
    border: 1px solid rgba(212,175,55,0.2);
}
.study-loading-animation {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}
.study-loading-orbs {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: center;
}
.study-loading-orb {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: radial-gradient(circle, #D4AF37, #8b6914);
    animation: studyOrb 1.8s ease-in-out infinite;
    box-shadow: 0 0 8px rgba(212,175,55,0.6), 0 0 16px rgba(212,175,55,0.3);
}
.study-loading-orb:nth-child(2) { animation-delay: 0.3s; }
.study-loading-orb:nth-child(3) { animation-delay: 0.6s; }
.study-loading-orb:nth-child(4) { animation-delay: 0.9s; }
.study-loading-orb:nth-child(5) { animation-delay: 1.2s; }
@keyframes studyOrb {
    0%, 100% { transform: scale(0.6); opacity: 0.3; box-shadow: 0 0 4px rgba(212,175,55,0.3); }
    50% { transform: scale(1.3); opacity: 1; box-shadow: 0 0 16px rgba(212,175,55,0.8), 0 0 32px rgba(212,175,55,0.4); }
}
.study-loading-text {
    font-size: 0.85rem;
    color: #B8960C;
    letter-spacing: 0.05em;
    animation: studyTextPulse 2s ease-in-out infinite;
}
@keyframes studyTextPulse {
    0%, 100% { opacity: 0.5; }
    50% { opacity: 1; }
}
@keyframes studyWordReveal {
    0% { opacity: 0; filter: blur(4px); transform: translateY(4px); }
    100% { opacity: 1; filter: blur(0); transform: translateY(0); }
}
@keyframes studyGlow {
    0% { text-shadow: 0 0 12px rgba(212,175,55,0.8), 0 0 24px rgba(212,175,55,0.4); }
    100% { text-shadow: none; }
}
.study-word-reveal {
    display: inline;
    opacity: 0;
    animation: studyWordReveal 0.3s ease-out forwards, studyGlow 1.2s ease-out forwards;
}
.study-msg.assistant.revealing {
    min-height: 60px;
}
.study-chat-input-area {
    display: flex;
    gap: 8px;
    padding: 12px 16px;
    border-top: 1px solid rgba(212,175,55,0.2);
    background: #f5f0e8;
}
.study-chat-input {
    flex: 1;
    padding: 10px 14px;
    border: 1px solid rgba(212,175,55,0.3);
    border-radius: 8px;
    font-size: 0.95rem;
    background: white;
    color: #2c1810;
    outline: none;
    resize: none;
    min-height: 40px;
    max-height: 100px;
    font-family: inherit;
}
.study-chat-input:focus {
    border-color: #D4AF37;
    box-shadow: 0 0 0 2px rgba(212,175,55,0.15);
}
.study-chat-send {
    padding: 10px 18px;
    background: linear-gradient(135deg, #D4AF37, #B8960C);
    color: #1a1a2e;
    border: none;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
    font-size: 0.95rem;
    transition: all 0.2s;
    white-space: nowrap;
}
.study-chat-send:hover { filter: brightness(1.1); }
.study-chat-send:disabled { opacity: 0.5; cursor: not-allowed; }
.study-suggestions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 8px 16px;
    border-top: 1px solid rgba(212,175,55,0.1);
    background: #faf5ec;
}
.study-suggestion {
    padding: 6px 12px;
    background: rgba(212,175,55,0.1);
    border: 1px solid rgba(212,175,55,0.2);
    border-radius: 16px;
    font-size: 0.8rem;
    color: #8b4513;
    cursor: pointer;
    transition: all 0.2s;
}
.study-suggestion:hover {
    background: rgba(212,175,55,0.25);
    border-color: #D4AF37;
}
@media (max-width: 768px) {
    .study-chat-panel { width: 100%; }
    .study-msg { max-width: 92%; }
}
/* Dark mode */
.dark-mode .study-chat-panel { background: #1a1a2e; }
.dark-mode .study-msg.assistant { background: #2c2c4e; color: #f5f0e8; border-color: rgba(212,175,55,0.15); }
.dark-mode .study-msg.system { background: rgba(212,175,55,0.08); color: #D4AF37; }
.dark-mode .study-chat-input-area { background: #151528; }
.dark-mode .study-chat-input { background: #2c2c4e; color: #f5f0e8; border-color: rgba(212,175,55,0.2); }
.dark-mode .study-suggestions { background: #151528; }
.dark-mode .study-suggestion { color: #D4AF37; background: rgba(212,175,55,0.08); }



.hamburger-btn { margin-right: 100px !important; }
