@import"https://fonts.googleapis.com/css2?family=Noto+Sans+Khmer:wght@400;500;600;700&family=Noto+Serif+Khmer:wght@400;500;600;700&display=swap";.app-container{margin:0 auto;background-color:#fff;background-color:var(--card-bg);min-height:100vh;position:relative;display:flex;flex-direction:column}.content{flex:1;padding:70px 16px 60px;transition:padding-bottom .3s ease}.audio-player-visible .content{padding-bottom:160px}.content .page-header{position:static;width:100%;top:0}.content-container{max-width:800px;margin:0 auto;width:100%}body.no-scroll{overflow:hidden}.content.home-content{padding-bottom:0}.install-prompt-wrapper{position:fixed;bottom:60px;left:0;right:0;z-index:1000;transform:translateZ(0)}.audio-player-visible .install-prompt-wrapper{bottom:160px}.app-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background-image:linear-gradient(to left,#000428,#004e92);border-bottom:1px solid #ddd;position:fixed;top:0;left:0;right:0;z-index:100;height:70px;transition:background-color .3s ease,border-color .3s ease,height .3s ease}.app-header.is-home{height:90px}.app-title{font-size:1.2rem;font-weight:700;margin:0;height:50px;display:flex;align-items:center;transition:height .3s ease}.app-header.is-home .app-title{height:70px}.app-title-link{text-decoration:none}.menu-btn,.search-btn{background-color:transparent;border:none;color:#fff;cursor:pointer;padding:8px;border-radius:50%;transition:background-color .2s ease-in-out;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.menu-btn:hover,.search-btn:hover{background-color:#ffffff26}.header-icon{width:24px;height:24px}@keyframes ripple{to{transform:scale(4);opacity:0}}.ripple-effect{position:relative;overflow:hidden}.ripple{position:absolute;border-radius:50%;transform:scale(0);animation:ripple .6s linear;background-color:#007bff80}body.dark{background-color:#121212;color:#e0e0e0}.dark .app-header{border-bottom-color:#2d3748}input[type=search],.search-input{font-family:Battambang,sans-serif;font-weight:700;font-size:1.1rem}.bottom-nav{background-color:#fff;border-top:1px solid #ddd;position:fixed;bottom:0;left:0;right:0;z-index:100}.bottom-nav-scroll-container{display:flex;justify-content:flex-start;align-items:center;padding:8px 0 8px 16px;box-sizing:border-box;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.bottom-nav-scroll-container::-webkit-scrollbar{display:none}.nav-btn{background:none;border:none;color:#000!important;cursor:pointer;font-size:1.1rem;font-weight:700!important;display:flex;flex-direction:column;align-items:center;gap:4px;transition:color .2s ease-in-out,background-color .2s ease-in-out;text-decoration:none;padding:4px 12px;border-radius:8px;position:relative;overflow:hidden;flex:0 0 auto;min-width:72px;margin:0 2px;white-space:nowrap}.bottom-nav-scroll-container:after{content:"";flex:0 0 32px}.nav-btn.active{color:#007bff!important;font-weight:900!important}.nav-btn:hover{background-color:#0000000a}.nav-icon{width:24px;height:24px}.dark .bottom-nav{background-color:#1a202c;border-top-color:#2d3748}.dark .nav-btn{color:#fff!important}.dark .nav-btn:hover{background-color:#ffffff0f}.dark .nav-btn.active{color:#60a5fa!important}.bottom-nav .scroll-indicator{position:absolute;top:0;bottom:0;width:40px;pointer-events:none;transition:opacity .3s ease-in-out;z-index:101;display:flex;align-items:center}.bottom-nav .scroll-indicator.left{left:0;background:linear-gradient(to right,#ffffff 25%,transparent 100%);justify-content:flex-start}.bottom-nav .scroll-indicator.right{right:0;background:linear-gradient(to left,#ffffff 25%,transparent 100%);justify-content:flex-end}.dark .bottom-nav .scroll-indicator.left{background:linear-gradient(to right,#1a202c 25%,transparent 100%)}.dark .bottom-nav .scroll-indicator.right{background:linear-gradient(to left,#1a202c 25%,transparent 100%)}.audio-player-bar{position:fixed;bottom:68px;left:0;right:0;background-color:#f0f8ffa6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid #e0e0e0;box-shadow:0 -2px 10px #00000014;display:flex;flex-wrap:wrap;align-items:center;z-index:900;padding:.1rem 1rem .25rem;row-gap:0}.player-track-info{order:1;width:100%;display:flex;justify-content:center;align-items:center}.player-track-info>div{min-width:0}.player-artwork,.player-author{display:none}.player-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;font-size:1.1rem;color:#666;text-align:center;padding:.2rem 0}.player-controls-main{order:2;display:flex;align-items:center;justify-content:center;flex-grow:1;padding:.3rem 0}.player-controls-main .player-control-btn{margin:0 .5rem}.player-control-btn,.audio-player-bar>.player-control-btn[aria-label="Show playlist"]{background:none;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;color:#333;position:relative;overflow:hidden}.player-control-btn:hover{background-color:#0000000d;border-radius:50%}.dark .player-control-btn:hover{background-color:#ffffff1a}.audio-player-bar.dark .player-control-btn{color:#ccc}.audio-player-bar .player-control-btn.active{color:#007bff}.audio-player-bar.dark .player-control-btn.active{color:#63b3ed}.player-control-btn svg{width:20px;height:20px}.play-pause-btn svg{width:28px;height:28px}.player-timeline{order:3;width:100%;display:flex;align-items:center}.time-display{font-size:1.1rem;color:#666;min-width:35px;text-align:center;padding:0 .5rem}.timeline-slider{flex-grow:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;background:#ddd;outline:none;border-radius:2px}.audio-player-bar.dark .timeline-slider{background:#555}.audio-player-bar.dark .time-display{color:#ccc}.audio-player-bar.dark{background-color:#1e283ca6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.player-volume-control{order:2;position:relative}.audio-player-bar>.player-control-btn[aria-label="Show playlist"]{order:2}.player-control-btn.active .repeat-one-indicator{color:#fff}.volume-slider-container{position:absolute;bottom:100%;right:0;background:#fff;padding:.5rem;border-radius:8px;box-shadow:0 -2px 8px #0000001a;margin-bottom:.5rem}.volume-slider{writing-mode:bt-lr;-webkit-appearance:slider-vertical;-moz-appearance:slider-vertical;appearance:slider-vertical;width:8px;height:100px}.repeat-one-indicator{position:absolute;top:2px;right:2px;font-size:1.1rem;font-weight:700;color:#333;background-color:#eee;border-radius:50%;width:12px;height:12px;display:flex;align-items:center;justify-content:center;line-height:1;padding-top:1px}.audio-player-bar.minimized{height:60px;flex-wrap:nowrap;justify-content:space-between;padding:0 1rem;cursor:pointer;align-items:center}.minimized-track-info{display:flex;align-items:center;overflow:hidden;flex:1;margin-right:1rem}.minimized-artwork{width:40px;height:40px;border-radius:4px;margin-right:10px;object-fit:cover;display:block}.minimized-text{display:flex;flex-direction:column;overflow:hidden;text-align:left}.minimized-title{font-weight:700;font-size:1.1rem;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.minimized-artist{font-size:1.1rem;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audio-player-bar.dark .minimized-title{color:#fff}.audio-player-bar.dark .minimized-artist{color:#ccc}.minimized-controls{display:flex;align-items:center;gap:.5rem}.collapse-btn{position:absolute;top:4px;right:4px;background:none;border:none;color:#666;cursor:pointer;padding:4px;z-index:20}.audio-player-bar.dark .collapse-btn{color:#ccc}.collapse-btn svg{width:20px;height:20px}.close-btn{position:absolute;top:4px;left:4px;background:none;border:none;color:#666;cursor:pointer;padding:4px;z-index:20}.audio-player-bar.dark .close-btn{color:#ccc}.close-btn svg{width:20px;height:20px}.playlist-view-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:1000;display:flex;justify-content:center;align-items:flex-end}.playlist-view-container{background-color:#fff;width:100%;max-width:600px;max-height:80%;border-top-left-radius:16px;border-top-right-radius:16px;display:flex;flex-direction:column;animation:slide-up .3s ease-out}.playlist-view-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #eee}.playlist-view-header h2{margin:0;font-size:1.2rem;font-weight:700}.playlist-close-btn{background:none;border:none;cursor:pointer}.playlist-view-list{list-style:none;margin:0;padding:0 0 120px;overflow-y:auto;flex:1;min-height:0}.playlist-item{padding:1rem;border-bottom:1px solid #eee;cursor:pointer;position:relative;overflow:hidden;transition:background-color .2s}.playlist-item:hover{background-color:#f9f9f9}.playlist-item.active{background-color:#e0f2f7;font-weight:700;color:#007bff}.playlist-item-empty{padding:1rem;color:#888;text-align:center}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.dark .playlist-view-container{background-color:#1a202c;color:#cbd5e0}.dark .playlist-view-header{border-bottom-color:#2d3748}.dark .playlist-close-btn{color:#cbd5e0}.dark .playlist-item{border-bottom-color:#2d3748}.dark .playlist-item:hover{background-color:#2d3748}.dark .playlist-item.active{background-color:#2a4365;color:#90cdf4}.spinner{border:4px solid rgba(0,0,0,.1);width:36px;height:36px;border-radius:50%;border-left-color:#1c1e21;animation:spin 1s ease infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#ffffffb3;display:flex;justify-content:center;align-items:center;z-index:2000}.install-prompt{position:fixed;bottom:0;left:0;right:0;background-color:var(--color-background-secondary, #ffffff);color:var(--color-text, #000000);padding:1rem;box-shadow:0 -2px 10px #0003;z-index:1000;border-top:1px solid var(--color-border, #e5e7eb)}.install-prompt-content{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}.install-prompt p{margin:0}.install-prompt-buttons{display:flex;gap:1rem}.install-button,.dismiss-button{padding:.5rem 1rem;border:none;border-radius:5px;cursor:pointer;font-weight:700}.install-button{background-color:var(--color-primary, #007bff);color:#fff}.dismiss-button{background-color:transparent;color:var(--color-text, #000000);border:1px solid var(--color-border, #e5e7eb)}.social-bar-container{padding:1rem;background-color:#c4e8ff;border-radius:8px;border-bottom:none;margin:30px 20px 150px}.social-bar{display:flex;justify-content:space-around;align-items:center;max-width:500px;margin:0 auto}.social-link{color:#0056b3;transition:transform .2s ease,color .2s ease;display:flex;align-items:center}.social-link:hover{color:#003d80;transform:scale(1.1)}.social-link svg,.png-icon{width:28px;height:28px}.png-icon{background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:2000;padding:1rem}.modal-content{background:#fff;padding:20px;border-radius:8px;box-shadow:0 5px 15px #0000004d;width:100%;max-width:400px;animation:modal-fade-in .3s ease-out}@keyframes modal-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:10px;margin-bottom:20px}.modal-title{margin:0;font-size:1.25rem;font-weight:700}.modal-close-btn{background:none;border:none;font-size:2rem;cursor:pointer;line-height:1;padding:0;color:#888;display:flex;align-items:center;justify-content:center}.modal-body{margin-bottom:20px;font-size:1.1rem}.modal-footer{display:flex;justify-content:flex-end;gap:10px}.modal-action-btn{padding:10px 18px;font-size:1.1rem;font-weight:700;border-radius:8px;cursor:pointer;transition:background-color .2s,border-color .2s;background-color:#007bff;color:#fff;border:1px solid #007bff}.modal-action-btn.secondary{background-color:#f8f9fa;color:#343a40;border-color:#dee2e6}.modal-action-btn:hover{opacity:.9}.home-page{padding:0 1rem 2rem;margin-top:40px;min-height:calc(100vh - 40px);display:flex;flex-direction:column;box-sizing:border-box;width:100%;max-width:925px;min-width:320px;margin-left:auto;margin-right:auto}.card{background-color:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden;display:flex;flex-direction:column}.card-image{width:100%;height:112px;object-fit:cover;display:block}.card-body{padding:12px}.card-title{margin-top:0;margin-bottom:8px;font-size:1.1rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.card-content{font-size:1.1rem;color:#333}.card.vertical{width:auto;flex-direction:row;margin-bottom:16px}.card.vertical .card-image{width:120px;height:67px}.card.vertical .card-body{flex:1}.channel-tabs-wrapper{position:relative;margin-bottom:1.5rem}.channel-tabs-container{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-bottom:1px solid var(--border-color);scrollbar-width:none}.channel-tabs-container::-webkit-scrollbar{display:none}.channel-tabs{display:flex;flex-wrap:nowrap;gap:.5rem;padding-bottom:10px}.channel-tab{flex-shrink:0;padding:.5rem 1rem;font-size:1.1rem;font-weight:700;font-family:Battambang,sans-serif;color:#555;background-color:#f0f0f0;border:1px solid #ddd;border-radius:20px;cursor:pointer;transition:all .2s ease-in-out;white-space:nowrap}.channel-tab.active{background-color:#00123f;color:#fff;border-color:#00123f}.scroll-indicator{position:absolute;top:0;bottom:0;width:40px;pointer-events:none;transition:opacity .3s ease-in-out;z-index:1;display:flex;align-items:center}.scroll-indicator.left{left:0;background:linear-gradient(to right,var(--bg-color) 25%,transparent 100%);justify-content:flex-start}.scroll-indicator.right{right:0;background:linear-gradient(to left,var(--bg-color) 25%,transparent 100%);justify-content:flex-end}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@keyframes scaleOut{0%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:0}}.video-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .3s ease-out forwards}.video-modal-overlay.closing{animation:fadeOut .3s ease-in forwards}.video-modal-overlay.closing .video-modal-content{animation:scaleOut .3s ease-in forwards}.video-modal-content{position:relative;width:100%;max-width:900px;background-color:#1a1a1a;border-radius:8px;overflow:hidden;animation:scaleIn .3s ease-out forwards}.close-modal-button{position:absolute;top:8px;right:8px;background:transparent;border:none;color:#fff;cursor:pointer;padding:8px;z-index:1001}.close-modal-button svg{width:24px;height:24px}.video-title{color:#fff;padding:1rem 1rem .5rem;font-size:1.1rem;font-weight:700;line-height:1.4}.video-player-wrapper{position:relative;padding-top:56.25%;width:100%;background-color:#000}.video-player-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;padding:1rem;box-sizing:border-box}:root{--bg-color: #ffffff;--text-color: #333333;--card-bg: #f5f5f5;--header-bg: #ffffff;--border-color: #eeeeee;--font-main: "Battambang", sans-serif}[data-theme=dark]{--bg-color: #121212;--text-color: #e0e0e0;--card-bg: #1e1e1e;--header-bg: #1a1a1a;--border-color: #333333}.page-container{padding:1rem;padding-top:40px;background-color:var(--bg-color);color:var(--text-color);min-height:100vh;transition:background-color .3s ease,color .3s ease}.page-title{font-size:1.5rem;margin-bottom:1.5rem;color:var(--text-color);text-align:center;font-weight:700}.grid-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.grid-container.loading{opacity:.5;pointer-events:none;transition:opacity .3s ease-in-out}.list-item-link{text-decoration:none;color:inherit;display:block}.list-item{display:flex;align-items:center;padding:.75rem;background-color:var(--card-bg);border-bottom:1px solid var(--border-color);gap:1rem;transition:background-color .2s ease-in-out,border-color .2s ease-in-out;position:relative;overflow:hidden}.list-item.active-playing{background-color:#e0f2f7;border-left:4px solid #007bff;padding-left:calc(.75rem - 4px)}[data-theme=dark] .list-item.active-playing{background-color:#1a2a3a;border-left-color:#60a5fa;color:#e0e0e0}.list-item-link:hover .list-item,.list-item:hover{background-color:var(--bg-color)}.list-item:last-child{border-bottom:none}.list-item-image{width:50px;height:50px;border-radius:4px;object-fit:cover;flex-shrink:0}.list-item-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.list-item-details{flex-grow:1;overflow:hidden}.list-item-title{font-size:1.1rem;font-weight:700;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-item-subtitle{font-size:1.1rem;font-weight:700;color:var(--text-color);margin:0;opacity:.7}.list-item-extra{display:flex;align-items:center;gap:1rem;color:#888;font-size:1.1rem}.action-button{cursor:pointer}.action-icon{width:20px;height:20px;color:#007bff}.favorite-button{background:none;border:none;padding:0;display:flex;align-items:center;justify-content:center;color:var(--text-color);opacity:.5}.favorite-icon.filled{color:#ff4d4d;opacity:1}[data-theme=dark] .favorite-icon.filled{color:#e53e3e}.audio-tabs-component{position:relative;width:100%;padding:8px 0}.audio-tabs-scroll-container{display:flex;align-items:center;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0 16px;gap:8px}.audio-tabs-scroll-container::-webkit-scrollbar{display:none}.audio-tabs-component .audio-tab-button{border:1px solid #e2e8f0;background-color:#f7fafc;color:#1f2937;box-shadow:0 1px 3px #0000000d;border-radius:8px;font-size:1.1rem;font-weight:700;font-family:Battambang,sans-serif;padding:8px 16px;white-space:nowrap;flex-shrink:0;transition:all .2s ease;margin:0}.dark .audio-tabs-component .audio-tab-button{background-color:#2d3748;color:#cbd5e0;border-color:#4a5568;box-shadow:0 1px 3px #0003}.audio-tabs-component .audio-tab-button.active{background-color:#ebf8ff;border-color:#63b3ed;color:#2c5282;box-shadow:0 2px 4px #0000001a}.dark .audio-tabs-component .audio-tab-button.active{background-color:#2a4365;border-color:#60a5fa;color:#90cdf4}.audio-tabs-component .scroll-indicator{position:absolute;top:0;bottom:0;width:40px;pointer-events:none;transition:opacity .3s ease-in-out;z-index:10}.audio-tabs-component .scroll-indicator.left{left:0;background:linear-gradient(to right,#f3f4f6 25%,transparent 100%)}.audio-tabs-component .scroll-indicator.right{right:0;background:linear-gradient(to left,#f3f4f6 25%,transparent 100%)}.dark .audio-tabs-component .scroll-indicator.left{background:linear-gradient(to right,#111827 25%,transparent 100%)}.dark .audio-tabs-component .scroll-indicator.right{background:linear-gradient(to left,#111827 25%,transparent 100%)}.book-card{display:flex;flex-direction:column;height:100%;background-color:var(--card-bg-color, #ffffff);border-radius:8px;overflow:hidden;box-shadow:0 4px 8px #0000001a;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;color:var(--text-color-primary)}.book-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px #00000026}.book-cover-container{width:100%;padding-top:141.4%;position:relative;background-color:transparent}.book-cover{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 6px rgba(0,0,0,.2));padding:10px;box-sizing:border-box}.book-info{padding:.75rem}.book-title{font-size:1.1rem;font-weight:700;margin:0 0 .25rem;line-height:1.3}.book-author{font-size:1.1rem;color:#666;margin:0}.book-card .favorite-button-wrapper{position:absolute;top:8px;right:8px;z-index:1}.book-card .favorite-button{background-color:#00000080;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:background-color .2s}.book-card .favorite-button:hover{background-color:#000000b3}.book-card .favorite-button .filled,.book-card .favorite-button.active,.book-card .favorite-button.favorited{color:#ef4444}:root{--prayer-header-color: #00123f;--prayer-form-label-color: #00123f;--prayer-input-border-color: #ababab;--prayer-input-bg-color: #fff;--prayer-input-text-color: #333;--prayer-input-disabled-bg-color: #f0f0f0}.prayer-page-container{padding:40px 1rem 6rem;max-width:600px;margin:0 auto;color:var(--text-color-primary)}.prayer-header{margin-bottom:2rem}.prayer-quote{font-size:1.1rem;margin-bottom:1rem;text-align:center;font-weight:700;width:100%}.prayer-quote p{word-break:keep-all;overflow-wrap:break-word;line-height:1.6}.prayer-quote-reference{font-size:1.1rem;margin-top:.75rem;text-align:center;font-weight:700}.prayer-header h2{color:var(--prayer-header-color);font-weight:700;font-size:28px;margin-bottom:1rem}.prayer-instruction{font-size:20px;margin-bottom:1rem;text-align:left;font-weight:700}.prayer-form,Form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:700;color:var(--prayer-form-label-color);font-size:1.1rem;margin-bottom:.5rem}.form-group input,.form-group textarea{padding:.75rem;border:1px solid var(--prayer-input-border-color);border-radius:4px;font-size:1.1rem;font-weight:700;background-color:var(--prayer-input-bg-color);color:var(--prayer-input-text-color)}.form-group input:disabled,.form-group textarea:disabled{background-color:var(--prayer-input-disabled-bg-color);cursor:not-allowed}.form-group input::placeholder,.form-group textarea::placeholder{color:#555;opacity:1}.radio-group{display:flex;gap:1rem;margin-top:.5rem}.radio-item{display:flex;align-items:center;gap:.5rem}.radio-item label{font-weight:700;margin-bottom:0}.form-group small{font-size:1.1rem;color:#3e97d7;margin-top:.5rem}.char-counter{text-align:right;font-size:1.1rem;color:#666;margin-top:.25rem}.submit-button{padding:.75rem;border:none;background-color:#00123f;color:#fff;font-size:1.1rem;font-weight:700;cursor:pointer;transition:background-color .3s}.submit-button:disabled{background-color:#555;cursor:not-allowed}.confirmation-section{margin-top:1.5rem;text-align:center;border-top:1px solid #eee;padding-top:1.5rem}.confirmation-message{font-size:1.1rem;font-weight:700;color:var(--prayer-header-color);margin-bottom:1rem}.confirmation-buttons{display:flex;justify-content:center;gap:1rem}.confirm-button,.edit-button{padding:.75rem 1.5rem;border:none;font-size:1.1rem;font-weight:700;cursor:pointer;border-radius:4px;transition:background-color .3s}.confirm-button{background-color:#28a745;color:#fff}.status-message{margin-top:1rem;padding:.75rem;border-radius:4px;text-align:center;display:flex;align-items:center;justify-content:center;gap:.5rem}.status-message.success{background-color:#d4edda;color:#155724}.status-message.error{background-color:#f8d7da;color:#721c24}.page-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;border-bottom:1px solid #eee;background-color:#fff;position:sticky;top:61px;z-index:99}.back-btn{background:none;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;position:relative;overflow:hidden;color:#333}.back-btn:hover{background-color:#0000000d}.page-header-title{font-size:1.2rem;font-weight:700;margin:0;text-align:center}.page-header-placeholder{width:40px}.dark.page-header{background-color:#1a202c;border-bottom-color:#2d3748}.dark .back-btn{color:#cbd5e0}.dark .back-btn:hover{background-color:#ffffff1a}.search-bar-container{margin-bottom:24px;position:relative}.search-input{width:100%;padding:12px 16px 12px 40px;font-size:1.1rem;border:1px solid #ccc;border-radius:8px;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#aaa;pointer-events:none}.search-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.search-results{margin-top:16px}.search-feedback{display:flex;justify-content:center;align-items:center;padding:40px 20px;text-align:center;color:#666;font-size:1.1rem}.back-button{display:inline-flex;align-items:center;gap:8px;background-color:#f8f9fa;border:1px solid #dee2e6;color:#343a40;padding:8px 16px;font-size:1.1rem;font-weight:700;border-radius:8px;cursor:pointer;transition:background-color .2s ease-in-out,box-shadow .2s;margin-bottom:1rem}.back-button-icon{width:16px;height:16px}.back-button:hover{background-color:#e9ecef;border-color:#ced4da}.back-button:focus{outline:none;box-shadow:0 0 0 3px #0d6efd40}.static-page-content{max-width:800px;margin:0 auto;line-height:1.7;text-align:center}.static-page-content img{width:100%;height:auto;border-radius:8px;margin-bottom:1.5rem;box-shadow:0 4px 12px #0000001a}.static-page-content h2{font-size:1.25rem;margin-top:2rem;margin-bottom:1rem;color:#2c3e50;border-bottom:1px solid #ecf0f1;padding-bottom:.5rem;font-weight:700}.static-page-content p{margin-bottom:1rem;color:#34495e}.static-page-content a{font-size:14px;word-break:break-all;line-height:1.5;-webkit-hyphens:auto;hyphens:auto}.map-container{width:100%;height:75vh;border-radius:8px;overflow:hidden;box-shadow:0 4px 12px #0000001a}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors: active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;-moz-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--scale-factor));width:100%;min-width:calc(180px * var(--scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--scale-factor)) calc(5px * var(--scale-factor)) #888;border-radius:calc(2px * var(--scale-factor));padding:calc(6px * var(--scale-factor));margin-left:calc(5px * var(--scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--scale-factor));padding-top:calc(2px * var(--scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}.pdf-outline-panel{background-color:#fff;width:300px;height:100%;display:flex;flex-direction:column}.pdf-outline-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #eee}.pdf-outline-header h2{margin:0;font-size:1.2rem;font-weight:700}.close-button{background:none;border:none;font-size:1.5rem;cursor:pointer}.pdf-outline-body{overflow-y:auto;padding:1rem}.pdf-outline-body ul{list-style:none;padding-left:1rem}.pdf-outline-body button{background:none;border:none;text-align:left;width:100%;padding:.5rem 0;cursor:pointer;font-size:1.1rem}.pdf-outline-body button:hover{text-decoration:underline}@media (max-width: 1023px){.pdf-outline-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:1000;display:flex;justify-content:flex-start}.pdf-outline-panel{max-width:80vw;box-shadow:2px 0 5px #0003;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}}.dark-mode-page .pdf-outline-panel{background-color:#2c2c2c;color:#e0e0e0}.dark-mode-page .pdf-outline-header{border-bottom-color:#444}.dark-mode-page .close-button,.dark-mode-page .pdf-outline-body button{color:#e0e0e0}.pdf-controls{--controls-bg: #fff;--shadow-color: rgba(0,0,0,.2);display:flex;justify-content:flex-start;align-items:center;gap:1rem;margin-bottom:1rem;background-color:var(--controls-bg);padding:.5rem 1rem;border-radius:8px;box-shadow:0 2px 5px #0000001a;position:sticky;top:60px;z-index:100;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;background-image:linear-gradient(to right,var(--controls-bg),var(--controls-bg)),linear-gradient(to right,var(--controls-bg),var(--controls-bg)),linear-gradient(to right,var(--shadow-color),rgba(0,0,0,0)),linear-gradient(to left,var(--shadow-color),rgba(0,0,0,0));background-position:left center,right center,left center,right center;background-repeat:no-repeat;background-size:20px 100%,20px 100%,15px 100%,15px 100%;background-attachment:local,local,scroll,scroll}.pdf-controls::-webkit-scrollbar{display:none}.pdf-controls>*{flex-shrink:0}.pdf-theme-controls,.pdf-nav-controls,.pdf-zoom-controls{display:flex;align-items:center;gap:.75rem}.page-jump-form{display:flex;align-items:center;gap:.5rem}.page-input{width:40px;text-align:center;border:1px solid #ccc;border-radius:4px;padding:4px}.pdf-controls button{min-width:36px;height:36px;padding:0 8px;border-radius:18px;border:1px solid #ccc;background-color:#f8f9fa;font-size:1.1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.pdf-controls button:disabled{opacity:.5;cursor:not-allowed}.pdf-controls button.active-zoom-mode{background-color:#cce5ff;border-color:#007bff}.pdf-viewer-container{display:flex;flex-direction:column;align-items:flex-start;gap:2rem;background-color:#e9ecef;padding:2rem;border-radius:8px;overflow-x:auto;touch-action:pan-y}.react-pdf__Page{margin-bottom:2rem;box-shadow:0 4px 12px #0000001a;transition:filter .3s ease;margin-left:auto;margin-right:auto}.react-pdf__Page canvas{display:block;height:auto!important;filter:brightness(.92) contrast(1.4)}.pdf-loading,.pdf-error{padding:2rem;text-align:center;color:#666;font-size:1.1rem}.pdf-error-container{background-color:#fff0f0;border:1px solid #ffcccc;color:#a04040;padding:1.5rem;border-radius:8px;text-align:center;margin:1rem;box-shadow:0 2px 5px #0000000d}.dark-mode-page{background-color:#1a1a1a}.dark-mode-page .page-title{color:#e0e0e0}.pdf-viewer-container.dark-mode{background-color:#2c2c2c}.dark-mode .react-pdf__Page{filter:invert(100%) hue-rotate(180deg)}.dark-mode-page .pdf-controls,.dark-mode .pdf-controls{--controls-bg: #333;--shadow-color: rgba(0,0,0,.5);background-color:var(--controls-bg);color:#e0e0e0}.dark-mode .pdf-controls button{background-color:#444;border-color:#555;color:#e0e0e0}.dark-mode .pdf-controls button.active-zoom-mode{background-color:#004085;border-color:#007bff;color:#fff}.dark-mode .page-input{background-color:#555;border-color:#666;color:#e0e0e0}.dark-mode .pdf-error-container{background-color:#4d3333;border-color:#804040;color:#ffc0c0}.dark-mode-page .react-pdf__Outline a{color:#fff!important;text-decoration:none}.dark-mode-page .react-pdf__Outline a:hover{text-decoration:underline}.react-pdf__Outline{line-height:2;padding:.5rem}.sepia-mode-page{background-color:#f4ecd8;color:#5b4636}.sepia-mode-page .page-title{color:#433422}.pdf-viewer-container.sepia-mode{background-color:#eaddcf}.sepia-mode .react-pdf__Page{filter:sepia(30%) contrast(95%) brightness(95%)}.sepia-mode-page .pdf-controls,.sepia-mode .pdf-controls{--controls-bg: #eaddcf;--shadow-color: rgba(91, 70, 54, .2);background-color:var(--controls-bg);border:1px solid #d0c0b0}.sepia-mode .pdf-controls button{background-color:#f4ecd8;border-color:#d0c0b0;color:#5b4636}.sepia-mode .pdf-controls button.active-zoom-mode{background-color:#d1bfa8;border-color:#856404}@media (max-width: 768px){.pdf-controls{gap:.5rem;padding:.5rem}}@media (min-width: 1024px){.page-container.desktop-outline-open{display:grid;grid-template-columns:300px 1fr;gap:1rem}.page-container.desktop-outline-open .pdf-viewer-main-content{grid-column:2;min-width:0}.page-container.desktop-outline-open .pdf-outline-panel{grid-column:1;position:sticky;top:76px;height:calc(100vh - 76px);overflow-y:auto;border-right:1px solid #ccc;background-color:#f8f9fa;box-shadow:none;animation:none}.dark-mode-page.desktop-outline-open .pdf-outline-panel{background-color:#2c2c2c;border-right-color:#444}.page-container.desktop-outline-open .pdf-outline-overlay{display:none}}.page-container.pdf-page-container{max-width:100%;width:100%}.favorites-content{padding:1rem}.empty-favorites-message{text-align:center;padding:2rem;color:#666}.favorites-section{margin-bottom:2rem}.favorites-section-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #eee}.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.book-card-link{text-decoration:none;color:inherit}.side-menu-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1000;pointer-events:none}.side-menu-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;opacity:0;transition:opacity .3s ease-in-out}.side-menu{position:absolute;top:0;left:0;width:260px;max-width:80vw;height:100%;box-shadow:2px 0 5px #0000001a;transform:translate(-100%);transition:transform .3s ease-in-out,background-color .3s ease,color .3s ease;display:flex;flex-direction:column;background-color:var(--card-bg);color:#000}.side-menu-container.is-open{pointer-events:auto}.side-menu-container.is-open .side-menu-overlay{opacity:1}.side-menu-container.is-open .side-menu{transform:translate(0)}.side-menu-header{display:flex;align-items:center;padding:12px 8px 12px 16px;border-bottom:1px solid var(--border-color);height:61px;box-sizing:border-box}.side-menu-header .header-placeholder{width:40px;flex-shrink:0}.side-menu-header h3{margin:0;flex-grow:1;text-align:center;font-weight:700;font-size:1.1rem}.close-btn{background:none;border:none;font-size:2rem;cursor:pointer;line-height:1;position:relative;overflow:hidden;border-radius:50%;padding:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:inherit;transition:background-color .2s ease-in-out}.close-btn:hover{background-color:#0000000d}.close-icon{width:24px;height:24px}.nav-icon{width:24px;height:24px;flex-shrink:0;opacity:1}.nav-icon-placeholder{width:24px;height:24px;flex-shrink:0}.side-menu-nav{flex-grow:1;overflow-y:auto;display:flex;flex-direction:column;padding:8px}.side-menu-nav a,.side-menu-link-btn{display:flex;align-items:center;gap:16px;padding:12px 16px;text-decoration:none;font-size:1.1rem;border-radius:8px;position:relative;overflow:hidden;transition:background-color .2s ease-in-out;color:#000!important;text-align:left;border:none;background:none;width:100%;font-family:inherit;cursor:pointer;font-weight:700!important}.side-menu-nav a span,.side-menu-link-btn span{font-weight:700!important;color:#000!important}.side-menu-nav a:hover,.side-menu-link-btn:hover{background-color:#0000000a}.side-menu-footer{margin-top:auto;padding:8px;border-top:1px solid var(--border-color)}.theme-toggle-btn{width:100%;display:flex;align-items:center;gap:16px;padding:12px 16px;border:none;background-color:transparent;color:inherit;cursor:pointer;text-align:left;justify-content:flex-start;border-radius:8px;position:relative;overflow:hidden;transition:background-color .2s ease-in-out;font-size:1.1rem;font-family:inherit;font-weight:700}.theme-toggle-btn:hover{background-color:#0000000a}[data-theme=dark] .side-menu{background-color:#1a202c;color:#fff}[data-theme=dark] .side-menu-nav a,[data-theme=dark] .side-menu-link-btn,[data-theme=dark] .side-menu-nav a span,[data-theme=dark] .side-menu-link-btn span{color:#fff!important}[data-theme=dark] .close-btn:hover,[data-theme=dark] .side-menu-nav a:hover,[data-theme=dark] .side-menu-link-btn:hover,[data-theme=dark] .theme-toggle-btn:hover{background-color:#ffffff14}@font-face{font-family:Battambang;src:url(/fonts/Battambang-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Battambang;src:url(/fonts/Battambang-Bold.ttf) format("truetype");font-weight:700;font-style:normal}:root{line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background-color:#f0f2f5;color:#1c1e21;font-family:Battambang,sans-serif;font-size:1.1rem;font-weight:700}.khmer-heading{font-weight:700}
