@import"https://fonts.googleapis.com/css2?family=Noto+Sans+Tamil:wght@100;200;300;400;500;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap";.lyrics-input-container{margin-bottom:1.5rem}.lyrics-label{display:block;font-size:1.1rem;font-weight:600;color:#333;margin-bottom:.75rem}.lyrics-textarea{width:100%;padding:1rem;font-size:1rem;font-family:inherit;border:2px solid var(--app-gold-border-light, #caa35a);border-radius:8px;resize:vertical;min-height:300px;line-height:1.6;transition:border-color .3s ease}.lyrics-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.lyrics-textarea::-moz-placeholder{color:#999;font-style:italic}.lyrics-textarea::placeholder{color:#999;font-style:italic}@media (max-width: 768px){.lyrics-textarea{min-height:250px;font-size:.95rem}.lyrics-label{font-size:1rem}}.preview-section{width:100%;flex:1;display:flex;flex-direction:column;background:transparent;border-radius:0;padding:0;box-shadow:none;border:none}.preview-title{font-size:1.2rem;color:var(--app-accent);margin-bottom:.5rem;font-weight:600}.preview-select-hint{font-size:.85rem;color:var(--app-muted);margin:0 0 .75rem}.preview-content{display:flex;flex-direction:column;margin-bottom:1.5rem;max-height:640px;overflow-y:auto;padding:1rem 1.5rem .5rem 1rem;box-sizing:border-box;scrollbar-gutter:stable}.preview-content>.preview-slide{margin-top:1.25rem;margin-bottom:1.25rem}.preview-content>.preview-slide:first-child{margin-top:0}.preview-content>.preview-slide:last-child{margin-bottom:0}.preview-slide{position:relative;display:flex;flex-direction:column;width:100%;flex-shrink:0;overflow:hidden;box-shadow:0 4px 12px #00000026;border-radius:4px}.preview-slide-exact{aspect-ratio:16 / 9;min-height:180px;max-height:300px;width:100%;overflow:hidden;box-sizing:border-box}.preview-slide-selectable{cursor:pointer;transition:box-shadow .2s,outline .2s}.preview-slide-selectable:hover{box-shadow:0 6px 16px #2d1b4e33}.preview-slide-selected{outline:4px solid #2563eb;outline-offset:6px;box-shadow:0 0 0 2px #fff,0 0 0 6px #2563eb,0 8px 24px #2563eb59}.preview-slide-number{position:absolute;top:.3rem;right:.3rem;font-size:.7rem;color:#999;font-weight:600;background:#fffffff2;padding:.2rem .4rem;border-radius:3px;z-index:10;pointer-events:none}.preview-slide-border-frame{width:100%;height:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:center;position:relative;padding:.4rem;overflow:hidden;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;max-height:100%}.preview-slide-title-exact{text-align:center;width:100%;max-width:100%;line-height:1;overflow:hidden;word-wrap:break-word;overflow-wrap:break-word;padding:.2rem;box-sizing:border-box;white-space:normal}.preview-slide-content-exact{width:100%;max-width:100%;height:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;line-height:1;gap:0;overflow:visible;padding:.2rem;box-sizing:border-box;flex:1 1 auto;min-height:0}.preview-line-exact{width:100%;max-width:100%;text-align:center;line-height:1;overflow:visible;word-wrap:break-word;overflow-wrap:break-word;flex-shrink:0;box-sizing:border-box;padding:0;white-space:normal;margin:0}.preview-slide-label{display:none}.preview-summary{text-align:center;font-size:1rem;color:#666;font-weight:500;padding:.75rem;background:#f7f5ef;border-radius:8px;border:1px solid #e6e0d7}@media (max-width: 768px){.preview-section{flex:0 0 auto}.preview-content{max-height:32vh;min-height:0;margin-bottom:1rem}.preview-content>.preview-slide{margin-top:.75rem;margin-bottom:.75rem}.preview-slide-exact{min-height:100px;max-height:140px}.preview-title{font-size:1rem;margin-bottom:.5rem}.preview-slide-title-exact{font-size:clamp(.75rem,3.5vw,1rem)!important}.preview-slide-content-exact{gap:0;padding:.15rem;line-height:1}.preview-slide-border-frame{padding:.25rem;border-width:6px}.preview-line-exact{font-size:inherit;line-height:1}.preview-summary{padding:.5rem .75rem;font-size:.9rem}}@media (max-width: 480px){.preview-content{max-height:28vh}.preview-slide-exact{min-height:90px;max-height:120px}}.template-selector{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem;overflow-x:hidden}.template-selector-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.template-selector-header h3{margin:0;font-size:1.1rem;font-weight:600;color:#333}.template-scroll-controls{display:flex;align-items:center;gap:.5rem}.scroll-btn{background:#fff;border:1px solid #ddd;border-radius:4px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.9rem;color:#666;transition:all .2s}.scroll-btn:hover:not(:disabled){background:#f0f0f0;border-color:#999}.scroll-btn:disabled{opacity:.4;cursor:not-allowed}.scroll-indicator{font-size:.85rem;color:#666;min-width:60px;text-align:center}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.template-grid-scrollable{max-height:420px;overflow-y:auto;overflow-x:hidden;padding-right:.25rem}.template-grid-scrollable::-webkit-scrollbar{width:8px}.template-grid-scrollable::-webkit-scrollbar-thumb{background:#0003;border-radius:6px}.template-grid-scrollable::-webkit-scrollbar-track{background:transparent}.template-card{background:#fff;border:2px solid #e0e0e0;border-radius:6px;padding:.75rem;cursor:pointer;transition:all .2s;position:relative;min-width:0}.template-card:hover{border-color:#999;box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.template-card.selected{border-color:#4b006e;border-width:3px;box-shadow:0 0 0 2px #4b006e1a}.template-card.default{border-color:#b8860b}.template-card.default.selected{border-color:#4b006e}.template-preview{width:100%;aspect-ratio:16 / 9;border-radius:4px;display:flex;align-items:center;justify-content:center;margin-bottom:.5rem;overflow:hidden}.template-preview-text{font-size:1.5rem;font-weight:700}.template-name{font-size:.85rem;font-weight:500;color:#333;text-align:center;margin-top:.25rem}.template-actions{position:static;margin-top:.35rem;display:flex;gap:.4rem;align-items:center;justify-content:center}.template-badge{background:#b8860b;color:#fff;font-size:.65rem;padding:.2rem .4rem;border-radius:3px;font-weight:600;white-space:nowrap}@media (max-width: 900px){.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.template-grid-scrollable{max-height:none}}@media (max-width: 560px){.template-selector{padding:1rem}.template-grid{grid-template-columns:1fr}}.template-badge.recommended-badge{background:#4b006e}.template-card.recommended{box-shadow:0 0 0 2px #4b006e4d}.template-card.locked{opacity:.5;cursor:not-allowed;pointer-events:auto}.template-card.locked:hover{opacity:.6}.template-lock-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#0000001a;border-radius:6px;pointer-events:none;z-index:10}.template-lock-icon{font-size:1.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.template-upgrade-tooltip{position:absolute;bottom:-35px;left:50%;transform:translate(-50%);background:#2d1b4e;color:#fff;padding:.5rem .75rem;border-radius:6px;font-size:.8rem;white-space:nowrap;z-index:20;box-shadow:0 2px 8px #0003;pointer-events:none}.template-upgrade-tooltip:before{content:"";position:absolute;top:-5px;left:50%;transform:translate(-50%);border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #2D1B4E}.favorite-btn{background:#ffffffe6;border:1px solid #ddd;border-radius:4px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;color:#999;transition:all .2s;padding:0;line-height:1}.favorite-btn:hover{background:#fff;border-color:#b8860b;color:#b8860b}.favorite-btn.active{background:#b8860b;border-color:#b8860b;color:#fff}.template-section{margin-bottom:1.5rem}.template-section:last-child{margin-bottom:0}.template-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.template-section-header h4{margin:0;font-size:.95rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}@media (max-width: 768px){.template-selector{padding:1rem}.template-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.template-selector-header{flex-direction:column;align-items:flex-start;gap:.5rem}.template-scroll-controls{width:100%;justify-content:space-between}}.font-selector{margin-bottom:1.5rem;position:relative}.font-selector-label{display:block;font-size:.95rem;font-weight:600;color:#333;margin-bottom:.5rem}.font-language-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.font-language-filter{padding:.4rem .8rem;border:1px solid var(--app-gold-border-light, #caa35a);border-radius:4px;background:#fff;color:#666;font-size:.85rem;cursor:pointer;transition:all .2s;font-weight:500}.font-language-filter:hover{border-color:var(--app-gold-border-light, #caa35a);color:#4b006e;background:#f8f8f8}.font-language-filter.active{background:#4b006e;color:#fff;border:1px solid var(--app-gold-border-light, #caa35a)}.font-language-filter.clear{background:#f0f0f0;color:#666;font-size:.8rem;padding:.4rem .6rem;border:1px solid var(--app-gold-border-light, #caa35a)}.font-language-filter.clear:hover{background:#e0e0e0;border-color:var(--app-gold-border-light, #caa35a)}.font-input-container{position:relative;width:100%}.font-input{width:100%;padding:.75rem 2.5rem .75rem .75rem;border:1px solid var(--app-gold-border-light, #caa35a);border-radius:6px;font-size:.95rem;background:#fff;color:#333;transition:border-color .2s;box-sizing:border-box;cursor:text}.font-input-container:after{content:"▼";position:absolute;right:.75rem;top:50%;transform:translateY(-50%);pointer-events:none;color:#666;font-size:.7rem;z-index:1}.font-input:hover{border-color:#999}.font-input:focus{outline:none;border-color:#4b006e;box-shadow:0 0 0 2px #4b006e1a}.font-suggestions{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #4B006E;border-top:none;border-radius:0 0 6px 6px;max-height:300px;overflow-y:auto;overflow-x:hidden;z-index:1000;box-shadow:0 4px 12px #00000026;margin-top:-1px;display:block}.font-suggestion{padding:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0f0f0;transition:background-color .15s}.font-suggestion:last-child{border-bottom:none}.font-suggestion:hover,.font-suggestion.highlighted{background-color:#f5f5f5}.font-suggestion-name{font-weight:500;color:#333;flex:1;text-align:left}.font-suggestion-language{font-size:.8rem;color:#666;margin-left:.5rem;padding:.2rem .5rem;background:#e8e8e8;border-radius:4px}.font-suggestion-default{font-size:.75rem;color:#4b006e;margin-left:.5rem;font-weight:600}.font-suggestion.locked{opacity:.5;cursor:not-allowed;position:relative}.font-suggestion.locked:hover{opacity:.6}.font-lock-icon{margin-left:.25rem;font-size:.9rem}.font-upgrade-tooltip{position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:.5rem;background:#2d1b4e;color:#fff;padding:.5rem .75rem;border-radius:6px;font-size:.8rem;white-space:nowrap;z-index:1000;box-shadow:0 2px 8px #0003;pointer-events:none}.font-upgrade-tooltip:before{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid #2D1B4E}.font-suggestion-footer{padding:.5rem .75rem;font-size:.8rem;color:#999;text-align:center;background:#f8f8f8;border-top:1px solid #e0e0e0}.font-preview{margin-top:.5rem;padding:.75rem;background:#f8f9fa;border-radius:4px;font-size:1rem;color:#666;text-align:center;border:1px solid #e0e0e0}.font-suggestions::-webkit-scrollbar{width:8px}.font-suggestions::-webkit-scrollbar-track{background:#f1f1f1}.font-suggestions::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.font-suggestions::-webkit-scrollbar-thumb:hover{background:#555}@media (max-width: 768px){.font-suggestions{max-height:200px}.font-suggestion{padding:.6rem;font-size:.9rem}.font-suggestion-language{font-size:.7rem;padding:.15rem .4rem}}.font-color-selector{margin-bottom:1.5rem;position:relative}.font-color-selector-label{display:block;font-size:.95rem;font-weight:600;color:#333;margin-bottom:.75rem}.color-picker-trigger{display:flex;gap:.5rem;margin-bottom:.75rem}.color-preview-button{flex:1;height:40px;border:2px solid #1A0F2E;border-radius:6px;cursor:pointer;transition:all .2s;position:relative;overflow:hidden;background:linear-gradient(135deg,#2d1b4e,#1a0f2e)}.color-preview-button:hover{border-color:#2d1b4e;transform:translateY(-1px);box-shadow:0 2px 6px #2d1b4e4d}.color-preview-text{color:#fff;font-size:.85rem;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}.template-color-button{width:40px;height:40px;border:2px solid #ddd;border-radius:6px;cursor:pointer;transition:all .2s;color:#fff;font-weight:700;font-size:.9rem;text-shadow:0 1px 2px rgba(0,0,0,.3)}.template-color-button:hover{border-color:#4b006e;transform:translateY(-1px);box-shadow:0 2px 6px #4b006e33}.color-picker-popup{position:absolute;top:100%;left:0;right:0;background:#fff;border:2px solid #4B006E;border-radius:8px;box-shadow:0 4px 16px #0003;z-index:1000;margin-top:.5rem;padding:1rem}.color-picker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #e0e0e0}.color-picker-header span{font-weight:600;color:#333;font-size:.95rem}.color-picker-close{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.color-picker-close:hover{background:#f0f0f0;color:#333}.color-picker-body{display:flex;gap:1rem;margin-bottom:1rem}.color-picker-area{flex:1;height:200px;position:relative;border-radius:6px;cursor:crosshair;background:linear-gradient(to right,white 0%,transparent 100%),linear-gradient(to top,black 0%,transparent 100%);border:2px solid #ddd;overflow:hidden}.color-picker-cursor{position:absolute;width:16px;height:16px;border:2px solid white;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0000004d,0 2px 4px #0003;pointer-events:none}.color-picker-hue{width:30px;height:200px;position:relative;border-radius:6px;cursor:pointer;background:linear-gradient(to bottom,red,#ff0,#0f0,#0ff,#00f,#f0f,red);border:2px solid #ddd;overflow:hidden}.color-picker-hue-cursor{position:absolute;left:0;right:0;width:100%;height:4px;background:#fff;border:2px solid #333;border-radius:2px;transform:translateY(-50%);pointer-events:none;box-shadow:0 0 4px #0000004d}.color-picker-inputs{display:flex;gap:1rem;margin-bottom:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.color-input-group{flex:1;display:flex;align-items:center;gap:.5rem}.color-input-group label{font-size:.85rem;font-weight:500;color:#666;min-width:40px}.color-hex-input{flex:1;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;font-family:monospace;text-transform:uppercase}.color-hex-input:focus{outline:none;border-color:#4b006e;box-shadow:0 0 0 2px #4b006e1a}.color-picker-input{width:60px;height:40px;border:1px solid #ddd;border-radius:4px;cursor:pointer;padding:2px}.color-presets{padding-top:1rem;border-top:1px solid #e0e0e0}.preset-label{font-size:.85rem;font-weight:500;color:#666;margin-bottom:.5rem}.preset-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:.4rem}.preset-color{width:100%;aspect-ratio:1;border:2px solid #ddd;border-radius:4px;cursor:pointer;transition:all .2s;padding:0;min-height:28px}.preset-color:hover{transform:scale(1.1);border-color:#4b006e;box-shadow:0 2px 6px #0003;z-index:1;position:relative}.preset-color.selected{border-color:#4b006e;border-width:3px;box-shadow:0 0 0 2px #fff,0 2px 8px #4b006e66;transform:scale(1.15);z-index:2;position:relative}.font-color-preview{padding:.75rem;border-radius:6px;text-align:center;font-size:.85rem;font-weight:600;border:1px solid #e0e0e0;min-height:40px;display:flex;align-items:center;justify-content:center;margin-top:.5rem}.color-preview-label{mix-blend-mode:difference;font-weight:600}@media (max-width: 768px){.color-picker-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90vw;max-width:400px;max-height:90vh;overflow-y:auto}.color-picker-body{flex-direction:column}.color-picker-hue{width:100%;height:30px}.color-picker-hue-cursor{width:4px;height:100%;left:50%;transform:translate(-50%);top:0}.preset-grid{grid-template-columns:repeat(6,1fr)}}.auth-loading{padding:.5rem 1rem;color:#666}.auth-login-container{position:relative}.auth-login-button{background:#2d1b4e;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.auth-login-button:hover:not(:disabled){background:#3d2a5e}.auth-login-button:disabled{opacity:.6;cursor:not-allowed}.auth-login-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:280px;z-index:20000;padding:1rem}.auth-login-header{margin-bottom:1rem;text-align:center}.auth-login-header p{margin:0;color:#333;font-size:.9rem}.auth-provider-buttons{display:flex;flex-direction:column;gap:.75rem}.auth-provider-button{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1rem;border:1px solid #e0e0e0;border-radius:6px;background:#fff;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s;width:100%}.auth-provider-button:hover:not(:disabled){background:#f5f5f5;border-color:#ccc}.auth-provider-button:disabled{opacity:.6;cursor:not-allowed}.auth-provider-icon{width:20px;height:20px}.auth-user-menu{position:relative}.auth-user-button{display:flex;align-items:center;gap:.75rem;background:#ffffffe6;border:1px solid rgba(154,123,63,.3);border-radius:6px;padding:.5rem 1rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000001a}.auth-user-button:hover{background:#fff;border-color:#9a7b3f;box-shadow:0 2px 6px #9a7b3f33}.auth-user-avatar{width:32px;height:32px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.auth-user-avatar-placeholder{width:32px;height:32px;border-radius:50%;background:#2d1b4e;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem}.auth-user-name{font-size:.95rem;color:#3b235a;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.auth-menu-arrow{font-size:.7rem;color:#666}.auth-menu-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:#faf9f6;border:2px solid #9A7B3F;border-radius:8px;box-shadow:0 4px 16px #3b235a33;min-width:220px;z-index:10000;overflow:hidden}.auth-menu-user-info{padding:1rem;border-bottom:2px solid #9A7B3F;background:#9a7b3f0d}.auth-menu-email{font-size:.85rem;color:#2a2a2a;word-break:break-all;font-weight:500}.auth-menu-item{width:100%;padding:.75rem 1rem;border:none;background:#faf9f6;text-align:left;cursor:pointer;font-size:.95rem;color:#3b235a;transition:all .2s;font-weight:500;border-bottom:1px solid rgba(221,214,200,.3)}.auth-menu-item:last-child{border-bottom:none}.auth-menu-item:hover{background:#9a7b3f1a;color:#3b235a;padding-left:1.25rem}.auth-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:999}.login-page-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.login-page-container{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-width:450px;width:100%;position:relative;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.login-page-header{padding:2rem 2rem 1rem;text-align:center;border-bottom:1px solid #e0e0e0;position:relative}.login-page-header h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:#4b006e}.login-page-subtitle{margin:0;color:#666;font-size:.95rem}.login-page-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:2rem;color:#999;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s;line-height:1}.login-page-close:hover{background:#f5f5f5;color:#333}.login-page-content{padding:2rem}.login-page-error{background:#fee;border:1px solid #fcc;color:#c33;padding:.75rem 1rem;border-radius:6px;margin-bottom:1.5rem;font-size:.9rem}.login-providers{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.login-provider-button{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.875rem 1.5rem;border:2px solid #e0e0e0;border-radius:8px;background:#fff;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s;width:100%;color:#333}.login-provider-button:hover:not(:disabled){border-color:#2d1b4e;background:#f9f9f9;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.login-provider-button:active:not(:disabled){transform:translateY(0)}.login-provider-button:disabled{opacity:.6;cursor:not-allowed}.login-provider-google{border-color:#4285f4}.login-provider-google:hover:not(:disabled){background:#f8f9ff;border-color:#357ae8}.login-provider-facebook{border-color:#1877f2}.login-provider-facebook:hover:not(:disabled){background:#f0f4ff;border-color:#166fe5}.login-provider-apple{border-color:#000}.login-provider-apple:hover:not(:disabled){background:#f5f5f5;border-color:#333}.login-provider-icon{width:24px;height:24px;flex-shrink:0}.login-page-loading{text-align:center;padding:1rem;color:#666;font-size:.9rem}.login-page-footer{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e0e0e0}.login-page-note{margin:0;font-size:.85rem;color:#999;text-align:center;line-height:1.5}@media (max-width: 480px){.login-page-container{margin:1rem;max-width:none}.login-page-header,.login-page-content{padding:1.5rem}.login-page-header h2{font-size:1.5rem}}.user-profile-container{min-height:100vh;padding:2rem;background:#f5f5f5}.user-profile-card{max-width:800px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.user-profile-header{display:flex;align-items:center;gap:1.5rem;padding:2rem;background:linear-gradient(135deg,#2d1b4e,#3d2a5e);color:#fff}.user-profile-avatar{width:80px;height:80px;border-radius:50%;overflow:hidden;border:3px solid white;flex-shrink:0}.user-profile-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.user-avatar-placeholder{width:100%;height:100%;background:#fff3;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#fff}.user-profile-info{flex:1}.user-profile-info h1{margin:0 0 .5rem;font-size:1.75rem}.user-email{margin:0 0 1rem;opacity:.9;font-size:1rem}.user-subscription-badge{display:inline-block}.badge{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase}.badge-free{background:#e3f2fd;color:#1976d2}.badge-basic{background:#f3e5f5;color:#7b1fa2}.badge-pro{background:#fff3e0;color:#e65100}.user-profile-section{padding:2rem;border-bottom:1px solid #e0e0e0}.user-profile-section:last-child{border-bottom:none}.user-profile-section h2{margin:0 0 1.5rem;font-size:1.5rem;color:#2d1b4e}.user-profile-section h3{margin:0 0 1rem;font-size:1.25rem;color:#2d1b4e}.user-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.user-detail-item{display:flex;flex-direction:column;gap:.5rem}.user-detail-item label{font-size:.875rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:1.25rem;font-weight:600;color:#2d1b4e}.detail-value-large{font-size:2rem;color:#2d1b4e}.detail-value-small{font-size:.875rem;font-weight:400;color:#666;word-break:break-all;font-family:monospace}.user-limit-reached{background:#fff3cd;border-left:4px solid #ffc107}.upgrade-button,.sign-out-button{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.upgrade-button{background:#2d1b4e;color:#fff}.upgrade-button:hover{background:#3d2a5e}.sign-out-button{background:#dc3545;color:#fff}.sign-out-button:hover{background:#c82333}.user-dev-info{background:#f8f9fa;border-top:2px dashed #dee2e6}.user-dev-info details{margin-top:1rem}.user-dev-info summary{cursor:pointer;padding:.5rem;background:#e9ecef;border-radius:4px;font-weight:600;margin-bottom:1rem}.user-raw-data{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;padding:1rem;overflow-x:auto;font-size:.875rem;font-family:monospace;max-height:400px;overflow-y:auto}.user-favorites-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.user-favorite-item{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:.75rem 1rem;color:#2d1b4e;font-weight:600}.user-dev-note{margin-top:1rem;padding:1rem;background:#e7f3ff;border-left:4px solid #2196f3;border-radius:4px;font-size:.875rem}.ppt-history-list{display:flex;flex-direction:column;gap:1rem}.ppt-history-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8f9fa;border-radius:8px;border-left:4px solid #2D1B4E}.ppt-history-label{font-weight:600;color:#2d1b4e;font-size:1rem}.ppt-history-timestamp{font-size:.875rem;color:#666;font-family:monospace}@media (max-width: 768px){.ppt-history-item{flex-direction:column;align-items:flex-start;gap:.5rem}.user-profile-container{padding:1rem}.user-profile-card{border-radius:8px}.user-profile-header{flex-direction:column;text-align:center;padding:1.5rem 1rem}.user-profile-avatar{width:64px;height:64px}.user-profile-info h1{font-size:1.4rem}.user-profile-section{padding:1.25rem 1rem}.user-profile-section h2{font-size:1.25rem}.user-details-grid{grid-template-columns:1fr}}@media (max-width: 480px){.user-profile-container{padding:.75rem}.user-profile-header{padding:1.25rem .75rem}.user-profile-section{padding:1rem .75rem}.user-profile-section h2{font-size:1.15rem}.ppt-history-item{padding:.75rem}}.user-list-container{width:100%}.user-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.user-list-header h2{margin:0;color:#2d1b4e;font-size:1.5rem}.user-list-controls{display:flex;gap:1rem;align-items:center}.user-list-search{padding:.5rem 1rem;border:1px solid #ddd;border-radius:6px;font-size:.9rem;min-width:200px}.user-list-filter{padding:.5rem 1rem;border:1px solid #ddd;border-radius:6px;font-size:.9rem;background:#fff;cursor:pointer}.user-list-table-container{overflow-x:auto;margin-bottom:1.5rem}.user-list-table{width:100%;border-collapse:collapse;font-size:.9rem}.user-list-table thead{background:#f8f9fa;border-bottom:2px solid #ddd}.user-list-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#2d1b4e;white-space:nowrap}.user-list-table td{padding:.75rem 1rem;border-bottom:1px solid #eee}.user-list-table tbody tr:hover{background:#f8f9fa}.user-list-empty{text-align:center;padding:2rem;color:#666}.plan-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600;text-transform:uppercase}.plan-badge.plan-free{background:#e3f2fd;color:#1976d2}.plan-badge.plan-basic{background:#f3e5f5;color:#7b1fa2}.plan-badge.plan-pro{background:#fff3e0;color:#e65100}.user-detail-button{padding:.4rem 1rem;background:#2d1b4e;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500}.user-detail-button:hover{background:#3d2a5e}.user-list-pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #eee}.user-list-pagination button{padding:.5rem 1rem;background:#2d1b4e;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem}.user-list-pagination button:disabled{background:#ccc;cursor:not-allowed}.user-list-pagination button:not(:disabled):hover{background:#3d2a5e}.user-list-pagination span{color:#666;font-size:.9rem}.user-detail-container{width:100%}.user-detail-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #eee}.user-detail-back{padding:.5rem 1rem;background:#2d1b4e;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500}.user-detail-back:hover{background:#3d2a5e}.user-detail-header h2{margin:0;color:#2d1b4e;font-size:1.5rem}.user-detail-info{display:flex;flex-direction:column;gap:2rem}.user-detail-section{background:#f8f9fa;padding:1.5rem;border-radius:8px}.user-detail-section h3{margin:0 0 1rem;color:#2d1b4e;font-size:1.2rem;border-bottom:2px solid #ddd;padding-bottom:.5rem}.user-detail-table{width:100%;border-collapse:collapse}.user-detail-table td{padding:.75rem 1rem;border-bottom:1px solid #ddd}.user-detail-table td:first-child{width:200px;color:#666}.user-detail-empty{text-align:center;padding:2rem;color:#666;font-style:italic}.ppt-history-table-container{overflow-x:auto;margin-top:1rem}.ppt-history-table{width:100%;border-collapse:collapse;font-size:.9rem;background:#fff}.ppt-history-table thead{background:#f8f9fa;border-bottom:2px solid #ddd}.ppt-history-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#2d1b4e;white-space:nowrap}.ppt-history-table td{padding:.75rem 1rem;border-bottom:1px solid #eee}.ppt-history-table tbody tr:hover{background:#f8f9fa}.plan-manager{border:1px solid #e2e2e2;border-radius:10px;padding:1.25rem;margin-bottom:2rem;background:#fafafa}.plan-manager h3{margin:0 0 1rem;font-size:1.1rem;color:#2d1b4e}.plan-manager-form{display:grid;gap:.75rem}.plan-manager-field{display:grid;gap:.35rem}.plan-manager-field label{font-size:.9rem;color:#444;font-weight:600}.plan-manager-field input,.plan-manager-field select{padding:.6rem .75rem;border-radius:6px;border:1px solid #ccc;font-size:.95rem}.plan-manager button{padding:.65rem 1rem;background:#2d1b4e;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.plan-manager button:disabled{opacity:.7;cursor:not-allowed}.plan-manager-status{margin-top:.5rem;padding:.5rem .75rem;border-radius:6px;font-size:.9rem}.plan-manager-status.success{background:#e6f4ea;color:#1e4620;border:1px solid #b7e1c1}.plan-manager-status.error{background:#fdecea;color:#7a1f1f;border:1px solid #f5c2c0}.admin-dashboard{min-height:100vh;background:#f5f5f5}.admin-header{background:linear-gradient(135deg,#2d1b4e,#1a0f2e);color:#fff;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000001a}.admin-header-content{display:flex;align-items:center;gap:1rem}.admin-header-logo{width:50px;height:50px;border-radius:8px;-o-object-fit:cover;object-fit:cover}.admin-header-text h1{margin:0;font-size:1.5rem;font-weight:600}.admin-header-text .subtitle{margin:.25rem 0 0;font-size:.9rem;opacity:.9}.admin-main{padding:2rem;max-width:1400px;margin:0 auto}.admin-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:2rem}.admin-loading{text-align:center;padding:3rem;font-size:1.1rem;color:#666}.admin-error{text-align:center;padding:3rem;color:#d32f2f}.admin-error button{margin-top:1rem;padding:.5rem 1.5rem;background:#2d1b4e;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem}.admin-error button:hover{background:#3d2a5e}.admin-access-denied{text-align:center;padding:4rem 2rem}.admin-access-denied h2{color:#d32f2f;margin-bottom:1rem}.admin-access-denied p{color:#666;margin-bottom:2rem;font-size:1.1rem}.admin-back-button{padding:.75rem 1.5rem;background:#2d1b4e;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600}.admin-back-button:hover{background:#3d2a5e}@media (max-width: 768px){.admin-header{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem}.admin-header-content{flex-wrap:wrap}.admin-header-text h1{font-size:1.25rem}.admin-main{padding:1rem}.admin-container{padding:1.25rem}}.artist-page{min-height:100vh;background:var(--lyrics-bg, #f7f7f8);color:var(--lyrics-text, #1e1e24);padding:var(--page-padding-y) var(--page-padding-x) 2rem;max-width:100%;overflow-x:hidden;min-width:0}.artist-page-breadcrumb{display:flex;flex-wrap:wrap;gap:.35rem;font-size:var(--text-sm);margin-bottom:1rem;color:var(--lyrics-muted, #5d5f69);font-family:var(--font-sans);overflow-wrap:break-word}.artist-page-breadcrumb a{color:var(--lyrics-accent, #2d1b4e);text-decoration:none}.artist-page-breadcrumb a:hover{text-decoration:underline}.artist-page-header{margin-bottom:1.5rem}.artist-page-title{font-size:clamp(var(--text-xl),4vw,var(--text-3xl));font-weight:700;margin:0 0 .5rem;color:var(--lyrics-accent, #2d1b4e);font-family:var(--font-serif);line-height:var(--leading-tight)}.artist-page-intro{margin:0 0 1rem;font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--lyrics-text, #1e1e24);font-family:var(--font-sans)}.artist-page-link{display:inline-block;color:var(--lyrics-accent, #2d1b4e);font-weight:600;text-decoration:none;margin-top:.5rem}.artist-page-link:hover{text-decoration:underline}.artist-page-link-all{padding:.5rem 0}.artist-page-main{max-width:var(--content-narrow);width:100%;min-width:0}.artist-page-songs-title{font-size:1.15rem;font-weight:600;margin:0 0 .75rem;color:var(--lyrics-text, #1e1e24)}.artist-page-song-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.artist-page-song-list li{margin:0;padding:0}.artist-page-song-link{display:block;padding:.6rem .75rem;background:var(--lyrics-card, #ffffff);border:1px solid var(--lyrics-border, #e5e1db);border-radius:8px;color:var(--lyrics-text, #1e1e24);text-decoration:none;font-weight:500;font-family:var(--font-tamil);font-size:var(--text-base);transition:background .2s,border-color .2s;min-height:44px;min-width:0;overflow-wrap:break-word}.artist-page-song-link:hover,.artist-page-song-link:focus{background:var(--lyrics-bg, #f7f7f8);border-color:var(--lyrics-accent, #2d1b4e)}.artist-page-state{padding:2rem 1rem;text-align:center;background:var(--lyrics-card, #ffffff);border:1px solid var(--lyrics-border, #e5e1db);border-radius:12px;margin-top:1rem}.artist-page-state h2{margin:0 0 .5rem;font-size:1.25rem;color:var(--lyrics-text, #1e1e24)}.artist-page-state p{margin:0 0 1rem;color:var(--lyrics-muted, #5d5f69)}.app-shell.theme-dark .artist-page,.app.theme-dark .artist-page{background:var(--lyrics-bg);color:var(--lyrics-text)}.app-shell.theme-dark .artist-page-breadcrumb a,.app.theme-dark .artist-page-breadcrumb a,.app-shell.theme-dark .artist-page-title,.app.theme-dark .artist-page-title{color:var(--lyrics-accent)}.app-shell.theme-dark .artist-page-song-link,.app.theme-dark .artist-page-song-link{background:var(--lyrics-card);border-color:var(--lyrics-border);color:var(--lyrics-text)}.app-shell.theme-dark .artist-page-song-link:hover,.app.theme-dark .artist-page-song-link:focus,.app.theme-dark .artist-page-song-link:hover{background:var(--lyrics-bg);border-color:var(--lyrics-accent)}.app-shell.theme-dark .artist-page-state,.app.theme-dark .artist-page-state{background:var(--lyrics-card);border-color:var(--lyrics-border)}@media (max-width: 768px){.artist-page{padding:1rem}.artist-page-title{font-size:1.5rem}.artist-page-song-link{padding:.65rem .75rem;min-height:48px;display:flex;align-items:center}}.lyrics-landing{min-height:100vh;background:var(--lyrics-bg, #f7f7f8);color:var(--lyrics-text, #1e1e24);padding:var(--page-padding-y) var(--page-padding-x) 2rem;max-width:100%;overflow-x:hidden;min-width:0;font-family:var(--font-sans)}.lyrics-landing-breadcrumb{font-size:var(--text-sm);margin-bottom:1rem;color:var(--lyrics-muted, #5d5f69)}.lyrics-landing-breadcrumb a{color:var(--lyrics-accent, #2d1b4e);text-decoration:none}.lyrics-landing-breadcrumb a:hover{text-decoration:underline}.lyrics-landing-header{margin-bottom:2rem;max-width:var(--content-narrow);width:100%;min-width:0}.lyrics-landing-title{font-size:clamp(var(--text-xl),4vw,var(--text-3xl));font-weight:700;margin:0 0 .75rem;color:var(--lyrics-accent, #2d1b4e);font-family:var(--font-serif);line-height:var(--leading-tight)}.lyrics-landing-intro{margin:0 0 1rem;font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--lyrics-text, #1e1e24)}.lyrics-landing-count{margin:0 0 1rem;font-size:var(--text-base);color:var(--lyrics-muted, #5d5f69)}.lyrics-landing-cta{display:inline-block;padding:.6rem 1.2rem;background:var(--lyrics-accent, #2d1b4e);color:#fff;font-weight:600;text-decoration:none;border-radius:999px;transition:background .2s,transform .15s}.lyrics-landing-cta:hover{background:#3d2a5e;color:#fff;transform:translateY(-1px)}.lyrics-landing-main{max-width:var(--content-max-width);width:100%;min-width:0}.lyrics-landing-index-title{font-size:var(--text-xl);font-weight:600;margin:0 0 1.25rem;color:var(--lyrics-accent, #2d1b4e);font-family:var(--font-sans)}.lyrics-landing-letter-section{margin-bottom:1.75rem;scroll-margin-top:1rem}.lyrics-landing-letter-heading{font-size:1.5rem;font-weight:700;margin:0 0 .5rem;color:var(--lyrics-accent, #2d1b4e);width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;background:#2d1b4e14;border-radius:8px}.lyrics-landing-song-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.2rem}.lyrics-landing-song-list li{margin:0;padding:0}.lyrics-landing-song-link{display:block;padding:.5rem .75rem;color:var(--lyrics-accent, #2d1b4e);font-weight:500;text-decoration:none;border-radius:6px;transition:background .2s}.lyrics-landing-song-link:hover,.lyrics-landing-song-link:focus{background:#2d1b4e14;text-decoration:underline}.lyrics-landing-letters-nav{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--lyrics-border, #e5e1db);display:flex;flex-wrap:wrap;gap:.5rem}.lyrics-landing-letter-jump{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;background:var(--lyrics-card, #fff);border:1px solid var(--lyrics-border, #e5e1db);border-radius:6px;color:var(--lyrics-accent, #2d1b4e);font-weight:600;font-size:.9rem;text-decoration:none;transition:background .2s,border-color .2s}.lyrics-landing-letter-jump:hover{background:#2d1b4e14;border-color:var(--lyrics-accent, #2d1b4e)}.lyrics-landing-state{padding:2rem 1rem;text-align:center;background:var(--lyrics-card, #fff);border:1px solid var(--lyrics-border, #e5e1db);border-radius:12px;margin-top:1rem}.lyrics-landing-state h2{margin:0 0 .5rem;font-size:1.25rem;color:var(--lyrics-text, #1e1e24)}.lyrics-landing-state p{margin:0 0 1rem;color:var(--lyrics-muted, #5d5f69)}.lyrics-landing-state a{color:var(--lyrics-accent, #2d1b4e);font-weight:600;text-decoration:none}.lyrics-landing-state a:hover{text-decoration:underline}.app-shell.theme-dark .lyrics-landing,.app.theme-dark .lyrics-landing{background:var(--lyrics-bg);color:var(--lyrics-text)}.app-shell.theme-dark .lyrics-landing-title,.app-shell.theme-dark .lyrics-landing-letter-heading,.app-shell.theme-dark .lyrics-landing-index-title,.app.theme-dark .lyrics-landing-title,.app.theme-dark .lyrics-landing-letter-heading,.app.theme-dark .lyrics-landing-index-title,.app-shell.theme-dark .lyrics-landing-song-link,.app.theme-dark .lyrics-landing-song-link{color:var(--lyrics-accent)}.app-shell.theme-dark .lyrics-landing-letter-jump,.app.theme-dark .lyrics-landing-letter-jump{background:var(--lyrics-card);border-color:var(--lyrics-border);color:var(--lyrics-accent)}@media (max-width: 768px){.lyrics-landing{padding:1rem}.lyrics-landing-title{font-size:1.5rem}.lyrics-landing-intro{font-size:1rem}.lyrics-landing-song-link{padding:.6rem .75rem;min-height:48px;display:flex;align-items:center}}.collection-page{min-height:100vh;background:var(--lyrics-bg, #f7f7f8);color:var(--lyrics-text, #1e1e24);padding:var(--page-padding-y) var(--page-padding-x) 2rem;max-width:100%;overflow-x:hidden;min-width:0;font-family:var(--font-sans)}.collection-page-breadcrumb{font-size:var(--text-sm);margin-bottom:1rem;color:var(--lyrics-muted, #5d5f69)}.collection-page-breadcrumb a{color:var(--lyrics-accent, #2d1b4e);text-decoration:none}.collection-page-breadcrumb a:hover{text-decoration:underline}.collection-page-header{margin-bottom:1.5rem;max-width:var(--content-narrow);width:100%;min-width:0}.collection-page-title{font-size:clamp(var(--text-xl),4vw,var(--text-3xl));font-weight:700;margin:0 0 .75rem;color:var(--lyrics-accent, #2d1b4e);font-family:var(--font-serif);line-height:var(--leading-tight)}.collection-page-intro{margin:0 0 1rem;font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--lyrics-text, #1e1e24)}.collection-page-cta{display:inline-block;padding:.5rem 1rem;color:var(--lyrics-accent, #2d1b4e);font-weight:600;text-decoration:none;margin-top:.5rem}.collection-page-cta:hover{text-decoration:underline}.collection-page-main{max-width:var(--content-max-width);width:100%;min-width:0}.collection-page-count{margin:0 0 1rem;font-size:var(--text-base);color:var(--lyrics-muted, #5d5f69)}.collection-page-song-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}.collection-page-song-list li{margin:0;padding:0}.collection-page-song-link{display:inline;color:var(--lyrics-accent, #2d1b4e);font-weight:500;text-decoration:none}.collection-page-song-link:hover,.collection-page-song-link:focus{text-decoration:underline}.collection-page-song-artist{color:var(--lyrics-muted, #5d5f69);font-size:.95rem}.collection-page-pagination{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.collection-page-pagination button{min-width:2.25rem;height:2.25rem;border-radius:8px;border:1px solid var(--lyrics-gold-border, #d4af37);background:#fff;color:var(--lyrics-text, #1e1e24);font-weight:600;cursor:pointer}.collection-page-pagination button.active{background:var(--lyrics-accent, #2d1b4e);border-color:var(--lyrics-accent, #2d1b4e);color:#fff}.collection-page-pagination button:hover,.collection-page-pagination button:focus{border-color:var(--lyrics-accent, #2d1b4e)}.collection-page-state{padding:2rem 1rem;text-align:center;background:var(--lyrics-card, #fff);border:1px solid var(--lyrics-border, #e5e1db);border-radius:12px;margin-top:1rem}.collection-page-state h2{margin:0 0 .5rem;font-size:1.25rem;color:var(--lyrics-text, #1e1e24)}.collection-page-state p{margin:0 0 1rem;color:var(--lyrics-muted, #5d5f69)}.collection-page-state a{color:var(--lyrics-accent, #2d1b4e);font-weight:600;text-decoration:none}.collection-page-state a:hover{text-decoration:underline}.worship-hub-list-title{font-size:1.2rem;font-weight:600;margin:0 0 1rem;color:var(--lyrics-accent, #2d1b4e)}.worship-hub-collection-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.worship-hub-collection-list li{margin:0;padding:0}.worship-hub-collection-card{display:block;padding:1rem 1.25rem;background:var(--lyrics-card, #fff);border:1px solid var(--lyrics-border, #e5e1db);border-radius:12px;text-decoration:none;color:var(--lyrics-text, #1e1e24);transition:border-color .2s,box-shadow .2s}.worship-hub-collection-card:hover,.worship-hub-collection-card:focus{border-color:var(--lyrics-accent, #2d1b4e);box-shadow:0 4px 12px #2d1b4e1a}.worship-hub-collection-name{display:block;font-size:1.1rem;font-weight:600;color:var(--lyrics-accent, #2d1b4e);margin-bottom:.35rem}.worship-hub-collection-desc{font-size:.9rem;color:var(--lyrics-muted, #5d5f69);line-height:1.45}.worship-hub-popular{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--lyrics-border, #e5e1db)}.worship-hub-popular .worship-hub-list-title{margin-bottom:.5rem}.worship-hub-popular-intro{margin:0 0 1rem;font-size:.95rem;color:var(--lyrics-muted, #5d5f69);line-height:1.5}.worship-hub-popular-list{margin-top:.5rem}.lyrics-detail-collections{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--lyrics-border, #e5e1db)}.lyrics-detail-collections-title{font-size:1rem;font-weight:600;margin:0 0 .5rem;color:var(--lyrics-text, #1e1e24)}.lyrics-detail-collections-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.lyrics-detail-collections-list li{margin:0;padding:0}.lyrics-detail-collection-link{display:inline-block;padding:.35rem .75rem;background:#2d1b4e14;color:var(--lyrics-accent, #2d1b4e);font-weight:500;font-size:.9rem;text-decoration:none;border-radius:999px;border:1px solid transparent;transition:background .2s,border-color .2s}.lyrics-detail-collection-link:hover,.lyrics-detail-collection-link:focus{background:#2d1b4e1f;border-color:var(--lyrics-accent, #2d1b4e)}.app-shell.theme-dark .collection-page,.app.theme-dark .collection-page{background:var(--lyrics-bg);color:var(--lyrics-text)}.app-shell.theme-dark .collection-page-title,.app-shell.theme-dark .worship-hub-list-title,.app.theme-dark .collection-page-title,.app.theme-dark .worship-hub-list-title,.app-shell.theme-dark .collection-page-song-link,.app.theme-dark .collection-page-song-link{color:var(--lyrics-accent)}.app-shell.theme-dark .worship-hub-collection-card,.app.theme-dark .worship-hub-collection-card{background:var(--lyrics-card);border-color:var(--lyrics-border);color:var(--lyrics-text)}.app-shell.theme-dark .worship-hub-collection-name,.app.theme-dark .worship-hub-collection-name{color:var(--lyrics-accent)}.app-shell.theme-dark .lyrics-detail-collection-link,.app.theme-dark .lyrics-detail-collection-link{background:#caa35a26;color:var(--lyrics-accent)}.app-shell.theme-dark .collection-page-pagination button,.app.theme-dark .collection-page-pagination button{background:#ffffff0f;color:#f3eaff;border-color:#ffffff38}.app-shell.theme-dark .collection-page-pagination button.active,.app.theme-dark .collection-page-pagination button.active{background:#d4af37;border-color:#d4af37;color:#2d1b4e}@media (max-width: 768px){.collection-page{padding:1rem}.collection-page-title{font-size:1.5rem}.collection-page-song-list li{padding:.4rem 0}}.app{min-height:100vh;display:flex;flex-direction:column;background:var(--app-bg)}.app-header{background:#ffffffeb;color:var(--app-accent);padding:1rem var(--page-padding-x);border-bottom:1px solid var(--app-border);display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;box-shadow:0 8px 20px #13111d14;position:sticky;top:0;z-index:1100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media (min-width: 768px){.app-header{padding:1.25rem 2rem;gap:1.5rem}}.app-header-content{display:flex;align-items:center;gap:1rem;flex:1 1 320px;min-width:240px}.app-header-actions{display:flex;align-items:center;gap:.75rem;flex:0 0 auto}.app-header-auth{display:flex;align-items:center;gap:.6rem;justify-content:flex-end;min-width:140px}.app-header-logo{height:52px;width:auto;-o-object-fit:contain;object-fit:contain;max-height:52px}.app-header-text{display:flex;flex-direction:column;align-items:flex-start}.app-header h1{font-size:clamp(var(--text-xl),4vw,var(--text-3xl));margin-bottom:.35rem;font-weight:600;color:var(--app-accent);font-family:var(--font-serif);letter-spacing:-.02em;line-height:var(--leading-tight)}.app-header .subtitle{font-size:var(--text-base);color:var(--app-muted);opacity:.85;font-weight:400;line-height:var(--leading-normal)}.header-action{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.65rem 1.4rem;font-weight:600;cursor:pointer;border:1px solid var(--app-gold-border-light);transition:all .2s ease;font-size:var(--text-sm);font-family:var(--font-sans);min-height:44px}.header-action.primary{background:linear-gradient(135deg,var(--app-accent) 0%,var(--app-accent-strong) 100%);color:#fff;border:1px solid var(--app-gold-border-light);box-shadow:0 8px 18px #24163d40}.header-action.primary:hover:not(:disabled){background:linear-gradient(135deg,color-mix(in srgb,var(--app-accent) 78%,#ffffff 22%) 0%,var(--app-accent) 100%);border-color:var(--app-gold-border-light)}.header-action.secondary{background:#f2f1f6;color:var(--app-accent);border:1px solid var(--app-gold-border-light)}.header-action.secondary:hover:not(:disabled){background:#ebe7f2}.header-action:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.login-button-inline{border:1px solid var(--app-gold-border-light)!important}.app-main{flex:1;padding:var(--page-padding-y) var(--page-padding-x);padding-bottom:2.5rem;background:var(--app-bg);min-width:0;max-width:100%}.container{max-width:var(--content-max-width);width:100%;margin:0 auto;min-width:0}.main-content-layout{display:grid;grid-template-columns:1fr;gap:1.5rem;padding:0;max-width:var(--content-max-width);width:100%;margin:0 auto;min-height:0;min-width:0}@media (min-width: 768px){.main-content-layout{grid-template-columns:50% 50%;gap:1.5rem;min-height:calc(100vh - 140px)}}.below-sections{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:1.5rem}@media (min-width: 768px){.below-sections{grid-template-columns:1fr 1fr}}.left-panel,.center-panel,.right-panel{background:var(--app-surface);border-radius:18px;padding:1.5rem;box-shadow:var(--app-shadow);border:2px solid var(--app-gold-border)}.left-panel,.right-panel{height:-moz-fit-content;height:fit-content;max-height:calc(100vh - 140px);overflow-y:auto}.center-panel{min-height:calc(100vh - 140px);display:flex;flex-direction:column;gap:1rem}.panel-section{padding:1rem 1rem 1.15rem;border-radius:14px;background:var(--app-surface);border:2px solid var(--app-gold-border);margin-bottom:1rem}.panel-title{font-weight:600;color:var(--app-accent);margin-bottom:.6rem;font-size:var(--text-sm);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.06em}.theme-dark .panel-title{color:#f4f1f8}.panel-actions{display:flex;flex-direction:column;gap:.6rem}.lyrics-search{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.9rem}.set-builder-search{margin-top:.4rem}.lyrics-search-row{display:flex;gap:.6rem;align-items:center}.lyrics-search-input{flex:1;padding:.55rem .75rem;border-radius:10px;border:1px solid var(--app-gold-border-light);background:var(--app-surface);font-size:var(--text-sm);font-family:var(--font-sans);min-width:0}.lyrics-search-input:focus{outline:none;border-color:var(--app-accent);box-shadow:0 0 0 3px #2d1b4e1f}.lyrics-search-button{padding:.55rem 1rem;border-radius:10px;border:1px solid var(--app-gold-border-light);background:#f2f1f6;color:var(--app-accent);font-weight:600;cursor:pointer;transition:background .2s ease}.lyrics-search-button:hover:not(:disabled){background:#ebe7f2}.lyrics-search-button:disabled{opacity:.6;cursor:not-allowed}.lyrics-search-results{display:grid;grid-template-columns:1fr;gap:.4rem;max-height:180px;overflow-y:auto;padding-right:.25rem}.lyrics-search-item{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;text-align:left;padding:.5rem .7rem;border-radius:10px;border:1px solid var(--app-border);background:var(--app-surface);cursor:pointer;font-size:var(--text-sm);font-family:var(--font-sans);color:var(--app-accent);min-height:44px;min-width:0}.lyrics-search-item:hover{background:#f2f1f6}.lyrics-search-item-title{font-weight:600}.lyrics-search-item-meta{font-size:var(--text-xs);color:var(--app-muted);line-height:var(--leading-snug)}.lyrics-search-item-first-line{font-size:var(--text-xs);color:var(--app-muted);font-family:var(--font-tamil);line-height:var(--leading-snug)}.theme-dark .lyrics-search-item-meta,.theme-dark .lyrics-search-item-first-line{color:var(--app-muted)}.theme-dark .lyrics-search-item{border-color:var(--app-border);background:var(--app-surface)}.theme-dark .lyrics-search-item:hover{background:#ffffff0f}.lyrics-search-error{color:#c33;font-size:.85rem}.error-message{background-color:#fee;color:#c33;padding:1rem;border-radius:6px;border:1px solid #fcc;font-size:.95rem;margin-top:1rem}.generate-button{background:linear-gradient(135deg,var(--app-accent) 0%,var(--app-accent-strong) 100%);color:#fff;border:1px solid transparent;padding:1.1rem 2.5rem;font-size:1.1rem;font-weight:600;border-radius:12px;cursor:pointer;transition:all .3s ease;box-shadow:0 10px 24px #24163d40;width:100%;margin-top:1.5rem;letter-spacing:.01em;position:relative;overflow:hidden}.generate-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(154,123,63,.2),transparent);transition:left .5s ease}.generate-button:hover:not(:disabled):before{left:100%}.generate-button:hover:not(:disabled){background:linear-gradient(135deg,color-mix(in srgb,var(--app-accent) 78%,#ffffff 22%) 0%,var(--app-accent) 100%);border-color:transparent;box-shadow:0 14px 28px #24163d4d;transform:translateY(-2px)}.generate-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #3b235a4d}.generate-button:disabled{background:#ded9d2;color:#6a6670;border-color:#ded9d2;cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.lyrics-guidelines{margin-top:0;padding:0;border:none;background:transparent;text-align:left;font-size:.88rem;color:var(--app-muted)}.lyrics-guidelines-title{margin:0 0 .4rem;font-weight:600;color:var(--app-accent)}.lyrics-guidelines ul{margin:0;padding-left:1.1rem}.lyrics-guidelines li{margin-bottom:.25rem}.lyrics-guidelines li:last-child{margin-bottom:0}.clear-lyrics-button{margin-top:0;width:100%;background:#fff;color:var(--app-accent);border:1px solid var(--app-gold-border-light);padding:.7rem 1rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.lyrics-search-row .clear-lyrics-button{width:auto;flex-shrink:0;padding:.55rem 1rem;font-size:inherit}.clean-lyrics-button{margin-top:0;width:100%;background:#f2f1f6;color:var(--app-accent);border:1px solid var(--app-gold-border-light);padding:.7rem 1rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.clean-lyrics-button:hover:not(:disabled){background:#ebe7f2}.clean-lyrics-button:disabled{opacity:.5;cursor:not-allowed}.input-mode-controls{margin-bottom:0;padding:0;border:none;border-radius:0;background:transparent;display:flex;flex-direction:column;gap:.6rem}.input-mode-row{display:grid;grid-template-columns:200px 1fr;align-items:center;gap:.6rem}.input-mode-label{font-weight:600;color:var(--app-accent);min-width:0}.input-mode-controls-group{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.input-mode-row select,.bible-reference-row input{padding:.45rem .7rem;border-radius:10px;border:1px solid #d8d4cf;background:#fff;color:var(--app-text)}.toggle-button{background:#fff;border:1px solid var(--app-gold-border-light);border-radius:999px;padding:.35rem .9rem;cursor:pointer;font-weight:600;color:var(--app-accent)}.toggle-button.active{background:var(--app-accent);color:#fff;border:1px solid var(--app-gold-border-light)}.set-builder{display:flex;flex-direction:column;gap:1rem}.set-builder-block{padding:.75rem;border:1px solid var(--app-border);border-radius:12px;background:#fff;overflow:hidden;min-width:0}.set-builder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-weight:600;color:var(--app-accent);flex-wrap:wrap;gap:.5rem;min-width:0}.set-builder-header>span{min-width:0}.set-builder-actions{display:flex;flex-wrap:wrap;gap:.35rem;min-width:0}.set-builder-actions button,.add-song-button{margin-left:0;padding:.35rem .7rem;border:1px solid var(--app-gold-border-light);background:#f2f1f6;border-radius:10px;cursor:pointer;font-size:.85rem;color:var(--app-accent);box-sizing:border-box}.set-builder-actions button{margin-left:0}.add-song-button{width:100%;margin-left:0;font-weight:600;box-sizing:border-box;max-width:100%}.bible-input-block{display:flex;flex-direction:column;gap:.75rem}.bible-reference-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.checkbox-inline{display:inline-flex;align-items:center;gap:.4rem;font-size:.9rem}.share-buttons{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;margin-top:0}.share-buttons button{border:1px solid var(--app-gold-border-light);background:#f2f1f6;color:var(--app-accent);padding:.4rem .8rem;border-radius:10px;cursor:pointer;font-weight:600;font-size:.85rem}.theme-preset{margin-bottom:0;display:flex;flex-direction:column;gap:.4rem}.theme-preset-label{font-weight:600;color:var(--app-accent)}.theme-preset select{padding:.5rem .6rem;border-radius:10px;border:1px solid #d8d4cf;background:#fff;color:var(--app-text)}.clear-lyrics-button:hover:not(:disabled){background:#f0edf8;color:var(--app-accent)}.clear-lyrics-button:disabled{opacity:.5;cursor:not-allowed}.play-ppt-button{margin-top:1rem;width:100%;background:#f2f1f6;color:var(--app-accent);border:1px solid var(--app-gold-border-light);padding:.7rem 1rem;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.play-ppt-button:hover:not(:disabled){background:#ebe7f2}.play-ppt-button:disabled{opacity:.5;cursor:not-allowed}.preview-placeholder{display:flex;align-items:center;justify-content:center;min-height:400px;color:#999;font-size:1.1rem}.app-footer{background-color:var(--app-bg);color:var(--app-text);text-align:center;padding:2.5rem 2rem;margin-top:auto;border-top:1px solid var(--app-border)}.app-footer p{font-size:.95rem;opacity:.75;line-height:1.6;margin:.5rem 0}.app-footer .footer-brand{font-size:1.1rem;font-weight:600;color:var(--app-accent);font-family:Playfair Display,Georgia,Times New Roman,serif;margin-bottom:.5rem}.theme-toggle{background:#fff;border:1px solid rgba(45,27,78,.2);border-radius:999px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;margin-right:.6rem;font-size:1rem;transition:background .2s ease,border-color .2s ease}.theme-toggle:hover{background:#f2eef7;border-color:#2d1b4e59}.theme-dark{background:#121018;color:#f4f1f8}.theme-dark .app-header,.theme-dark .app-main,.theme-dark .seo-footer,.theme-dark .app-footer{background:#121018;color:#f4f1f8;border-color:#f4f1f81a}.theme-dark .subtitle,.theme-dark p,.theme-dark .usage-message{color:#d7d1e3}.theme-dark .template-selector,.theme-dark .left-panel,.theme-dark .center-panel,.theme-dark .right-panel,.theme-dark .usage-display,.theme-dark .panel-section{background:#1b1822;border-color:var(--app-gold-border)}.theme-dark .template-card{background:#1e1b27;border-color:#f4f1f81f}.theme-dark .template-name,.theme-dark .template-preview-text,.theme-dark .seo-footer h2,.theme-dark .seo-footer h3,.theme-dark .app-footer .footer-brand,.theme-dark .preview-title{color:#f4f1f8}.theme-dark .preview-summary{background:#1f1b29;border-color:#f4f1f82e;color:#d7d1e3}.theme-dark .generate-button{background:var(--app-accent-strong);border-color:var(--app-accent-strong);color:#f7f3ff}.theme-dark .header-action.primary{background:var(--app-accent-strong);border-color:var(--app-gold-border-light);color:#f7f3ff}.theme-dark .header-action.secondary{background:#1f1b29;border-color:var(--app-gold-border-light);color:#f4f1f8}.theme-dark .clear-lyrics-button{background:transparent;color:#f4f1f8;border-color:var(--app-gold-border-light)}.theme-dark .play-ppt-button{color:#f4f1f8;border-color:var(--app-gold-border-light)}.theme-dark .play-ppt-button:hover:not(:disabled){background:#8c7db033}.theme-dark .input-mode-controls,.theme-dark .set-builder-block{background:#1f1b29;border-color:#f4f1f82e}.theme-dark .input-mode-label,.theme-dark .set-builder-header{color:#f4f1f8}.theme-dark .toggle-button,.theme-dark .set-builder-actions button,.theme-dark .add-song-button,.theme-dark .share-buttons button{background:#1f1b29;color:#f4f1f8;border-color:var(--app-gold-border-light)}.theme-dark .toggle-button.active{background:var(--app-accent-strong);border-color:var(--app-gold-border-light)}.theme-dark .clean-lyrics-button{background:#2b2438;border-color:var(--app-gold-border-light);color:#f4f1f8}.ppt-playback-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0f14;z-index:9999;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem}.ppt-playback-stage{flex:1;width:100%;max-width:1400px;display:flex;align-items:center;justify-content:center}.ppt-playback-frame{width:min(90vw,1280px);aspect-ratio:16 / 9;position:relative;display:flex;align-items:center;justify-content:center;padding:2.5rem;box-shadow:0 12px 40px #0006;background:#fff}.ppt-playback-watermark{position:absolute;left:.5rem;bottom:.5rem;font-size:.85rem;color:#00000080;font-family:Arial,sans-serif;opacity:.85;pointer-events:none;z-index:2}.ppt-playback-logo{position:absolute;right:.5rem;bottom:.5rem;width:clamp(3rem,8vmin,6rem);height:auto;max-height:clamp(2.5rem,6vmin,4.5rem);opacity:.9;pointer-events:none;z-index:2;-o-object-fit:contain;object-fit:contain}.ppt-playback-slide-number{position:absolute;top:1rem;right:1.5rem;font-size:.9rem;color:#00000080}.ppt-playback-text{text-align:center;white-space:pre-line}.ppt-playback-controls{display:flex;gap:.75rem;margin-top:1.5rem;padding:.75rem 1rem;background:#0f0f14f2;border-radius:12px;transition:opacity .25s ease;flex-shrink:0;z-index:10}.ppt-playback-controls.ppt-playback-controls-hidden{opacity:0;pointer-events:none}.ppt-playback-controls.ppt-playback-controls-visible{opacity:1;pointer-events:auto}.ppt-playback-controls button{background:var(--app-accent);color:#fff;border:2px solid rgba(255,255,255,.3);padding:.6rem 1.1rem;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .15s ease;-webkit-tap-highlight-color:transparent}.ppt-playback-controls button:hover:not(:disabled){background:var(--app-accent-strong);border-color:var(--app-gold-border-light);color:#fff;transform:translateY(-1px)}.ppt-playback-controls button:active:not(:disabled){transform:translateY(0)}.ppt-playback-controls button:disabled{opacity:.5;cursor:not-allowed}.ppt-playback-overlay:fullscreen .ppt-playback-stage,.ppt-playback-overlay:-webkit-full-screen .ppt-playback-stage,.ppt-playback-overlay:-moz-full-screen .ppt-playback-stage{flex:1;width:100%;max-width:none;min-height:0;display:flex;align-items:center;justify-content:center}.ppt-playback-overlay:fullscreen .ppt-playback-frame,.ppt-playback-overlay:-webkit-full-screen .ppt-playback-frame,.ppt-playback-overlay:-moz-full-screen .ppt-playback-frame{width:100%;height:auto;aspect-ratio:16 / 9;max-width:100%;max-height:100%;box-sizing:border-box}.ppt-playback-overlay:fullscreen .ppt-playback-controls,.ppt-playback-overlay:-webkit-full-screen .ppt-playback-controls,.ppt-playback-overlay:-moz-full-screen .ppt-playback-controls{flex-shrink:0;margin-top:0;padding:.5rem;background:#0f0f14f2;justify-content:center}@media (max-width: 768px){.ppt-playback-overlay{padding:1rem}.ppt-playback-stage{min-width:0;min-height:0;overflow:hidden}.ppt-playback-frame{align-self:stretch;max-width:100%;width:auto;height:100%;aspect-ratio:16 / 9;padding:1rem;box-sizing:border-box;overflow:hidden}.ppt-playback-text{max-width:100%;overflow-wrap:break-word;word-break:break-word;padding:0 .25rem;box-sizing:border-box}.ppt-playback-controls{flex-wrap:wrap;justify-content:center;position:fixed;bottom:0;left:0;right:0;margin-top:0;margin-bottom:0;border-radius:0;padding:.6rem .75rem;padding-bottom:calc(.6rem + env(safe-area-inset-bottom,0));background:#0f0f14fa;opacity:1;pointer-events:auto;z-index:10000}.ppt-playback-controls.ppt-playback-controls-hidden{opacity:1;pointer-events:auto}.ppt-playback-controls button{min-height:48px;padding:.65rem 1rem;font-size:.95rem;flex:0 1 auto;min-width:max(80px,11ch)}}.theme-dark .theme-toggle{background:#1f1b29;border-color:#f4f1f833}.seo-footer{background:#f5f4f9;border-top:1px solid var(--app-border);padding:2rem 1.5rem;color:var(--app-muted)}.seo-footer-inner{max-width:960px;margin:0 auto}.seo-footer h2{margin:0 0 .75rem;font-size:1.4rem;color:var(--app-accent)}.seo-footer h3{margin:1.25rem 0 .5rem;font-size:1.05rem;color:var(--app-accent)}.seo-footer p{margin:.4rem 0;line-height:1.6}.seo-footer ul{margin:.5rem 0 0;padding-left:1.25rem}.seo-footer li{margin-bottom:.35rem}.header-action,.lyrics-search-button,button,a.header-action{min-height:44px;min-width:44px}@media (max-width: 1400px){.main-content-layout{grid-template-columns:50% 50%;gap:1.5rem;padding:1.5rem}}@media (max-width: 1200px){.main-content-layout{grid-template-columns:1fr;gap:1.5rem}.below-sections{grid-template-columns:1fr}.left-panel,.right-panel,.center-panel{max-height:none}}@media (max-width: 768px){.app-header{padding:1.5rem}.app-header-content{flex:1 1 100%}.app-header-auth{width:100%;justify-content:space-between}.app-header-content{gap:1rem}.app-header-logo{height:40px;max-height:40px}.app-header h1{font-size:1.5rem}.app-header-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.header-action{flex:1 1 140px;justify-content:center;text-align:center}.app-header-actions .header-action,.app-header-actions a.header-action{flex:1 1 100%}.app-header-actions-inline{display:flex;flex-direction:column;gap:.5rem;width:100%;margin-bottom:1rem}.app-header-actions-inline .header-action{width:100%;min-height:48px;padding:.75rem 1rem;font-size:1rem;justify-content:center;-webkit-tap-highlight-color:transparent}.app-main{padding:1rem}.main-content-layout{gap:1rem;padding:1rem;min-width:0;overflow-x:hidden}.app-main{overflow-x:hidden}.left-panel,.center-panel,.right-panel{padding:1.25rem}.panel-section{padding:.9rem}.preview-content{grid-template-columns:1fr}.input-mode-row{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;grid-template-columns:unset}.input-mode-controls-group{width:100%}.toggle-button{min-height:44px;padding:.5rem 1rem}.lyrics-search-row{flex-direction:column;align-items:stretch}.lyrics-search-results{max-height:min(40vh,260px)}.lyrics-search-item{min-height:52px;padding:.6rem .75rem}.lyrics-search-button,.lyrics-search-row .clear-lyrics-button{width:100%}.template-selector-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.share-buttons{justify-content:flex-start}.seo-footer{padding:1.5rem 1rem}.seo-footer h2{font-size:1.2rem}.seo-footer h3{font-size:1rem}.set-builder-header{flex-wrap:wrap;gap:.5rem}.set-builder-actions button,.add-song-button{min-height:40px}.bible-reference-row{flex-direction:column;align-items:stretch}.generate-button{padding:.9rem 1.5rem;font-size:1rem}.play-ppt-button{min-height:48px;padding:.75rem 1rem;font-size:1rem}}@media (max-width: 560px){.app-header h1{font-size:1.3rem}.app-header{padding:1.1rem}.app-header-logo{height:40px}.app-header .subtitle{font-size:.9rem}.header-action{width:100%}.app-header-text .subtitle,.panel-title{font-size:.85rem}.lyrics-search-input{font-size:.9rem}.lyrics-search-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.lyrics-search-row .lyrics-search-input{grid-column:1 / -1}.app-header-actions-inline .header-action{min-height:48px;padding:.7rem 1rem}.main-content-layout{padding:.75rem}.left-panel,.center-panel,.right-panel{padding:1rem}.app-footer{padding:2rem 1rem}.main-content-layout{padding:.5rem}.left-panel,.center-panel,.right-panel,.panel-section{padding:.75rem}.preview-placeholder{min-height:280px;font-size:.95rem}}.usage-display{margin-top:1rem;text-align:center;padding:.75rem;background:#f8f9fa;border-radius:6px;border:1px solid #e0e0e0}.usage-display.usage-limit-reached{background:#fff3cd;border-color:#ffc107}.usage-message{font-size:.9rem;color:#666;margin:0;font-weight:500}.usage-display.usage-limit-reached .usage-message{color:#856404;font-weight:600}.upgrade-button{background:linear-gradient(135deg,var(--app-accent) 0%,var(--app-accent-strong) 100%);color:#fff;border:none;padding:.65rem 1.25rem;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;margin-top:.5rem;transition:all .25s ease;box-shadow:0 6px 16px #24163d33}.upgrade-button:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--app-accent) 78%,#ffffff 22%) 0%,var(--app-accent) 100%);box-shadow:0 8px 20px #24163d40;border:1px solid var(--app-gold-border-light)}.upgrade-button:active{background:var(--app-accent-strong)}.app-shell{--shell-sidebar-width: 240px;--shell-bg: var(--app-bg);--shell-surface: var(--app-surface);--shell-text: var(--app-text);--shell-muted: var(--app-muted);--shell-accent: var(--app-accent);--shell-border: var(--app-border);min-height:100vh;display:flex;background:var(--shell-bg);color:var(--shell-text)}.app-shell-sidebar{width:var(--shell-sidebar-width);flex-shrink:0;background:var(--shell-surface);border-right:1px solid var(--shell-border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;transition:background .2s ease,border-color .2s ease}.app-shell-sidebar-inner{display:flex;flex-direction:column;height:100%;padding:1rem .75rem;gap:.5rem}.app-shell-logo{display:block;padding:.5rem 0;border-radius:10px;text-decoration:none;color:var(--shell-text);margin-bottom:.75rem;transition:background .15s ease,color .15s ease}.app-shell-logo:hover{background:var(--shell-hover, rgba(0, 0, 0, .06))}.app-shell-logo-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.app-shell-logo-img{height:42px;width:auto;-o-object-fit:contain;object-fit:contain;border-radius:6px}.app-shell-logo-slogan{font-size:.75rem;font-weight:600;color:var(--shell-muted);letter-spacing:.02em;line-height:1.2;max-width:100%}.app-shell-nav{display:flex;flex-direction:column;gap:.5rem}.app-shell-nav-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--shell-muted);padding:0 .5rem .25rem;margin-bottom:.25rem}.app-shell-nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:12px;color:var(--shell-text);text-decoration:none;font-weight:600;font-size:.95rem;border:2px solid var(--app-gold-border-light, rgba(202, 163, 90, .35));background:var(--shell-surface);transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.app-shell-nav-item:hover{background:var(--shell-hover, rgba(0, 0, 0, .06));border-color:var(--app-gold-border-light, #caa35a);color:var(--shell-accent)}.app-shell-nav-item.active{color:var(--shell-accent);background:var(--shell-active, rgba(45, 27, 78, .1));border-color:var(--app-gold-border-light, #caa35a);box-shadow:0 2px 12px #caa35a26}.app-shell-nav-item-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:inherit;opacity:.9}.app-shell-nav-item.active .app-shell-nav-item-icon{color:var(--shell-accent)}.app-shell-nav-item-text{flex:1;min-width:0;line-height:var(--leading-snug);font-family:var(--font-sans);font-size:var(--text-sm)}.app-shell-spacer{flex:1;min-height:1rem}.app-shell-top-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.app-shell-theme-toggle{padding:.5rem .75rem;border-radius:8px;border:none;background:transparent;color:var(--shell-muted);cursor:pointer;font-size:1.1rem;transition:background .15s ease,color .15s ease;flex-shrink:0}.app-shell-lyrics-search{display:flex;align-items:center;gap:.5rem;flex:0 1 280px;min-width:0;max-width:320px;padding:.4rem .75rem;border-radius:8px;background:var(--shell-hover, rgba(0, 0, 0, .06));border:1px solid var(--shell-border);transition:border-color .2s ease,background .2s ease}.app-shell-lyrics-search:focus-within{border-color:var(--shell-accent);background:var(--shell-surface)}.app-shell-lyrics-search-icon{flex-shrink:0;color:var(--shell-muted)}.app-shell-lyrics-search-input{flex:1;min-width:0;border:none;background:transparent;color:var(--shell-text);font-size:var(--text-sm);font-family:var(--font-sans);outline:none}.app-shell-lyrics-search-input::-moz-placeholder{color:var(--shell-muted)}.app-shell-lyrics-search-input::placeholder{color:var(--shell-muted)}.app-shell-voice-btn{position:relative;height:36px;width:36px;min-width:36px;border-radius:8px;border:1px solid var(--shell-border);background:var(--shell-surface);color:var(--shell-text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease,border-color .15s ease}.app-shell-voice-btn:hover{transform:translateY(-1px);background:var(--shell-hover, rgba(0, 0, 0, .06))}.app-shell-voice-btn.is-listening{background:var(--shell-accent);border-color:var(--shell-accent);color:#fff}.app-shell-voice-btn.is-listening:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:10px;border:2px solid color-mix(in srgb,var(--shell-accent) 55%,transparent);animation:app-shell-voice-pulse 1.15s ease-out infinite;pointer-events:none}.app-shell-voice-hint{margin:.3rem 0 0;font-size:.8rem;color:var(--shell-muted)}@keyframes app-shell-voice-pulse{0%{transform:scale(.95);opacity:.85}70%{transform:scale(1.08);opacity:.1}to{transform:scale(1.1);opacity:0}}.app-shell-lyrics-search-wrap{position:relative;flex:0 1 280px;min-width:0;max-width:320px}.app-shell-search-dropdown{position:absolute;top:100%;left:0;right:0;margin:.25rem 0 0;padding:.5rem 0;list-style:none;background:var(--shell-surface);border:1px solid var(--shell-border);border-radius:10px;box-shadow:0 8px 24px #00000026;max-height:320px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;z-index:100}.app-shell-search-dropdown-item{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:.6rem 1rem;border:none;background:transparent;color:var(--shell-text);font-size:.9rem;text-align:left;cursor:pointer;transition:background .15s ease}.app-shell-search-dropdown-item:hover,.app-shell-search-dropdown-item:focus{background:var(--shell-hover, rgba(0, 0, 0, .06));outline:none}.app-shell-search-dropdown-label{font-weight:600;line-height:1.3}.app-shell-search-dropdown-sublabel{font-size:.8rem;color:var(--shell-muted);margin-top:.15rem}.app-shell-theme-toggle-corner{margin-left:auto;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.app-shell-theme-toggle:hover{background:var(--shell-hover, rgba(0, 0, 0, .06));color:var(--shell-text)}.app-shell-main{flex:1;min-width:0;overflow-x:hidden;overflow-y:auto;padding:var(--page-padding-y) var(--page-padding-x);transition:background .2s ease}.app-shell-mobile-header{display:none}.app-shell-theme-toggle-desktop{display:flex}.app-shell-theme-toggle-mobile,.app-shell-bottom-nav{display:none}.app-shell-page-header{margin-bottom:0;flex:1 1 0%;min-width:0;overflow:visible}.app-shell-page-title{font-size:clamp(var(--text-xl),3vw,var(--text-3xl));font-weight:700;font-family:var(--font-serif);color:var(--shell-text);margin:0 0 .25rem;letter-spacing:-.02em;line-height:var(--leading-tight);word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.app-shell-page-subtitle{font-size:var(--text-base);color:var(--shell-muted);margin:0;line-height:var(--leading-normal)}.app-shell.theme-dark{--shell-bg: #121212;--shell-surface: #181818;--shell-text: #ffffff;--shell-muted: #b3b3b3;--shell-accent: #caa35a;--shell-border: #282828;--shell-hover: rgba(255, 255, 255, .08);--shell-active: rgba(202, 163, 90, .2)}.app-shell.theme-dark .app-shell-nav-item{border-color:#caa35a66}.app-shell.theme-dark .app-shell-nav-item:hover,.app-shell.theme-dark .app-shell-nav-item.active{border-color:var(--app-gold-border-light, #caa35a)}.app-shell.theme-light{--shell-hover: rgba(0, 0, 0, .06);--shell-active: rgba(45, 27, 78, .12)}.app-shell-main .app-main{padding:0;background:transparent}.app-shell-main .app-main-inner{flex:1;padding:0;background:transparent}@media (max-width: 1024px){.app-shell-sidebar{width:200px}}@media (max-width: 768px){.app-shell{flex-direction:column;padding-bottom:env(safe-area-inset-bottom,0)}.app-shell-sidebar-desktop{display:none!important}.app-shell-mobile-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;min-height:52px;background:var(--shell-surface);border-bottom:1px solid var(--shell-border);flex-shrink:0}.app-shell-mobile-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--shell-text);font-weight:700;font-size:.95rem;flex:0 1 auto;min-width:0;overflow:hidden;max-width:calc(100% - 52px)}.app-shell-mobile-logo-img{height:36px;width:36px;flex-shrink:0;border-radius:6px;-o-object-fit:contain;object-fit:contain}.app-shell-mobile-logo-text{letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell-theme-toggle-mobile{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:.5rem;border:none;background:transparent;color:var(--shell-muted);cursor:pointer;font-size:1.25rem;border-radius:50%;transition:background .15s ease,color .15s ease}.app-shell-theme-toggle-mobile:hover{background:var(--shell-hover);color:var(--shell-text)}.app-shell-theme-toggle-desktop{display:none!important}.app-shell-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:calc(64px + env(safe-area-inset-bottom,0));padding-bottom:env(safe-area-inset-bottom,0);background:var(--shell-surface);border-top:1px solid var(--shell-border);z-index:100;box-shadow:0 -2px 10px #00000014}.app-shell.theme-dark .app-shell-bottom-nav{box-shadow:0 -2px 10px #0000004d}.app-shell-bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.5rem;text-decoration:none;color:var(--shell-muted);font-size:.7rem;font-weight:600;transition:color .2s ease,background .15s ease;-webkit-tap-highlight-color:transparent;min-width:0}.app-shell-bottom-nav-item:hover{color:var(--shell-text)}.app-shell-bottom-nav-item.active{color:var(--shell-accent)}.app-shell-bottom-nav-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.app-shell-bottom-nav-item.active .app-shell-bottom-nav-icon{color:var(--shell-accent)}.app-shell-bottom-nav-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.app-shell-top-row{margin-bottom:1rem;flex-direction:column;align-items:stretch;gap:.5rem}.app-shell-lyrics-search-wrap{flex:1 1 auto;max-width:none;order:1}.app-shell-lyrics-search{flex:1 1 auto;min-width:0;padding:.5rem .65rem}.app-shell-voice-btn{height:40px;width:40px;min-width:40px}.app-shell-search-dropdown{max-height:45vh}.app-shell-page-title{font-size:var(--text-2xl);line-height:var(--leading-tight)}.app-shell-page-subtitle{font-size:var(--text-sm)}.app-shell-main{padding:var(--page-padding-y) var(--page-padding-x);padding-bottom:calc(64px + env(safe-area-inset-bottom,0) + var(--page-padding-y))}}@media (max-width: 480px){.app-shell-mobile-header{padding:.45rem .6rem;min-height:48px}.app-shell-main{padding:.9rem .6rem;padding-bottom:calc(60px + env(safe-area-inset-bottom,0) + 1.6rem)}.app-shell-bottom-nav{height:calc(60px + env(safe-area-inset-bottom,0))}.app-shell-bottom-nav-label{font-size:.64rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-relaxed);letter-spacing:.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--app-bg);color:var(--app-text);min-height:100vh;overflow-x:hidden;-webkit-tap-highlight-color:transparent;touch-action:manipulation}[lang=ta],.tamil-script,.lyrics-library-main h1,.lyrics-library-main h2,.lyrics-detail-related .related-group-title,.lyrics-detail-related .related-song-item,.lyrics-detail-artist-link,.lyrics-detail-album,.lyrics-detail-text{font-family:var(--font-tamil);font-feature-settings:"locl" 1,"ccmp" 1,"rphf" 1,"blws" 1,"half" 1,"pres" 1,"pstf" 1,"vatu" 1;letter-spacing:normal;word-spacing:normal;word-break:normal;overflow-wrap:break-word}html{overflow-x:hidden;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;scroll-behavior:smooth}:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px}@media (pointer: coarse){.app-shell-nav-item,.app-shell-theme-toggle{min-height:44px}}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);color:var(--app-accent);font-weight:600;letter-spacing:-.02em;line-height:var(--leading-tight)}h1{font-size:clamp(var(--text-2xl),4vw,var(--text-4xl))}h2{font-size:clamp(var(--text-xl),3vw,var(--text-3xl))}h3{font-size:var(--text-lg)}.lyrics-library-main h1,.lyrics-library-main h2,.lyrics-library-title-row h1,.lyrics-detail-related h2.related-group-title{font-family:var(--font-tamil);font-feature-settings:"locl" 1,"ccmp" 1,"rphf" 1,"blws" 1,"half" 1,"pres" 1,"pstf" 1,"vatu" 1;letter-spacing:normal;word-spacing:normal}:root{--brand-purple-dark: #24163d;--brand-purple: #2f1c4f;--brand-gold-dark: #8f6b26;--brand-gold: #a88333;--brand-grey-dark: #4b4f58;--brand-grey: #5a5f69;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--font-serif: "Playfair Display", "Georgia", "Times New Roman", serif;--font-tamil: "Noto Sans Tamil", "Latha", "Inter", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--page-padding-x: 1rem;--page-padding-y: 1.5rem;--content-max-width: 1280px;--content-narrow: 720px;--bp-sm: 600px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1280px;--app-bg: #f7f7f8;--app-surface: #ffffff;--app-text: #1e1e24;--app-muted: var(--brand-grey);--app-accent: var(--brand-purple);--app-accent-strong: var(--brand-purple-dark);--app-gold: var(--brand-gold);--app-gold-border: var(--brand-gold-dark);--app-gold-border-light: var(--brand-gold);--app-border: #e5e1db;--app-shadow: 0 10px 30px rgba(19, 17, 29, .08)}html.theme-dark,.app-shell.theme-dark,.app.theme-dark{--app-bg: #121212;--app-surface: #181818;--app-text: #ffffff;--app-muted: #9ea3ad;--app-accent: #b8964a;--app-border: #282828;--app-gold-border: #9b7931;--app-gold-border-light: #b8964a;--app-shadow: 0 4px 20px rgba(0, 0, 0, .3)}html.theme-light{--app-bg: #f7f7f8;--app-surface: #ffffff;--app-text: #1e1e24;--app-muted: #5d5f69;--app-accent: #2d1b4e;--app-border: #e5e1db;--app-shadow: 0 10px 30px rgba(19, 17, 29, .08)}#root{min-height:100vh;max-width:100vw;overflow-x:hidden}.app{max-width:100%;overflow-x:hidden;min-width:0}.page-container{width:100%;max-width:var(--content-max-width);margin-left:auto;margin-right:auto;padding-left:var(--page-padding-x);padding-right:var(--page-padding-x);padding-top:var(--page-padding-y);padding-bottom:var(--page-padding-y)}@media (max-width: 399px){:root{--page-padding-x: .875rem;--page-padding-y: 1rem}}@media (min-width: 600px){:root{--page-padding-x: 1.25rem;--page-padding-y: 1.5rem}}@media (min-width: 1024px){:root{--page-padding-x: 2rem;--page-padding-y: 1.5rem}}
