/* Global Styles */ * { margin: 0; padding: 0; /* height: 100%; */ box-sizing: border-box; font-family: Arial, sans-serif; } body { background-color: #dbba72; color: #333; margin-top: 60px; } /* Header */ header { background-color: #FFD700; color: #333; padding: 0.5em 1em; display: flex; align-items: center; justify-content: space-between; font-size: 1.2em; font-weight: bold; box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.1); border-bottom: 2px solid #E0C200; position: fixed; top: 0; left: 0; width: 100%; z-index: 1000; } /* Voice modal */ .modal { display:none; position:fixed; inset:0; background:rgba(0,0,0,.45); z-index:10000; } .modal.show { display:block; } .modal-content { background:#fff; width:min(560px, 92vw); margin:8vh auto; padding:16px 18px; border-radius:10px; box-shadow:0 10px 30px rgba(0,0,0,.2); } .modal-close { float:right; font-size:24px; cursor:pointer; } .modal h3 { margin:0 0 12px; } .field { margin:10px 0; display:flex; gap:8px; align-items:center; } .field select { flex:1; } .row { display:flex; gap:14px; flex-wrap:wrap; margin:12px 0; } .row label { display:flex; align-items:center; gap:8px; } .actions { display:flex; gap:10px; justify-content:flex-end; margin-top:10px; } /* .voice-controls { background: #fff; border: 1px solid #ddd; border-radius: 8px; padding: .6rem .8rem; margin: .8rem 0; box-shadow: 0 2px 6px rgba(0,0,0,.05); } .voice-controls .vc-row { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; } .voice-controls select { min-width: 220px; max-width: 100%; } .voice-controls button { padding: .35rem .6rem; border: 1px solid #ccc; background: #f7f7f7; border-radius: 6px; cursor: pointer; } .voice-controls button:hover { background: #efefef; } .voice-controls .sliders label { display: flex; align-items: center; gap: .4rem; } .voice-controls input[type="range"] { width: 140px; } @media (max-width: 768px) { .voice-controls { padding: .5rem; } .voice-controls select { min-width: unset; width: 100%; } } */ /* mobile menu part start */ #installAppButton { position: fixed; bottom: 20px; right: 20px; background: #4CAF50; color: white; border: none; padding: 10px 15px; border-radius: 5px; z-index: 10000; box-shadow: 0px 4px 6px rgba(0,0,0,0.2); } /* Mobile Menu Button (Right Side) */ .mobile-menu-button { position: fixed; top: 10px; right: 10px; background: #007BFF; color: white; border: none; padding: 10px 12px; border-radius: 5px; cursor: pointer; z-index: 1100; } .mobile-menu-button i { font-size: 18px; } /* Mobile Menu Dropdown (Initially Hidden) */ .mobile-menu { position: absolute; top: 50px; /* Below the button */ right: 10px; /* Aligns with the button */ background: white; border-radius: 8px; box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.15); padding: 10px; display: none; z-index: 1000; width: 180px; } /* Show menu when active */ .mobile-menu.show { display: block; } /* Menu items styling */ .menu-item { display: flex; align-items: center; gap: 8px; width: 100%; padding: 10px; background: none; border: none; text-align: left; font-size: 16px; cursor: pointer; transition: background 0.2s ease-in-out; } .menu-item:hover { background: #f1f1f1; border-radius: 5px; } /* Icon size */ .menu-item i { font-size: 18px; color: #007BFF; } /* mobile menu part end */ header h1 { font-size: 1.5em; font-weight: bold; } /* Header Buttons Container */ .header-buttons { display: flex; justify-content: flex-end; /* Align buttons to the left */ align-items: center; padding: 0.5em 1em; /* Add some spacing */ gap: 10px; /* Space between buttons */ position: relative; /* Ensures tooltip positioning works */ top: 0; /* Align to the top */ width: 100%; /* Full width for alignment */ /* background-color: #f8f8f8; */ border-bottom: 1px solid #ddd; /* Optional: header border */ } /* Header Button */ .header-button { display: flex; align-items: center; justify-content: center; background: none; border: none; color: #333; font-size: 1.5em; margin: 0; cursor: pointer; position: relative; } /* Tooltip Style */ .header-button[data-tooltip]:hover::after { content: attr(data-tooltip); position: absolute; bottom: -1.5em; left: 50%; transform: translateX(-50%); background-color: #333; color: #fff; font-size: 0.75em; padding: 0.2em 0.5em; border-radius: 3px; white-space: nowrap; pointer-events: none; opacity: 1; z-index: 10; } /* Tooltip Hidden by Default */ .header-button[data-tooltip]::after { opacity: 0; transition: opacity 0.3s ease-in-out; } /* Hide outline on focus for all buttons */ .header-button:focus { outline: none; } .menu-button { display: none; } .menu-button:focus, .header-button:focus { outline: none; } .header-button img, .header-button .user-initial { width: 2em; height: 2em; border-radius: 50%; object-fit: cover; } .header-dropdown { display: none; position: absolute; right: 1em; top: 3.5em; background-color: #fff; box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); border-radius: 5px; padding: 1em; z-index: 10; } .header-dropdown a { color: #333; text-decoration: none; display: block; padding: 0.5em; } .header-button:hover .header-dropdown, .header-dropdown:hover { display: block; } /* Container */ .container { display: flex; flex-wrap: wrap; margin-top: 1em; /* position: relative; */ position: sticky; } /* Sidebar */ .sidebar { width: 20%; background-color: #e6eff7; padding: 1em; border-right: 2px solid #c9e3fa; border-bottom: 2px solid #c9e3fa; border-top: 2px solid #c9e3fa; max-height: 130vh; overflow-y: auto; transition: transform 0.3s ease-in-out; z-index: 1; position: sticky; } .sidebar.hidden { transform: translateX(-100%); } .hidden { display: none; } .sidebar h2:hover { background-color: #c9e3fa; } .sidebar h2 { color: #4b6cb7; text-align: center; font-size: 1.5em; margin-bottom: 1em; margin-top: 10px; /* new add */ cursor: pointer; transition: background-color 0.3s ease; } .sidebar ul { list-style: none; padding: 0; /* new add */ margin: 0; } .sidebar ul li { padding: 0.7em; font-size: 1.1em; border-radius: 5px; cursor: pointer; color: #333; transition: background-color 0.3s, color 0.3s; } .sidebar ul li:hover { background-color: #c9e3fa; color: #4b6cb7; font-weight: bold; } .sidebar .home-button { background-color: #4CAF50; color: white; border: none; padding: 0.8em; font-size: 1em; border-radius: 5px; width: 100%; margin-bottom: 1em; cursor: pointer; } .sidebar .home-button:hover { background-color: #45a049; } /* Audio Player */ .audio-container { display: flex; justify-content: left; align-items: left; margin: 10px 0; } .audioPlayer { background: #FFD700; border: none; width: 40px; height: 40px; font-size: 20px; font-weight: bold; cursor: pointer; border-radius: 50%; margin-right: 10px; } .audioPlayer:hover { background: #FFA500; } /* Main Content Area */ .main { width: 80%; padding: 1em 2em; } .main h2 { margin-bottom: 1em; } /* Content Blocks */ .content-blocks { display: flex; gap: 1.5em; margin-bottom: 1em; flex-wrap: wrap; } /* Sloke Block */ .sloke-block { flex: 0 1 48%; background-color: #e8e8e8; padding: 10px; border-radius: 8px; overflow: hidden; } .sloke-block h3 { font-size: 1.5em; color: #4b6cb7; } .sloke-block #slokeContent { max-height: 400px; overflow-y: auto; } .play-all-button { background-color: #4CAF50; color: white; border: none; padding: 10px 20px; font-size: 16px; cursor: pointer; border-radius: 5px; margin-right: 20px; transition: background-color 0.3s; } .play-all-button:hover { background-color: #45a049; } /* .audio-container { display: flex; align-items: center; justify-content: flex-start; margin-top: 20px; } */ #audioPlayer { width: 300px; } /* Video Block */ .video-block { flex: 0 1 48%; background-color: #fdfdfd; padding: 1.5em; /* padding: 10px; */ border-radius: 8px; box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); } .video-block h3 { font-size: 1.5em; color: #4b6cb7; } .video-block iframe { width: 100%; height: 400px; border-radius: 5px; } /* Transcript Block */ .transcript-block { margin-top: 1.5em; display: flex; flex-direction: column; background-color: #fdfdfd; max-height: 540px; overflow-y: auto; /* Keep scrolling enabled */ border: 1px solid #ccc; border-radius: 8px; box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); /* position: relative; */ position: sticky; padding: 1.5em; margin-bottom: 1em; gap: 1.5em; /* flex-wrap: wrap; */ } #transcript-content { flex: 1; /* Allow this to take up remaining space */ overflow-y: auto; /* Enable scrolling for the transcript content */ padding: 10px; } .transcript-footer { /* position: sticky; */ position: relative; /* bottom: auto; */ bottom: 0; background-color: #f8f9fa; padding: 10px; border-top: 1px solid #ccc; text-align: left; box-shadow: 0 -2px 4px rgba(0, 0, 0, 0.1); z-index: 10; /* Ensures it's on top of content */ width: 100%; } .transcript-block h3 { font-size: 1.5em; color: #4b6cb7; } .overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); display: none; z-index: 999; /* Ensure it is below the sidebar */ } /* Next Chapter Button */ /* Styling for the Next Chapter button container */ .next-chapter-container { position: fixed; /* Fix position at the bottom */ bottom: 20px; /* 20px from the bottom */ right: 20px; /* 20px from the right */ z-index: 100; /* Ensure the button is above other elements */ } /* Styling for the Next Chapter button */ .next-chapter-btn { background-color: #4b6cb7; color: white; border: none; border-radius: 50%; width: 50px; height: 50px; font-size: 24px; display: flex; justify-content: center; align-items: center; cursor: pointer; transition: background-color 0.3s ease; } /* Hover effect for the button */ .next-chapter-btn:hover { background-color: #365a87; } /* Font Awesome icon style */ .next-chapter-btn i { margin: 0; } .highlight { color: red; /* Highlight color */ font-weight: bold; } @media (min-width: 768px) { .mobile-menu-button { display: none; } } /* Responsive Styles */ @media (max-width: 768px) { .sidebar { display: block; width: 100%; margin-top: 1em; /* Sidebar shows below header */ } .sidebar.shown { display: block; } .overlay.active { display: block; /* Overlay that blocks interaction when sidebar is open */ } .container { display: block; } #content { margin-left: 0; /* Full width content on mobile */ transition: margin-left 0.3s; } .sidebar.shown ~ #content { margin-left: 0; /* Content remains full width when sidebar is shown */ } .menu-button { display: inline-block; } .sidebar ul li { padding: 0.7em; font-size: 1.1em; border-radius: 5px; cursor: pointer; color: #333; transition: background-color 0.3s, color 0.3s; } .sidebar ul li:hover { background-color: #c9e3fa; color: #4b6cb7; font-weight: bold; } /* Hide main content until chapter selected */ .main, .transcript-block, .video-block, .sloke-block { display: none; width: 100%; /* Ensure full width */ box-sizing: border-box; /* Ensure padding doesn't affect width */ } /* Show main content and transcript after a chapter is selected */ .main.active, .transcript-block.active, .video-block.active, .sloke-block.active { display: block; width: 100%; } .sloke-block, .video-block, .transcript-block { flex: none; /* Remove flex for mobile */ background-color: #fdfdfd; padding: 1.5em; border-radius: 8px; box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); } /* Optional: Adding padding to give space inside the blocks */ .sloke-block p, .video-block, .transcript-block { padding: 10px; } .next-chapter-btn { width: 50px; /* Fixed size for buttons */ height: 50px; font-size: 24px; /* Icon size */ } /* Transcript Block Styles */ .transcript-block { height: calc(100vh - 120px); /* Adjust height dynamically for mobile */ max-height: none; /* Remove static max-height on smaller screens */ display: flex; flex-direction: column; position: relative; } #transcript-content { flex: 1; /* Allow content to take remaining space */ overflow-y: auto; /* Enable scrolling for transcript content */ padding: 8px; } .play-all-button { background-color: #4CAF50; color: white; border: none; padding: 10px 20px; font-size: 16px; cursor: pointer; border-radius: 5px; width: 100%; } .play-all-button:hover { background-color: #45a049; } #user-dropdown { width: 100%; /* Use full width for smaller screens */ top: 55px; /* Adjust for better spacing */ right: 0; padding: 15px; /* Add some padding for touch usability */ } .header-buttons { display: none; /* Hide desktop buttons */ } .mobile-menu-button { display: block; /* Show mobile menu button */ } } /* LOGIN & LOGOUT SECTION */ /* User initials button style */ .user-initial { font-size: .5em; /* Adjust font size to fit the initials */ font-weight: bold; color: #fff; background-color: #007bff; /* Blue background */ border-radius: 50%; /* Ensure a perfect circle */ width: 25px; /* Set width to fixed size */ height: 25px; /* Set height to same as width for a perfect circle */ display: flex; justify-content: center; /* Horizontally center text */ align-items: center; /* Vertically center text */ cursor: pointer; text-align: center; /* Center text horizontally */ line-height: normal; /* Make sure no extra line height distorts the shape */ padding: 0; /* Remove any padding to keep it tight */ } /* Dropdown menu */ #user-dropdown { display: none; z-index: 9999; position: absolute; top: 45px; right: 0; background-color: #fff; border: 1px solid #ccc; border-radius: 5px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); padding: 10px; width: 200px; overflow: visible; } #user-dropdown button { background: none; border: none; color: #007bff; cursor: pointer; width: 100%; /* Full width for mobile usability */ text-align: left; } #user-dropdown p { font-weight: bold; margin-bottom: 10px; } /* Button for user info */ #user-button { display: flex; justify-content: center; align-items: center; width: 25px; height: 25px; /* Same as the initials button */ border-radius: 50%; background-color: #f0f0f0; color: #333; cursor: pointer; position: relative; z-index: 9998; } .user-initial { z-index: 9998; /* Ensure it doesn't overlap the dropdown */ } /* Style for Donate Option */ .donate-modal { display: none; position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0, 0, 0, 0.5); } .donate-modal-content { background-color: #fff; margin: 15% auto; padding: 20px; border-radius: 10px; width: 80%; max-width: 800px; } .donate-modal h2 { font-size: 24px; margin-bottom: 10px; } .donate-modal p { font-size: 16px; margin-bottom: 10px; } .donation-options { margin-top: 20px; } .donation-options h3 { font-size: 18px; margin-top: 10px; } .donation-options button { padding: 10px; background-color: #28a745; color: white; border: none; border-radius: 5px; cursor: pointer; } .donation-options .qr-code { display: block; max-width: 200px; margin: 20px 0; } /* Close button for modal */ .close { color: #aaa; float: right; font-size: 28px; font-weight: bold; cursor: pointer; } .amount-btn { margin: 5px; padding: 10px 20px; border: 1px solid #ccc; background-color: #f0f0f0; color: black; border-radius: 5px; cursor: pointer; } .amount-btn:hover { background-color: #45a049; } .amount-btn.selected { background-color: #4CAF50; /* Green background for selected amount */ color: white; /* White text for contrast */ border-color: #4CAF50; } .close:hover, .close:focus { color: black; text-decoration: none; cursor: pointer; } #paymentMethods button { margin: 10px 5px; padding: 10px 20px; background-color: #2196F3; color: white; border: none; border-radius: 5px; cursor: pointer; } /* Loading Bar Style */ /* Loading container */ .loading-container { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); display: flex; flex-direction: column; justify-content: center; align-items: center; z-index: 9999; display: none; /* Initially hidden */ } /* Loading bar */ .loading-bar { width: 0; height: 5px; background-color: #4caf50; /* Green color for the loading bar */ animation: loadingAnimation 3s linear infinite; } /* Loading text */ .loading-text { margin-top: 20px; color: white; font-size: 18px; font-weight: bold; } /* Animation for loading bar */ @keyframes loadingAnimation { 0% { width: 0; } 50% { width: 60%; } 100% { width: 100%; } } /* Footer styles */ footer { background-color: #333; color: white; text-align: center; padding: 10px 5px; font-family: Arial, sans-serif; font-size: 13px; width: 100%; box-shadow: 0 -2px 4px rgba(0,0,0,0.1); } .footer-content p { margin: 3px 0; line-height: 1.4; } .footer-content a { color: #ffcc00; text-decoration: none; font-weight: 500; } .footer-content a:hover { text-decoration: underline; } .toggle-icon { margin-right: 6px; color: #4b6cb7; } .chapter-item { padding: 0.5em; margin: 0.2em 0; background-color: #f0f0f0; border-radius: 5px; cursor: pointer; transition: background-color 0.3s; } .chapter-item:hover { background-color: #d0e8ff; font-weight: bold; } .chapter-item, .skanda-group { padding-left: 1em; } /* Utility tweaks */ input[type="search"], .search-box { max-width: 100%; width: 100%; } .transcript-block { max-height: 70vh; }