@tailwind base;@tailwind components;@tailwind utilities;code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}body.dark-mode,body.dark-mode main{background-color:#121212;color:#e0e0e0}body.dark-mode *,body.dark-mode div,body.dark-mode label,body.dark-mode p,body.dark-mode span{color:inherit}body.dark-mode input,body.dark-mode select,body.dark-mode textarea{background-color:#2d2d2d;border-color:#404040;color:#e0e0e0}body.dark-mode input:focus,body.dark-mode select:focus,body.dark-mode textarea:focus{border-color:#7c3aed;outline:none}::-webkit-scrollbar{height:12px;width:12px}::-webkit-scrollbar-track{background:#0000001a;border-radius:6px}body.dark-mode ::-webkit-scrollbar-track{background:#ffffff1a}::-webkit-scrollbar-thumb{background:#0000004d;border-radius:6px;-webkit-transition:background .2s ease;transition:background .2s ease}body.dark-mode ::-webkit-scrollbar-thumb{background:#ffffff4d}::-webkit-scrollbar-thumb:hover{background:#00000080}body.dark-mode ::-webkit-scrollbar-thumb:hover{background:#ffffff80}button{font-family:inherit;transition:all .2s ease}button:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}button:active{box-shadow:0 2px 4px #0000001a;transform:translateY(0)}input,textarea{font-family:inherit;transition:all .2s ease}input:focus,textarea:focus{box-shadow:0 0 0 3px #6b46c133;outline:none}body.dark-mode input:focus,body.dark-mode textarea:focus{box-shadow:0 0 0 3px #8b5cf64d}header{overflow:visible!important}@media (max-width:768px){header>div:first-child{gap:10px!important}header button{font-size:14px!important;padding:6px 10px!important}}@media (max-width:640px){.links-dropdown-container{order:-1}}.qibla-container{padding:10px}.qibla-info h4{color:#333;font-size:1.2rem;margin:0 0 10px}.qibla-description{background:#f8f9fa;border-left:3px solid #6b46c1;border-radius:8px;color:#666;font-size:.9rem;line-height:1.5;margin-bottom:20px;padding:10px}.loading{color:#666;padding:20px}.error,.loading{text-align:center}.error{background:#fee;border:1px solid #fcc;border-radius:5px;padding:15px}.error p{color:#c00;margin:0 0 10px}.retry-button{background:linear-gradient(135deg,#6b46c1,#8b5cf6);border:none;border-radius:8px;box-shadow:0 2px 8px #6b46c133;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:all .3s ease}.retry-button:hover{background:linear-gradient(135deg,#5a39a8,#7c4edf);box-shadow:0 4px 12px #6b46c14d;transform:translateY(-1px)}.qibla-display{animation:fadeIn .5s ease}.location-info{background:#f8f9fa;border-radius:5px;margin-bottom:20px;padding:10px;text-align:center}.location-info p{color:#666;font-size:.9rem;margin:0}.coords{color:#333;font-weight:700;margin-top:5px!important}.compass-container{display:flex;justify-content:center;margin:30px 0}.compass{background:#fff;border:3px solid #333;border-radius:50%;box-shadow:0 0 20px #0000001a;height:200px;position:relative;transition:transform .3s ease;width:200px}.compass-directions{height:100%;position:absolute;width:100%}.direction{color:#333;font-size:1.2rem;font-weight:700;position:absolute}.direction.north{color:#dc3545;left:50%;top:5px;transform:translateX(-50%)}.direction.east{right:10px;top:50%;transform:translateY(-50%)}.direction.south{bottom:5px;left:50%;transform:translateX(-50%)}.direction.west{left:10px;top:50%;transform:translateY(-50%)}.qibla-arrow{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;position:absolute;transition:transform .3s ease;width:100%}.arrow-tip{color:#6b46c1;margin-bottom:-10px;text-shadow:0 2px 4px #0003}.arrow-tip,.kaaba-icon{font-size:2rem}.qibla-details{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-top:20px}.angle-info,.distance-info{background:#f8f9fa;border-radius:5px;padding:15px;text-align:center}.angle-info h5,.distance-info h5{color:#666;font-size:.9rem;font-weight:400;margin:0 0 10px}.angle-value,.distance-value{color:#333;font-size:1.5rem;font-weight:700;margin:0}.direction-text{color:#666;font-size:.9rem;margin:5px 0 0}.compass-note{background:#fff3cd;border:1px solid #ffeeba;border-radius:5px;margin-top:15px;padding:10px}.compass-note p{color:#856404;font-size:.85rem;margin:0}body.dark-mode .qibla-header h4,body.dark-mode .qibla-info h4{color:#fff}body.dark-mode .qibla-header p{color:#ccc}body.dark-mode .qibla-description{background:#2a2a2a;border-left-color:#8b5cf6;color:#ccc}body.dark-mode .qibla-content{background:#2a2a2a}body.dark-mode .error{background:#3a2020;border:1px solid #5a3030}body.dark-mode .error p{color:#ff6b6b}body.dark-mode .compass-container{background:#0000}body.dark-mode .compass{background:#333;border:3px solid #444}body.dark-mode .compass-label{color:#ccc}body.dark-mode .direction{color:#fff}body.dark-mode .direction.north{color:#ff6b6b}body.dark-mode .direction-label{color:#fff}body.dark-mode .direction-label.north{color:#ff6b6b}body.dark-mode .angle-display{color:#a78bfa}body.dark-mode .qibla-info{background:#2a2a2a}body.dark-mode .location-info{background:#2a2a2a;border:1px solid #3a3a3a}body.dark-mode .location-info p{color:#ccc!important}body.dark-mode .location-display{background:#333}body.dark-mode .city-name{color:#fff}body.dark-mode .coordinates,body.dark-mode .distance-info{color:#ccc}body.dark-mode .distance-info strong{color:#a78bfa}body.dark-mode .angle-info,body.dark-mode .distance-info{background:#2a2a2a;border:1px solid #3a3a3a}body.dark-mode .angle-info h5,body.dark-mode .distance-info h5{color:#ccc}body.dark-mode .angle-value,body.dark-mode .distance-value{color:#fff}body.dark-mode .direction-text{color:#ccc}body.dark-mode .compass-note{background:#3a3a20;border:1px solid #5a5a30}body.dark-mode .compass-note p{color:#ffeb3b}body.dark-mode .permission-alert{background:#3a3a20;border:1px solid #5a5a30}body.dark-mode .permission-alert p{color:#ffeb3b}body.dark-mode .info-text,body.dark-mode .loading{color:#ccc}body.dark-mode .qibla-distance{color:#a78bfa}body.dark-mode .accuracy-indicator{color:#ccc}body.dark-mode .calibration-hint{background:#3a3a20;border-color:#5a5a30;color:#ffeb3b}body.dark-mode .qibla-container{color:#e0e0e0}body.dark-mode .compass-angle{color:#a78bfa;font-weight:700}body.dark-mode .accuracy-text{color:#ccc}.prayer-times-container{color:#1a202c;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;max-width:100%;padding:24px}.prayer-header{border-bottom:2px solid #e2e8f0;margin-bottom:32px;padding-bottom:24px;text-align:center}.prayer-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:28px;font-weight:700;margin:0 0 8px}.prayer-subtitle{color:#718096;font-size:14px;font-weight:400;margin:0}.notification-banner{align-items:center;animation:slideDown .4s ease-out;background:linear-gradient(135deg,#e0e7ff,#f3e8ff);border:2px solid #c7d2fe;border-radius:16px;display:flex;gap:16px;margin-bottom:24px;padding:20px}.banner-icon{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 6px #667eea1a;color:#667eea;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.banner-content{flex:1 1}.banner-content h4{color:#4c51bf;font-size:16px;font-weight:600;margin:0 0 4px}.banner-content p{color:#5a67d8;font-size:14px;margin:0}.banner-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .3s ease}.banner-button:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.banner-button:active{transform:translateY(0)}.alert-banner{align-items:center;animation:slideDown .4s ease-out;border-radius:12px;display:flex;gap:12px;margin-bottom:20px;padding:16px}.alert-warning{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.alert-warning svg{color:#f59e0b;flex-shrink:0}body.dark-mode .alert-warning{background:#78350f;border-color:#92400e;color:#fef3c7}body.dark-mode .alert-warning svg{color:#fbbf24}.alert-banner p{font-size:14px;font-weight:500;margin:0}.location-card{animation:fadeIn .5s ease-out;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px #0000000d,0 1px 3px #0000001a;margin-bottom:24px;padding:24px}.location-header{align-items:center;color:#4a5568;display:flex;font-size:14px;font-weight:600;gap:8px;letter-spacing:.5px;margin-bottom:20px;text-transform:uppercase}.location-header svg{color:#667eea}.primary-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;padding:16px 24px;transition:all .3s ease;width:100%}.primary-button:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.primary-button:active:not(:disabled){transform:translateY(0)}.primary-button:disabled{cursor:not-allowed;opacity:.6}.primary-button.loading{position:relative}.secondary-button{background:#fff;border:2px solid #667eea;border-radius:10px;color:#667eea;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.secondary-button:hover:not(:disabled){background:#667eea;box-shadow:0 4px 12px #667eea33;color:#fff;transform:translateY(-1px)}.secondary-button:disabled{cursor:not-allowed;opacity:.4}.divider{align-items:center;color:#a0aec0;display:flex;font-size:13px;font-weight:500;gap:16px;margin:20px 0}.divider:after,.divider:before{background:#e2e8f0;content:"";flex:1 1;height:1px}.search-container{align-items:stretch;display:flex;gap:12px}.search-input-wrapper{align-items:center;display:flex;flex:1 1;position:relative}.search-input-wrapper svg{color:#a0aec0;left:14px;pointer-events:none;position:absolute}.search-input{background:#f7fafc;border:2px solid #e2e8f0;border-radius:10px;font-size:15px;padding:12px 12px 12px 42px;transition:all .3s ease;width:100%}.search-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.search-input::placeholder{color:#a0aec0}.control-panel{grid-gap:12px;animation:fadeIn .5s ease-out .1s backwards;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:24px}.control-button{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#4a5568;cursor:pointer;display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:8px;padding:16px 12px;transition:all .3s ease}.control-button:hover{background:#f7fafc;border-color:#667eea;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.control-button svg{color:#667eea}.control-button:disabled{cursor:not-allowed;opacity:.5}.volume-panel{animation:slideDown .4s ease-out;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px #0000000d,0 1px 3px #0000001a;margin-bottom:24px;padding:24px}.volume-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.volume-header h4{color:#2d3748;font-size:16px;font-weight:600;margin:0}.volume-percentage{color:#667eea;font-size:18px;font-weight:700}.volume-slider-container{align-items:center;display:flex;gap:16px;margin-bottom:20px}.volume-slider-container svg{color:#a0aec0;flex-shrink:0}.volume-slider{-webkit-appearance:none;appearance:none;background:#e2e8f0;border-radius:3px;flex:1 1;height:6px;outline:none;transition:all .3s ease}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 2px 8px #667eea66;cursor:pointer;height:20px;-webkit-transition:all .3s ease;transition:all .3s ease;width:20px}.volume-slider::-webkit-slider-thumb:hover{box-shadow:0 4px 12px #667eea99;transform:scale(1.2)}.volume-slider::-moz-range-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;box-shadow:0 2px 8px #667eea66;cursor:pointer;height:20px;-moz-transition:all .3s ease;transition:all .3s ease;width:20px}.volume-slider::-moz-range-thumb:hover{box-shadow:0 4px 12px #667eea99;transform:scale(1.2)}.sound-preview{display:flex;gap:12px;margin-top:8px}.preview-alarm-button{flex:none;width:100%}.history-panel{animation:slideDown .4s ease-out;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px #0000000d,0 1px 3px #0000001a;margin-bottom:24px;padding:24px}.history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.history-header h4{color:#2d3748;font-size:16px;font-weight:600;margin:0}.close-button{background:#f7fafc;color:#718096;padding:8px;transition:all .3s ease}.close-button:hover{background:#e2e8f0;color:#2d3748}.history-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.history-item{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;gap:12px;padding:14px;transition:all .3s ease}.history-item:hover{background:#fff;border-color:#cbd5e0;transform:translateX(4px)}.history-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;color:#fff;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.history-content{flex:1 1}.history-prayer{color:#2d3748;font-size:14px;font-weight:600;margin-bottom:2px}.history-time{color:#718096;font-size:12px}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:48px 24px;text-align:center}.empty-state svg{color:#cbd5e0;margin-bottom:16px}.empty-state p{color:#a0aec0;font-size:14px;margin:0}.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:48px 24px;text-align:center}.loading-state p{color:#718096;font-size:14px;margin:16px 0 0}.error-banner{align-items:center;animation:slideDown .4s ease-out;background:#fee;border:1px solid #fcc;border-radius:12px;display:flex;gap:12px;margin-bottom:20px;padding:16px}.error-banner svg{color:#dc2626;flex-shrink:0}.error-banner p{color:#991b1b;font-size:14px;font-weight:500;margin:0}.spinner{border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}.spinner,.spinner-large{animation:spin .8s linear infinite}.spinner-large{border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:48px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.current-location-card{align-items:center;animation:fadeIn .5s ease-out;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px #0000000d,0 1px 3px #0000001a;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px;padding:20px}.location-info{align-items:center;display:flex;flex:1 1;gap:12px}.location-info svg{color:#667eea;flex-shrink:0}.location-city{color:#2d3748;font-size:18px;font-weight:700;margin-bottom:4px}.location-date{color:#718096;font-size:13px}.date-input-modern{background:#f7fafc;border:2px solid #e2e8f0;border-radius:10px;color:#4a5568;cursor:pointer;font-size:14px;font-weight:500;padding:10px 14px;transition:all .3s ease}.date-input-modern:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.time-display-card{animation:fadeIn .5s ease-out .2s backwards;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 10px 40px #667eea4d;color:#fff;margin-bottom:24px;overflow:hidden;padding:32px 24px;position:relative;text-align:center}.time-display-card:before{animation:pulse 3s ease-in-out infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}.time-display-content{position:relative;z-index:1}.current-time-large{font-feature-settings:"tnum";font-size:56px;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-2px;margin-bottom:24px;text-shadow:0 4px 12px #0003}.next-prayer-info{border-top:1px solid #fff3;margin-top:20px;padding-top:20px}.next-prayer-label{font-size:12px;font-weight:600;letter-spacing:1px;margin-bottom:8px;opacity:.9;text-transform:uppercase}.next-prayer-name{font-size:24px;font-weight:700;margin-bottom:8px}.next-prayer-countdown{font-size:18px;font-weight:600;margin-bottom:4px;opacity:.95}.next-prayer-time{font-size:14px;opacity:.85}.progress-bar-container{background:#fff3;bottom:0;height:4px;left:0;overflow:hidden;position:absolute;right:0}.progress-bar{background:#fff;box-shadow:0 0 12px #ffffff80;height:100%;transition:width 1s linear}.prayer-times-grid{animation:fadeIn .5s ease-out .3s backwards;display:flex;flex-direction:column;gap:12px}.prayer-card{background:#fff;border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 2px 8px #0000000f;overflow:hidden;transition:all .3s ease}.prayer-card:hover{transform:translateY(-2px)}.prayer-card.expanded,.prayer-card:hover{box-shadow:0 8px 24px #0000001f}.prayer-card-header{align-items:center;background:#fff;cursor:pointer;display:flex;gap:16px;padding:20px;transition:all .3s ease}.prayer-card-header.next-prayer{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.prayer-card-header.next-prayer .prayer-icon{background:#fff3;color:#fff}.prayer-card-header.passed{background:#f7fafc;opacity:.6}.prayer-card-header:hover:not(.passed){background:#f7fafc}.prayer-card-header.next-prayer:hover{background:linear-gradient(135deg,#5568d3,#6b3f92)}.prayer-icon{align-items:center;background:linear-gradient(135deg,#e0e7ff,#f3e8ff);border-radius:12px;color:#667eea;display:flex;flex-shrink:0;height:48px;justify-content:center;transition:all .3s ease;width:48px}.prayer-info{flex:1 1}.prayer-name-text{font-size:18px;font-weight:700;margin-bottom:4px}.alarm-indicator{align-items:center;display:flex;font-size:12px;font-weight:500;gap:6px;opacity:.85}.alarm-indicator svg{height:12px;width:12px}.prayer-time-display{font-feature-settings:"tnum";font-size:28px;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-1px}.expand-icon{align-items:center;display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.prayer-card-body{animation:expandDown .3s ease-out;background:#f7fafc;border-top:2px solid #e2e8f0;padding:24px}@keyframes expandDown{0%{max-height:0;opacity:0}to{max-height:600px;opacity:1}}.alarm-toggle-section{margin-bottom:24px}.modern-toggle{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;gap:12px;padding:16px;transition:all .3s ease}.modern-toggle:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #0000000d}.modern-toggle.enabled{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#6ee7b7}.modern-toggle input[type=checkbox]{display:none}.toggle-switch{background:#cbd5e0;border-radius:14px;flex-shrink:0;height:28px;position:relative;transition:all .3s ease;width:52px}.modern-toggle.enabled .toggle-switch{background:linear-gradient(135deg,#10b981,#059669)}.toggle-knob{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;height:22px;left:3px;position:absolute;top:3px;transition:all .3s ease;width:22px}.modern-toggle.enabled .toggle-knob{transform:translateX(24px)}.toggle-label{color:#2d3748;font-size:15px;font-weight:600}.section-title{color:#4a5568;font-size:14px;font-weight:700;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.alarm-sound-section{margin-bottom:24px}.sound-options{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.sound-option{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#4a5568;cursor:pointer;display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:16px;transition:all .3s ease}.sound-option:hover:not(:disabled){background:#f7fafc;border-color:#667eea;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.sound-option.selected{background:linear-gradient(135deg,#e0e7ff,#f3e8ff);border-color:#667eea;color:#5a67d8}.sound-option:disabled{cursor:not-allowed;opacity:.4}.sound-option svg{color:#667eea}.sound-option.selected svg{color:#5a67d8}.alarm-time-section{margin-bottom:0}.time-options{display:flex;flex-direction:column;gap:10px}.time-option{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#4a5568;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:14px 16px;transition:all .3s ease}.time-option:hover:not(.disabled){background:#f7fafc;border-color:#cbd5e0;transform:translateX(4px)}.time-option.selected{background:linear-gradient(135deg,#e0e7ff,#f3e8ff);border-color:#667eea;color:#5a67d8;font-weight:600}.time-option.disabled{cursor:not-allowed;opacity:.4}.time-option input[type=radio]{display:none}.radio-indicator{align-items:center;border:2px solid #cbd5e0;border-radius:50%;display:flex;flex-shrink:0;height:22px;justify-content:center;transition:all .3s ease;width:22px}.time-option.selected .radio-indicator{background:#667eea;border-color:#667eea}.radio-dot{background:#fff;border-radius:50%;height:10px;transform:scale(0);transition:transform .3s ease;width:10px}.time-option.selected .radio-dot{transform:scale(1)}.time-option svg{color:#a0aec0;flex-shrink:0}.time-option.selected svg{color:#5a67d8}@keyframes pulse{0%,to{opacity:.3}50%{opacity:.6}}@media (max-width:768px){.prayer-times-container{padding:16px}.prayer-title{font-size:24px}.control-panel{grid-template-columns:1fr}.current-time-large{font-size:42px}.prayer-card-header{padding:16px}.prayer-icon{height:40px;width:40px}.prayer-name-text{font-size:16px}.prayer-time-display{font-size:24px}.prayer-card-body{padding:20px}.sound-options{grid-template-columns:1fr}.location-card,.prayer-card,.time-display-card{border-radius:12px}.current-location-card{align-items:flex-start;flex-direction:column}.date-input-modern{width:100%}}@media (max-width:480px){.banner-content h4{font-size:14px}.banner-content p{font-size:12px}.control-button{font-size:11px;padding:12px 8px}.control-button svg{height:16px;width:16px}.search-container{flex-direction:column}.secondary-button{width:100%}}body.dark-mode .prayer-times-container{color:#e2e8f0}body.dark-mode .prayer-header{border-bottom-color:#4a5568}body.dark-mode .current-location-card,body.dark-mode .history-panel,body.dark-mode .location-card,body.dark-mode .prayer-card,body.dark-mode .volume-panel{background:#2d3748;border-color:#4a5568}body.dark-mode .prayer-card-header{background:#2d3748}body.dark-mode .prayer-card-header:hover:not(.passed){background:#374151}body.dark-mode .prayer-card-header.passed{background:#1a202c}body.dark-mode .prayer-card-body{background:#374151;border-top-color:#4a5568}body.dark-mode .date-input-modern,body.dark-mode .search-input{background:#374151;border-color:#4a5568;color:#e2e8f0}body.dark-mode .date-input-modern:focus,body.dark-mode .search-input:focus{background:#2d3748;border-color:#667eea}body.dark-mode .control-button{background:#2d3748;border-color:#4a5568;color:#e2e8f0}body.dark-mode .control-button:hover{background:#374151}body.dark-mode .modern-toggle{background:#374151;border-color:#4a5568}body.dark-mode .sound-option,body.dark-mode .time-option{background:#374151;border-color:#4a5568;color:#e2e8f0}body.dark-mode .sound-option:hover:not(:disabled),body.dark-mode .time-option:hover:not(.disabled){background:#2d3748}body.dark-mode .history-item{background:#374151;border-color:#4a5568}body.dark-mode .history-item:hover{background:#2d3748}body.dark-mode .history-header h4,body.dark-mode .history-prayer,body.dark-mode .location-city,body.dark-mode .volume-header h4{color:#f7fafc}body.dark-mode .history-time,body.dark-mode .location-date{color:#a0aec0}body.dark-mode .prayer-icon{background:#667eea33}.cached-locations-section{display:flex;flex-direction:column;gap:12px;margin-top:16px}.cached-locations-label{align-items:center;color:#4a5568;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px}.location-switcher{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#fff;background-image:none;background-position:right 12px center;background-repeat:no-repeat;background-size:0;border:2px solid #e2e8f0;border-radius:12px;color:#2d3748;cursor:pointer;font-size:15px;font-weight:500;padding:12px 16px;transition:all .2s ease;width:100%}.location-switcher:hover{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.location-switcher:focus{border-color:#667eea;box-shadow:0 0 0 4px #667eea33;outline:none}.location-switcher option{font-size:14px;padding:12px}body.dark-mode .cached-locations-label{color:#cbd5e0}body.dark-mode .location-switcher{background:#2d3748;background-image:none;border-color:#4a5568;color:#f7fafc}body.dark-mode .location-switcher:hover{background:#374151;border-color:#667eea}body.dark-mode .location-switcher:focus{border-color:#667eea}@media print{.alert-banner,.control-panel,.history-panel,.location-card,.notification-banner,.volume-panel{display:none}.prayer-times-container{padding:0}.prayer-card{break-inside:avoid;page-break-inside:avoid}}.appendices-container{max-height:calc(100vh - 200px);overflow-y:auto;padding:20px}@keyframes highlight-pulse{0%,to{background-color:initial;transform:scale(1)}50%{background-color:#8b5cf633;transform:scale(1.02)}}.appendix-card.highlighted{animation:highlight-pulse 2s ease-in-out}body.dark-mode .appendix-card.highlighted{animation:highlight-pulse-dark 2s ease-in-out}@keyframes highlight-pulse-dark{0%,to{background-color:#2a2a2a;transform:scale(1)}50%{background-color:#8b5cf64d;transform:scale(1.02)}}.appendices-header{margin-bottom:30px;text-align:center}.appendices-header h4{color:#333;font-size:1.5rem;font-weight:600;margin:0 0 10px}body.dark-mode .appendices-header h4{color:#fff}.appendices-description{color:#666;font-size:.95rem;margin-bottom:0}body.dark-mode .appendices-description{color:#ccc}.appendices-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);margin-bottom:40px}@media (max-width:1200px){.appendices-grid{grid-template-columns:repeat(2,1fr)}}.sidebar-menu.expanded .appendices-grid{grid-template-columns:repeat(3,1fr)}@media (min-width:1400px){.sidebar-menu.expanded .appendices-grid{grid-template-columns:repeat(4,1fr)}}.appendix-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;color:inherit;cursor:pointer;display:block;min-height:120px;padding:15px;text-decoration:none;transition:all .2s ease}body.dark-mode .appendix-card{background:#2a2a2a;border:1px solid #3a3a3a}.appendix-card:hover{background:#fff;border-color:#6b46c1;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}body.dark-mode .appendix-card:hover{background:#333;border-color:#8b5cf6;box-shadow:0 4px 12px #8b5cf633}.appendix-card-title{color:#333;font-size:1rem;font-weight:600;line-height:1.2;margin:0 0 8px}body.dark-mode .appendix-card-title{color:#fff}.appendix-card-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:.85rem;line-height:1.4;margin:0;overflow:hidden;text-overflow:ellipsis}body.dark-mode .appendix-card-preview{color:#ccc}.appendices-footer{align-items:center;border-top:1px solid #e9ecef;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-top:40px;padding-top:30px}body.dark-mode .appendices-footer{border-top:1px solid #3a3a3a}.download-section h5{color:#333;font-size:1rem;margin:0 0 5px}body.dark-mode .download-section h5{color:#fff}.download-section p{color:#666;font-size:.9rem;margin:0}body.dark-mode .download-section p{color:#ccc}.discord-link{align-items:center;background:#5865f2;border-radius:8px;color:#fff;display:inline-flex;font-size:.9rem;font-weight:500;gap:8px;padding:10px 20px;text-decoration:none;transition:all .3s ease}.discord-link:hover{background:#4752c4;box-shadow:0 4px 12px #5865f24d;transform:translateY(-2px)}.appendices-container::-webkit-scrollbar{width:6px}.appendices-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.appendices-container::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.appendices-container::-webkit-scrollbar-thumb:hover{background:#999}body.dark-mode .appendices-container::-webkit-scrollbar-track{background:#1a1a1a}body.dark-mode .appendices-container::-webkit-scrollbar-thumb{background:#4a4a4a}body.dark-mode .appendices-container::-webkit-scrollbar-thumb:hover{background:#5a5a5a}@media (max-width:768px){.appendices-grid{gap:10px;grid-template-columns:repeat(2,1fr)}.appendices-footer{align-items:flex-start;flex-direction:column}}@media (max-width:400px){.appendices-container{padding:10px}.appendices-grid{gap:8px;grid-template-columns:1fr}.appendix-card{padding:12px}.appendix-card-title{font-size:.95rem}.appendix-card-preview{font-size:.8rem}}.bookmarks-modal-overlay{align-items:center;animation:fadeIn .2s ease;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.bookmarks-modal{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:80vh;max-width:600px;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.dark-mode .bookmarks-modal{background:#2a2a2a;color:#e0e0e0}.bookmarks-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.dark-mode .bookmarks-header{border-bottom-color:#444}.bookmarks-header h2{color:#333;font-size:24px;margin:0}.dark-mode .bookmarks-header h2{color:#e0e0e0}.close-btn{align-items:center;background:#0000000d;border:1px solid #0000001a;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:40px;justify-content:center;padding:0;transition:all .2s ease;width:40px}.close-btn:hover{background:#f0f0f0;box-shadow:0 2px 8px #0000001a;color:#333;transform:scale(1.1)}.dark-mode .close-btn{color:#999}.dark-mode .close-btn:hover{background:#3a3a3a;color:#e0e0e0}.bookmarks-tabs{background:#f8f8f8;border-bottom:1px solid #e0e0e0;display:flex}.dark-mode .bookmarks-tabs{background:#1e1e1e;border-bottom-color:#444}.bookmarks-tabs .tab{background:none;border:none;color:#666;cursor:pointer;flex:1 1;font-size:16px;font-weight:500;padding:15px;position:relative;transition:all .2s ease}.bookmarks-tabs .tab:hover{background:#6b46c10d;color:#6b46c1}.bookmarks-tabs .tab.active{background:#fff;color:#6b46c1}.dark-mode .bookmarks-tabs .tab{color:#999}.dark-mode .bookmarks-tabs .tab:hover{background:#6b46c11a;color:#8b6bb1}.dark-mode .bookmarks-tabs .tab.active{background:#2a2a2a;color:#8b6bb1}.bookmarks-tabs .tab.active:after{background:#6b46c1;bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0}.dark-mode .bookmarks-tabs .tab.active:after{background:#8b6bb1}.bookmarks-content{flex:1 1;overflow-y:auto;padding:20px}.empty-state,.loading{color:#666;padding:40px;text-align:center}.dark-mode .empty-state,.dark-mode .loading{color:#999}.empty-state .hint{color:#999;font-size:14px;margin-top:10px}.dark-mode .empty-state .hint{color:#666}.bookmarks-list{display:flex;flex-direction:column;gap:12px}.bookmark-item{background:#f8f8f8;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:16px;transition:all .2s ease}.bookmark-item:hover{background:#f0f0f0;transform:translateX(4px)}.dark-mode .bookmark-item{background:#1e1e1e}.dark-mode .bookmark-item:hover{background:#2a2a2a}.bookmark-content{flex:1 1}.verse-ref{color:#6b46c1;font-size:16px;font-weight:600;margin-bottom:8px}.dark-mode .verse-ref{color:#8b6bb1}.verse-preview{color:#333;font-family:Amiri,Traditional Arabic,serif;font-size:18px;line-height:1.6;margin-bottom:8px}.dark-mode .verse-preview{color:#e0e0e0}.verse-translation{color:#666;font-size:14px;line-height:1.4;margin-bottom:8px}.dark-mode .verse-translation{color:#999}.bookmark-meta{color:#999;display:flex;font-size:12px;gap:16px}.dark-mode .bookmark-meta{color:#666}.progress{color:#4caf50;font-weight:500}.remove-btn{align-self:center;background:none;border:none;cursor:pointer;font-size:18px;opacity:.6;padding:8px;transition:all .2s ease}.remove-btn:hover{opacity:1;transform:scale(1.1)}.login-prompt{background:#f0f8ff;border-top:1px solid #e0e0e0;color:#1976d2;font-size:14px;padding:16px;text-align:center}.dark-mode .login-prompt{background:#1976d21a;border-top-color:#444;color:#64b5f6}.modal-footer{background:#f8f8f8;border-top:1px solid #e0e0e0;padding:20px}.dark-mode .modal-footer{background:#1e1e1e;border-top-color:#444}.dark-mode .back-button{background:#8b6bb1!important}.dark-mode .back-button:hover{background:#7a5aa0!important}@media (max-width:768px){.bookmarks-modal{border-radius:0;height:100%;max-height:100%;width:100%}.bookmarks-header{padding:16px}.bookmarks-tabs .tab{font-size:14px;padding:12px}.bookmarks-content{padding:16px}.bookmark-item{padding:12px}}.hamburger-button{align-items:center;background:none;border:none;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:4px;height:40px;justify-content:center;padding:8px;position:relative;transition:all .3s ease;width:40px}.hamburger-button:hover{background:#ffffff1a}.hamburger-line{background-color:#fff;border-radius:2px;display:block;height:2px;transform-origin:center;transition:all .3s ease;width:24px}.hamburger-button.open .hamburger-line:first-child{transform:translateY(6px) rotate(45deg)}.hamburger-button.open .hamburger-line:nth-child(2){opacity:0}.hamburger-button.open .hamburger-line:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.sidebar-menu{background:#fff;box-shadow:2px 0 10px #0000001a;height:100vh;left:-300px;overflow-y:auto;position:fixed;top:0;transition:left .3s ease,width .3s ease;width:300px;z-index:1001}body.dark-mode .sidebar-menu{background:#1a1a1a;box-shadow:2px 0 10px #0000004d}.sidebar-menu.open{left:0}.sidebar-menu.expanded{max-width:1200px;width:80%}.sidebar-menu.expanded .sidebar-menu{left:-80%}@media (min-width:768px){.sidebar-menu.expanded{width:70%}}@media (min-width:1024px){.sidebar-menu.expanded{width:60%}}.sidebar-header{align-items:center;background:linear-gradient(135deg,#6b46c1,#8b5cf6);border-bottom:none;box-shadow:0 2px 12px #6b46c126;display:flex;justify-content:space-between;padding:24px 20px}.sidebar-header h3{color:#fff;font-size:1.5rem;font-weight:600;letter-spacing:-.02em;margin:0}.close-button{align-items:center;background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;padding:0;transition:all .2s;width:36px}.close-button:hover{background:#ffffff4d;transform:scale(1.1)}.sidebar-content{padding:15px}.sidebar-section{background:#fff;border:none;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:12px;overflow:hidden;transition:all .3s ease}.sidebar-section:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}body.dark-mode .sidebar-section{background:#2a2a2a;box-shadow:0 2px 8px #0003}body.dark-mode .sidebar-section:hover{box-shadow:0 4px 16px #0000004d}.sidebar-section-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff);border-bottom:1px solid #0000;cursor:pointer;display:flex;padding:16px 20px;transition:all .3s ease}.sidebar-section-header:hover{background:linear-gradient(135deg,#e9ecef,#f8f9fa)}body.dark-mode .sidebar-section-header{background:linear-gradient(135deg,#333,#2a2a2a)}body.dark-mode .sidebar-section-header:hover{background:linear-gradient(135deg,#3a3a3a,#333)}.section-icon{align-items:center;background:linear-gradient(135deg,#6b46c1,#8b5cf6);border-radius:10px;box-shadow:0 2px 8px #6b46c133;display:flex;font-size:1.5rem;height:40px;justify-content:center;margin-right:12px;width:40px}.section-title{color:#333;flex:1 1;font-size:1.1rem;font-weight:600;letter-spacing:-.02em}body.dark-mode .section-title{color:#fff}.toggle-icon{color:#6b46c1;font-size:.8rem;font-weight:700;transition:transform .3s ease}body.dark-mode .toggle-icon{color:#a78bfa}.toggle-icon.open{transform:rotate(90deg)}.sidebar-section-content{animation:slideDown .3s ease;background:#fff;color:#333;padding:20px}body.dark-mode .sidebar-section-content{background:#1f1f1f;color:#fff}.sidebar-section-content *{color:inherit}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.sidebar-overlay{animation:fadeIn .3s ease;background:#0000004d;height:100%;left:0;position:fixed;top:0;width:100%;z-index:1000}body.dark-mode .sidebar-overlay{background:#00000080}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:600px){.sidebar-menu{left:-250px;width:250px}.sidebar-menu.expanded{width:90%}.sidebar-menu-button{left:10px;top:10px}}@media (max-width:768px){.swipe-indicator{animation:swipeHint 3s ease-in-out infinite;background:linear-gradient(90deg,#6b46c14d,#0000);border-radius:0 3px 3px 0;height:100px;left:0;pointer-events:none;position:fixed;top:50%;transform:translateY(-50%);transition:opacity .3s ease;width:3px;z-index:999}@keyframes swipeHint{0%,to{opacity:.3}50%{opacity:.6}}.sidebar-menu.open~.swipe-indicator{opacity:0}}
/*# sourceMappingURL=main.83237b5c.css.map*/