:root{--gap: 16px;--player-color: #585866;--card-background-color: #ffffff;--card-border-color: #dddddd;--text-color: #333333;--secondary-text-color: #666666;--hover-background-color: #f5f5f5;--shadow-color: rgba(0, 0, 0, .1)}body.dark{--player-color: white;--card-background-color: #1e1e1e;--card-border-color: #444444;--text-color: #f0f0f0;--secondary-text-color: #b0b0b0;--hover-background-color: #2a2a2a;--shadow-color: rgba(0, 0, 0, .4)}body{background-color:var(--card-background-color);color:var(--text-color);transition:background-color .3s ease,color .3s ease}body{font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial;margin:0}.app-header{position:fixed;z-index:200;width:100%;display:flex;flex-direction:column;padding:1rem;background:#585866;box-shadow:0 1px 5px #0000001a;align-items:center}.controls-right{display:none}.search{width:100%;margin-top:1rem}.brand{text-decoration:none;font-size:18px;color:var(--text-color)}.container{padding:16px;max-width:1100px;margin:0 auto}.controls{display:flex;flex-direction:column;justify-content:center;gap:1rem;margin:10px;margin-top:1.2rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.podcast-card{display:block;gap:12px;padding:12px;transition:transform .25s ease,box-shadow .25s ease;border:1px solid #eee;border-radius:8px;cursor:pointer}.podcast-card:hover{transform:scale(1.05);box-shadow:0 6px 14px #00000026}.cover{width:100%;object-fit:cover;border-radius:6px}.card-body h3{margin:0 0 6px}.tag{background:var(--card-border-color);padding:2px 6px;margin-right:6px;border-radius:999px;font-size:12px}.loading,.error,.empty{padding:16px;text-align:center}.detail .show-header{display:flex;gap:16px;align-items:flex-start}.navigation{margin-left:43%;margin-top:16px}.season-list{list-style:none;padding:0;margin:12px 0}.season{border-top:1px solid #eee;padding:8px 0}.season-button{width:100%;display:flex;justify-content:space-between;align-items:center;background:none;border:0;padding:8px;text-align:left}.episode-list{padding-left:18px}.episode{margin:8px 0}.search{width:100%;padding:.5rem .75rem;border:1px solid #ccc;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;font-size:1rem}select{padding:.5rem .75rem;border:1px solid #ccc;border-radius:.75rem;font-size:1rem}h1{margin:0;color:#fff}.home-link{font-size:25px;color:#f0f0f0;text-decoration:none}.home-link:hover{color:#4a90e2}.spinner{margin-left:47%;width:40px;height:40px;border:4px solid #ccc;border-top:4px solid #4a90e2;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:.5rem;margin-top:10%}@keyframes spin{to{transform:rotate(360deg)}}.detail-page{padding:2rem;max-width:1000px;margin:0 auto}.show-header-card{background:var(--card-background-color);border-radius:12px;padding:1.5rem;box-shadow:0 1px 6px #0000000d;padding-top:0}.show-card{display:flex;flex-wrap:wrap;gap:1.5rem}.show-cover{width:220px;height:220px;object-fit:cover;border-radius:12px}.show-info{flex:1}.show-info h1{font-size:1.8rem;margin-bottom:.5rem}.show-desc{color:var(--secondary-text-color);margin-bottom:1rem}.show-meta{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.genres{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}.tag{background:var(--card-background-color);padding:.25rem .8rem;border-radius:999px;font-size:.85rem;font-weight:500}.current-season{margin-top:2rem}.season-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.season-select{border:1px solid #ddd;padding:.4rem .6rem;border-radius:6px;background:#fff}.season-card{background:var(--card-background-color);border-radius:12px;box-shadow:0 1px 4px #0000000d;padding:1rem}.season-infor{display:flex;gap:1rem;border-bottom:1px solid #eee;padding-bottom:1rem;margin-bottom:1rem}.season-thumb{width:100px;height:100px;border-radius:8px;object-fit:cover}.episode-list{list-style:none;padding:0;margin:0}.episode-item{display:flex;gap:1rem;border-bottom:1px solid #f0f0f0;padding:.8rem 0}.episode-index{width:36px;height:36px;background:#eef1f6;color:#555;font-weight:700;border-radius:8px;display:flex;align-items:center;justify-content:center}.episode-content p{margin:.3rem 0;color:var(--text-color)}.muted{color:var(--secondary-text-color)}.small{font-size:.85rem}.read-more{background:none;border:none;color:#2563eb;cursor:pointer;font-size:.9rem;padding:0}.read-more:hover{text-decoration:underline}.fav-btn.active{animation:pop .3s ease}.season-selector{display:flex;align-items:center;gap:.5rem;margin:1rem 0}.season-selector label{font-weight:500;color:var(--text-color)}.season-selector select{color:var(--text-color);padding:.4rem .6rem;border-radius:8px;border:1px solid #ccc;font-size:.95rem;cursor:pointer}.back-btn{margin-top:4.5rem;margin-left:1.5rem;background-color:#585866;border-radius:75%;width:30px;height:30px;color:var(--card-background-color);border:none;font-size:1.4rem;cursor:pointer;display:flex;align-items:center;gap:.3rem;font-weight:500;margin-bottom:0;transition:color .2s ease}.theme-toggle-btn{border-radius:25px}.back-btn:hover{color:#e63946}.recommended-title{font-size:1.6rem;font-weight:600;margin-bottom:.1rem;margin-top:5rem}.recommended-grid{margin-top:2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem}@media (min-width: 768px){.app-header{flex-direction:row;justify-content:space-between;align-items:center;padding:1rem 2rem}.search{width:50%;margin-top:0}.controls{flex-direction:row;align-items:flex-end;gap:1.5rem}.controls-right{display:flex;margin-left:auto;justify-content:space-around}}.recommended-section{margin:2rem 0;position:relative;margin-bottom:0;z-index:100}.recommended-title{font-size:1.4rem;font-weight:600;margin-bottom:1rem;padding-left:.5rem}.carousel-wrapper{position:relative}.recommended-carousel{display:flex;gap:1rem;overflow-x:auto;scroll-behavior:smooth;padding:.5rem 0 1rem;scrollbar-width:none;z-index:100;-webkit-overflow-scrolling:touch}.recommended-carousel::-webkit-scrollbar{display:none}.recommended-item{width:70vw;max-width:220px;flex:0 0 auto;cursor:pointer;box-shadow:0 6px 14px #00000026;transition:transform .25s ease,box-shadow .25s ease}.recommended-item:hover{transform:scale(1.05);box-shadow:0 6px 14px #00000026}.scroll-btn{display:none}@media (min-width: 768px){.recommended-title{font-size:1.6rem}.recommended-item{width:220px}.scroll-btn{display:block;position:absolute;top:50%;transform:translateY(-50%);background:#00000080;color:#fff;border:none;font-size:2rem;width:40px;height:60px;cursor:pointer;border-radius:8px;z-index:10;transition:background .2s}.scroll-btn:hover{background:#000000b3}.scroll-btn.left{left:0}.scroll-btn.right{right:0}}.episode-card{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem;border:1px solid #e0e0e0;border-radius:12px;background-color:var(--card-background-color);transition:box-shadow .2s ease;margin-bottom:1rem}.episode-card:hover{box-shadow:0 2px 10px #00000014}.episode-content{display:flex;gap:1rem;align-items:flex-start;flex:1;width:100%}.episode-cover{width:70px;height:70px;border-radius:8px;object-fit:cover;background:var(--card-background-color)}.episode-info{flex:1}.episode-info h4{font-size:1rem;margin:0;display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;line-height:1.2}.episode-info h4 .fav-btn{color:var(--text-color);background:none;border:none;font-size:1.3rem;cursor:pointer;transition:transform .2s ease,color .2s ease;flex-shrink:0}.episode-info h4 .fav-btn:hover{transform:scale(1.2)}.episode-info h4 .fav-btn.active{color:#ff4b5c;transform:scale(1.1)}.episode-info .muted{color:#777;font-size:.9rem;margin-top:.2rem}.episode-info .description{color:var(--text-color);margin-top:.4rem;font-size:.95rem}.episode-info .added-date{font-size:.8rem;color:#999;margin-top:.5rem}.play-btn{background:#585866;color:var(--card-background-color);border:none;border-radius:6px;padding:.5rem .9rem;cursor:pointer;font-size:.9rem;transition:background .2s ease;margin-top:.5rem;align-self:flex-end}.play-btn:hover{background:#444}@media (min-width: 768px){.episode-card{flex-direction:row;justify-content:space-between;align-items:flex-start}.play-btn{margin-top:0;align-self:center}}.show-detail-page{padding:2rem;display:flex;flex-direction:column;gap:2rem}.show-header-card{display:flex;flex-wrap:wrap;gap:2rem;background:var(--card-background-color);border-radius:1rem;padding:1.5rem;box-shadow:0 4px 12px var(--card-background-color);margin-top:0;padding-top:0}.show-cover{width:200px;height:200px;object-fit:cover;border-radius:.75rem}.show-info{flex:1;min-width:250px}.show-title{font-size:1.8rem;font-weight:700;margin-bottom:.5rem;color:var(--text-color)}.show-description{color:var(--text-color);line-height:1.5;margin-bottom:1rem}.show-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;font-size:.95rem}.genre-tags{display:flex;flex-wrap:wrap;gap:.4rem}.genre-tag{background-color:var(--card-background-color);color:#4f46e5;padding:.25rem .6rem;border-radius:.75rem;font-size:.8rem}.season-section-header{display:flex;justify-content:space-between;align-items:center}.season-section-header h2{font-size:1.2rem;font-weight:600}.episodes-section{background:var(--card-background-color);border-radius:1rem;padding:1.5rem;box-shadow:0 4px 12px #0000000d}.episode-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.season-section-header{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem}.season-section-header h2{font-size:1.3rem;font-weight:700}.season-dropdown{padding:.4rem .8rem;border:1px solid #ccc;border-radius:.5rem;background:#fff;font-size:.95rem;cursor:pointer}.season-card{background:var(--card-background-color);border-radius:1rem;box-shadow:0 4px 10px #0000000d;padding:1rem;margin-top:1rem;display:flex;flex-direction:column;gap:1rem}.season-info{display:flex;align-items:center;gap:1rem}.season-thumb{width:80px;height:80px;border-radius:.75rem;object-fit:cover}.season-title{font-size:1.1rem;font-weight:700}.season-meta{color:#666;font-size:.9rem;margin-top:.25rem}.global-player{position:fixed;bottom:0;left:0;width:100%;background:var(--player-color);color:var(--card-background-color);display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;z-index:9999;box-shadow:0 -2px 6px #0000004d;gap:1rem}.player-info{display:flex;align-items:center;gap:.8rem;flex-shrink:0}.player-thumb{width:50px;height:50px;border-radius:8px;object-fit:cover}.player-controls{position:absolute;right:50px;display:flex;align-items:center;gap:.6rem;flex:1;justify-content:flex-start;flex-wrap:wrap}.play-toggle{background:#ff4b5c;color:#fff;border:none;padding:.4rem .8rem;border-radius:20px;cursor:pointer;font-weight:600;transition:background .2s}.play-toggle:hover{background:#ff6b7a}.player-controls input[type=range]{width:120px;accent-color:#ff4b5c;cursor:pointer}.favorites-page{padding:2rem;max-width:900px;margin:0 auto}.favorites-page h2{font-size:1.6rem;margin-bottom:.5rem}.favorites-page p.subtext{color:#666;margin-bottom:1.5rem}.filters{display:flex;justify-content:space-around}.favorites-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:.5rem}.favorites-controls select{padding:.4rem .8rem;border-radius:6px;border:1px solid #ccc;font-size:.9rem;background:var(--card-background-color)}.favorites-group{margin-bottom:2rem}.favorites-header h1{color:var(--text-color);text-align:center;margin-bottom:1.2rem}.favorites-group h3{margin-bottom:.8rem;border-bottom:1px solid #eee;padding-bottom:.4rem;font-size:1.1rem}.favs-link{color:beige;font-size:1.5rem;margin-right:3rem;text-decoration:none}.favs-link:hover{color:#4a90e2}
