:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;padding:0;min-width:320px;min-height:100vh;background:#f5f7fa;color:#333}#root{width:100%;min-height:100vh}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:600}button{font-family:inherit;cursor:pointer;border:none;background:none}button:focus-visible{outline:2px solid #667eea;outline-offset:2px}audio{display:none}html{scroll-behavior:smooth}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading{animation:pulse 1.5s ease-in-out infinite}.podcast-loader{max-width:800px;margin:0 auto 2rem}.feed-form{margin-bottom:1.5rem}.input-group{display:flex;gap:.75rem;flex-wrap:wrap}.feed-input{flex:1;min-width:250px;padding:1rem 1.25rem;border:2px solid #e0e0e0;border-radius:12px;font-size:1rem;transition:all .2s ease;background:#fff}.feed-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.feed-input:disabled{background:#f5f5f5;cursor:not-allowed}.load-btn{padding:1rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.load-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.load-btn:disabled{opacity:.7;cursor:not-allowed}.error-message{padding:1rem;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;margin-bottom:1rem}.saved-feeds{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #00000014}.saved-label{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#333}.saved-list{display:flex;flex-direction:column;gap:.5rem}.saved-feed-item{display:flex;gap:.5rem;align-items:stretch}.saved-feed-btn{flex:1;display:flex;justify-content:space-between;align-items:center;padding:.875rem 1rem;background:#f8f9fa;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left}.saved-feed-btn:hover:not(:disabled){border-color:#667eea;background:#f0f4ff;transform:translate(4px)}.saved-feed-btn:disabled{opacity:.6;cursor:not-allowed}.feed-title{font-weight:600;color:#333}.feed-date{font-size:.85rem;color:#999}.remove-feed-btn{padding:.5rem .75rem;background:transparent;border:2px solid #e0e0e0;border-radius:8px;color:#999;cursor:pointer;transition:all .2s ease;font-size:1.1rem;line-height:1}.remove-feed-btn:hover{background:#fee;border-color:#fcc;color:#c33}@media(max-width:768px){.input-group{flex-direction:column}.feed-input{min-width:100%}.load-btn{width:100%}.saved-feed-btn{flex-direction:column;align-items:flex-start;gap:.25rem}}.episode-list-container{max-width:1200px;margin:0 auto 2rem}.podcast-header{display:flex;gap:2rem;align-items:flex-start;margin-bottom:2rem;padding:2rem;background:#fff;border-radius:16px;box-shadow:0 4px 15px #00000014}.podcast-image{width:150px;height:150px;border-radius:12px;object-fit:cover;box-shadow:0 4px 12px #00000026;flex-shrink:0}.podcast-info{flex:1}.podcast-info h2{margin:0 0 .75rem;color:#333;font-size:2rem}.podcast-description{margin:0 0 .75rem;color:#666;line-height:1.6}.episode-count{margin:0;color:#667eea;font-weight:600}.episodes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.episode-card{background:#fff;border-radius:12px;overflow:hidden;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #00000014;border:2px solid transparent}.episode-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f;border-color:#667eea}.episode-card.selected{border-color:#667eea;background:linear-gradient(135deg,#f0f4ff,#e8e9ff)}.episode-thumb{width:100%;height:200px;object-fit:cover}.episode-content{padding:1.25rem}.episode-title{margin:0 0 .75rem;font-size:1.1rem;color:#333;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.episode-desc{margin:0 0 1rem;font-size:.9rem;color:#666;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.episode-meta{display:flex;justify-content:space-between;font-size:.85rem;color:#999}.pub-date{display:flex;align-items:center}.duration{display:flex;align-items:center;font-weight:600;color:#667eea}@media(max-width:768px){.podcast-header{flex-direction:column;align-items:center;text-align:center;padding:1.5rem}.podcast-image{width:120px;height:120px}.podcast-info h2{font-size:1.5rem}.episodes-grid{grid-template-columns:1fr}.episode-thumb{height:180px}}@media(max-width:480px){.podcast-header,.episode-content{padding:1rem}.episode-title{font-size:1rem}}.audio-player{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;padding:2rem;color:#fff;box-shadow:0 10px 40px #0003;max-width:800px;margin:0 auto}.audio-player.empty{text-align:center;padding:3rem;background:#f0f0f0;color:#666}.episode-info{display:flex;gap:1.5rem;margin-bottom:2rem;align-items:flex-start}.episode-image{width:120px;height:120px;border-radius:12px;object-fit:cover;box-shadow:0 4px 12px #0000004d;flex-shrink:0}.episode-details{flex:1;min-width:0}.episode-details h3{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;line-height:1.3}.episode-description{margin:0;font-size:.9rem;opacity:.9;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.progress-container{margin-bottom:1.5rem;cursor:pointer}.progress-bar{height:8px;background:#ffffff4d;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:#fff;border-radius:4px;transition:width .1s ease}.time-display{display:flex;justify-content:space-between;font-size:.875rem;opacity:.9}.controls{display:flex;justify-content:center;align-items:center;gap:1rem;margin-bottom:1.5rem}.control-btn{background:#fff3;border:none;color:#fff;padding:.75rem 1rem;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-btn:hover{background:#ffffff4d;transform:translateY(-2px)}.control-btn:active{transform:translateY(0)}.control-btn.play-pause{width:60px;height:60px;border-radius:50%;font-size:1.5rem;background:#fff;color:#667eea;box-shadow:0 4px 15px #0003}.control-btn.play-pause:hover{background:#fff;box-shadow:0 6px 20px #0000004d}.translation-controls{display:flex;justify-content:center;margin-bottom:1rem}.translate-btn{background:linear-gradient(135deg,#f093fb,#f5576c);border:none;color:#fff;padding:1rem 2rem;border-radius:12px;cursor:pointer;font-size:1.1rem;font-weight:600;transition:all .2s ease;box-shadow:0 4px 15px #f5576c66}.translate-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #f5576c80}.translate-btn:disabled{opacity:.6;cursor:not-allowed}.translation-status{text-align:center;padding:.75rem;background:#fff3;border-radius:8px;font-size:.9rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.translation-texts{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem;opacity:0;transform:translateY(-10px);transition:all .3s ease;pointer-events:none}.translation-texts.show{opacity:1;transform:translateY(0);pointer-events:auto}.text-block{background:#ffffff26;border-radius:12px;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.text-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;opacity:.8;margin-bottom:.5rem}.text-content{font-size:1rem;line-height:1.6;color:#fff}.text-block.original{border-left:3px solid rgba(255,255,255,.5)}.text-block.translated{border-left:3px solid #f5576c;background:#f5576c26}@media(max-width:768px){.audio-player{padding:1.5rem;border-radius:15px}.episode-info{flex-direction:column;align-items:center;text-align:center}.episode-image{width:150px;height:150px}.episode-details h3{font-size:1.25rem}.controls{flex-wrap:wrap;gap:.5rem}.control-btn{padding:.6rem .8rem;font-size:.9rem}.translate-btn{padding:.875rem 1.5rem;font-size:1rem}.text-block{padding:.875rem}.text-content{font-size:.95rem}}@media(max-width:480px){.audio-player{padding:1rem}.episode-image{width:120px;height:120px}.control-btn{padding:.5rem .7rem;font-size:.85rem}.control-btn.play-pause{width:50px;height:50px;font-size:1.25rem}.translate-btn{padding:.75rem 1.25rem;font-size:.95rem}.text-block{padding:.75rem}.text-content{font-size:.9rem}.text-label{font-size:.7rem}}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto}.modal-content{background:#fff;border-radius:16px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;padding:2rem;position:relative;box-shadow:0 20px 60px #0000004d}.modal-close{position:absolute;top:1rem;right:1rem;background:#f0f0f0;border:none;border-radius:50%;width:36px;height:36px;font-size:1.5rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:1}.modal-close:hover{background:#e0e0e0;transform:rotate(90deg)}.modal-content h2{margin:0 0 1.5rem;color:#333;font-size:2rem;padding-right:2rem}.help-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e0e0e0}.help-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.help-section h3{margin:0 0 1rem;color:#667eea;font-size:1.25rem}.help-section p{margin:0 0 1rem;line-height:1.6;color:#555}.help-section ol,.help-section ul{margin:0;padding-left:1.5rem;line-height:1.8;color:#555}.help-section li{margin-bottom:.5rem}.help-section strong{color:#333}.help-section code{background:#f0f0f0;padding:.2rem .4rem;border-radius:4px;font-family:Courier New,monospace;font-size:.9em}@media(max-width:768px){.modal-content{padding:1.5rem;max-height:95vh}.modal-content h2{font-size:1.5rem}.help-section h3{font-size:1.1rem}}.settings-modal{max-width:800px}.settings-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e0e0e0}.settings-section:last-of-type{border-bottom:none}.settings-section h3{margin:0 0 .5rem;color:#667eea;font-size:1.25rem}.section-description{margin:0 0 1.5rem;color:#666;font-size:.95rem}.radio-group{display:flex;flex-direction:column;gap:1rem}.radio-option{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s ease;background:#fff}.radio-option:hover{border-color:#667eea;background:#f8f9ff}.radio-option.selected{border-color:#667eea;background:linear-gradient(135deg,#f8f9ff,#f0f4ff);box-shadow:0 4px 12px #667eea26}.radio-option input[type=radio]{margin-top:.25rem;cursor:pointer;width:18px;height:18px;flex-shrink:0}.radio-content{flex:1}.radio-content strong{display:inline-block;margin-bottom:.5rem;font-size:1.1rem;color:#333}.radio-content p{margin:0 0 1rem;color:#666;line-height:1.5}.badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;margin-left:.5rem}.badge.free{background:#e8f5e9;color:#2e7d32}.badge.paid{background:#fff3e0;color:#e65100}.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:1rem;font-size:.85rem;line-height:1.6}.pros{color:#2e7d32}.cons{color:#f57c00}.api-key-section{margin-top:1.5rem;padding:1.5rem;background:#f8f9fa;border-radius:12px}.api-key-section label{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-weight:600;color:#333}.api-key-section .link{font-size:.9rem;color:#667eea;text-decoration:none;font-weight:500}.api-key-section .link:hover{text-decoration:underline}.api-key-input{width:100%;padding:.875rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-family:Courier New,monospace;transition:all .2s ease}.api-key-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.api-key-section small{display:block;margin-top:.5rem;color:#999;font-size:.8rem;line-height:1.4}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#333}.language-select{width:100%;padding:.875rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;background:#fff;cursor:pointer;transition:all .2s ease}.language-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.settings-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e0e0e0}.btn-primary,.btn-secondary{padding:.875rem 1.75rem;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-secondary{background:#f0f0f0;color:#666}.btn-secondary:hover{background:#e0e0e0}@media(max-width:768px){.pros-cons{grid-template-columns:1fr}.settings-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{text-align:center;padding:2rem 1rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.header-content{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-bottom:.5rem}.app-title{margin:0;font-size:3rem;font-weight:800;text-shadow:0 2px 4px rgba(0,0,0,.2)}.settings-btn,.help-btn{padding:.625rem 1.25rem;background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.5);border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.settings-btn:hover,.help-btn:hover{background:#ffffff4d;border-color:#fffc;transform:translateY(-2px)}.app-subtitle{margin:0;font-size:1.15rem;opacity:.95}.app-main{flex:1;padding:2rem 1rem;max-width:1400px;margin:0 auto;width:100%}.player-section{margin:2rem 0;position:sticky;top:20px;z-index:10}.app-footer{background:#f8f9fa;padding:1.5rem 1rem;text-align:center;color:#666;border-top:1px solid #e0e0e0}.app-footer p{margin:0}.footer-note{font-size:.9rem;color:#999}@media(max-width:768px){.app-header{padding:1.5rem 1rem 1rem}.header-content{flex-direction:column;gap:.75rem}.app-title{font-size:2rem}.settings-btn,.help-btn{padding:.5rem 1rem;font-size:.9rem}.app-subtitle{font-size:1rem}.app-main{padding:1.5rem 1rem}.player-section{position:relative;top:0;margin:1.5rem 0}}@media(max-width:480px){.app-title{font-size:1.75rem}.app-subtitle{font-size:.95rem}.app-main{padding:1rem .5rem}.app-footer{padding:1.25rem 1rem}}
