:root{--bg-primary:#0d0d0f;--bg-surface:#141416;--bg-elevated:#1a1a1d;--text-primary:#f5f5f5;--text-body:#c5c5c7;--text-muted:#8a8a8d;--accent:#d4a574;--accent-hover:#e0b585;--border:#2a2a2d;--trust-high:#5cb85c;--trust-medium:#f0ad4e;--trust-low:#d9534f}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background:var(--bg-primary);color:var(--text-body);line-height:1.6;min-height:100vh}
.header{position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:rgba(13,13,15,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
.logo{font-size:1.25rem;font-weight:700;letter-spacing:.15em;color:var(--accent);text-decoration:none}
.header-nav{display:flex;gap:1.5rem}.header-nav a{color:var(--text-muted);text-decoration:none;font-size:.9rem;transition:color .2s}.header-nav a:hover{color:var(--text-primary)}
.hero{min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 2rem}
.greeting{font-size:clamp(2rem,5vw,3.5rem);font-weight:300;color:var(--text-primary);margin-bottom:.5rem;letter-spacing:-.02em}
.greeting-sub{font-size:1.25rem;color:var(--text-muted);margin-bottom:3rem}
.waveform-container{width:100%;max-width:600px;height:80px;margin-bottom:2rem;display:flex;align-items:center;justify-content:center;gap:3px}
.waveform-bar{width:4px;background:var(--accent);border-radius:2px;transition:height 80ms ease-out,opacity 80ms ease-out;opacity:.35;will-change:height}
.play-btn{display:flex;align-items:center;gap:.75rem;padding:1rem 2.5rem;background:var(--accent);color:var(--bg-primary);border:none;border-radius:50px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}
.play-btn:hover{background:var(--accent-hover);transform:scale(1.02)}.play-btn svg{width:24px;height:24px;fill:currentColor}.play-btn .stop-icon{display:none}.play-btn.playing .play-icon{display:none}.play-btn.playing .stop-icon{display:block}.play-btn.playing span{display:none}
.brief-meta{font-size:.9rem;color:var(--text-muted);margin-bottom:1.5rem}.brief-meta span{margin:0 .5rem;opacity:.5}
.playback-controls{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;opacity:0;transition:opacity .3s}.playback-controls.visible{opacity:1}
.skip-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s}.skip-btn:hover{color:var(--text-primary);background:var(--bg-elevated)}.skip-btn svg{width:28px;height:28px;fill:currentColor}
.time-display{font-family:'SF Mono','Fira Code',monospace;font-size:.85rem;color:var(--text-muted);min-width:100px;text-align:center}
.speed-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-muted);padding:.25rem .75rem;border-radius:4px;font-size:.8rem;cursor:pointer;transition:all .2s}.speed-btn:hover{color:var(--text-primary);border-color:var(--accent)}
.progress-container{width:100%;max-width:500px;padding:0 1rem;margin-bottom:2rem;opacity:0;transition:opacity .3s}.progress-container.visible{opacity:1}
.progress-bar{height:4px;background:var(--bg-elevated);border-radius:2px;cursor:pointer;position:relative}
.progress-fill{height:100%;background:var(--accent);border-radius:2px;width:0;transition:width .1s linear}
.progress-handle{position:absolute;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:var(--accent);border-radius:50%;opacity:0;transition:opacity .2s}.progress-bar:hover .progress-handle{opacity:1}
.scroll-hint{display:flex;flex-direction:column;align-items:center;color:var(--text-muted);text-decoration:none;font-size:.85rem;margin-top:2rem;transition:color .2s}.scroll-hint:hover{color:var(--accent)}.scroll-hint svg{width:24px;height:24px;fill:currentColor;animation:bounce 2s infinite}
@keyframes bounce{0%,20%,50%,80%,100%{transform:translateY(0)}40%{transform:translateY(5px)}60%{transform:translateY(3px)}}
.sticky-player{position:fixed;top:-60px;left:0;right:0;height:60px;background:rgba(20,20,22,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 1.5rem;gap:1rem;z-index:1000;transition:top .3s ease}.sticky-player.visible{top:0}.sticky-player .logo{font-size:1rem}
.sticky-waveform{flex:1;height:30px;display:flex;align-items:center;gap:2px}
.sticky-play-btn{width:36px;height:36px;border-radius:50%;background:var(--accent);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.sticky-play-btn svg{width:16px;height:16px;fill:var(--bg-primary)}
.sticky-time{font-family:monospace;font-size:.8rem;color:var(--text-muted);min-width:80px}.sticky-progress{flex:2;height:4px;background:var(--bg-elevated);border-radius:2px;cursor:pointer}.sticky-progress-fill{height:100%;background:var(--accent);border-radius:2px;width:0}
.sticky-speed{background:transparent;border:1px solid var(--border);color:var(--text-muted);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;cursor:pointer}
.content{max-width:900px;margin:0 auto;padding:4rem 2rem}.section{margin-bottom:4rem}
.section-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.section-title{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.section-count{font-size:.85rem;color:var(--text-muted)}
.article{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-bottom:1rem;transition:border-color .2s}.article:hover{border-color:var(--accent)}
.article-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.article-source{display:flex;align-items:center;gap:.5rem}
.reliability-badge{font-size:.7rem;font-weight:600;padding:.2rem .5rem;border-radius:4px}.reliability-badge.high{background:rgba(92,184,92,.15);color:var(--trust-high)}.reliability-badge.medium{background:rgba(240,173,78,.15);color:var(--trust-medium)}.reliability-badge.low{background:rgba(217,83,79,.15);color:var(--trust-low)}
.source-name{font-size:.85rem;color:var(--text-muted)}.article-time{font-size:.8rem;color:var(--text-muted)}
.article-title{font-size:1.1rem;font-weight:600;line-height:1.4;margin-bottom:.75rem}.article-title a{color:var(--text-primary);text-decoration:none;transition:color .2s}.article-title a:hover{color:var(--accent)}
.article-summary{font-size:.95rem;color:var(--text-body);line-height:1.6;margin-bottom:1rem}
.article-why{font-size:.9rem;color:var(--accent);font-style:italic;padding:.75rem 1rem;background:rgba(212,165,116,.08);border-left:3px solid var(--accent);border-radius:0 8px 8px 0;margin-bottom:1rem}
.article-link{font-size:.85rem;color:var(--text-muted);text-decoration:none;transition:color .2s}.article-link:hover{color:var(--accent)}
.footer{text-align:center;padding:3rem 2rem;border-top:1px solid var(--border)}.footer-meta{font-size:.85rem;color:var(--text-muted);margin-bottom:1rem}.footer-links{display:flex;justify-content:center;gap:2rem}.footer-links a{color:var(--text-muted);text-decoration:none;font-size:.9rem;transition:color .2s}.footer-links a:hover{color:var(--accent)}
/* Article actions with feedback */
.article-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border)}
.feedback-buttons{display:flex;gap:.5rem}
.feedback-btn{background:transparent;border:1px solid var(--border);color:var(--text-muted);padding:.4rem .6rem;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}
.feedback-btn svg{fill:currentColor;transition:fill .2s}
.feedback-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}
.feedback-btn.like-btn:hover,.feedback-btn.like-btn.active{border-color:var(--trust-high);color:var(--trust-high)}
.feedback-btn.dislike-btn:hover,.feedback-btn.dislike-btn.active{border-color:var(--trust-low);color:var(--trust-low)}
.feedback-btn.active{background:rgba(255,255,255,.05)}

/* Pipeline progress bar */
.pipeline-progress{position:fixed;top:0;left:0;right:0;height:4px;z-index:1001;opacity:0;transition:opacity .3s}.pipeline-progress.active{opacity:1}
.pipeline-progress-fill{height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--accent-hover));transition:width .8s ease;border-radius:0 2px 2px 0;box-shadow:0 0 10px rgba(212,165,116,.5),0 0 4px rgba(212,165,116,.3)}

/* Refresh link */
.refresh-link{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-muted);text-decoration:none;font-size:.9rem;cursor:pointer;transition:color .2s}.refresh-link:hover{color:var(--text-primary)}.refresh-link.disabled{opacity:.4;pointer-events:none}.refresh-link svg{fill:currentColor}.refresh-link.refreshing .refresh-icon{animation:spin 1s linear infinite}.refresh-status{font-size:.85rem;color:var(--accent);min-width:0;transition:opacity .3s}.refresh-status:empty{display:none}
@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

/* Language toggle */
.lang-toggle{display:inline-flex;align-items:center;gap:.25rem;margin-bottom:1rem}
.lang-btn{background:transparent;border:none;color:var(--text-muted);padding:.2rem .4rem;font-size:.8rem;font-weight:500;letter-spacing:.05em;cursor:pointer;transition:all .2s;opacity:.5;position:relative}
.lang-btn.active{color:var(--accent);opacity:1}
.lang-btn.active::after{content:'';position:absolute;bottom:0;left:20%;right:20%;height:1px;background:var(--accent)}
.lang-btn:hover:not(.active){opacity:.8;color:var(--text-primary)}
.lang-divider{color:var(--border);font-size:.7rem;opacity:.5}

/* Segment label */
.segment-label{font-size:.8rem;color:var(--accent);opacity:.8;min-width:120px;text-align:center}
.sticky-segment-label{font-size:.7rem;color:var(--accent);opacity:.8;white-space:nowrap;max-width:120px;overflow:hidden;text-overflow:ellipsis}

/* Segment tick marks on progress bar */
.segment-ticks{position:absolute;top:0;left:0;right:0;height:100%;pointer-events:none}
.segment-tick{position:absolute;top:-2px;width:2px;height:8px;background:var(--text-muted);opacity:.4;border-radius:1px;transform:translateX(-50%)}

/* Completion banner */
.completion-banner{background:rgba(92,184,92,.12);border-bottom:1px solid rgba(92,184,92,.3);padding:.8rem 2rem;text-align:center;font-size:.9rem;color:var(--trust-high);position:fixed;top:0;left:0;right:0;z-index:1002;animation:fadeSlideIn .5s ease}
@keyframes fadeSlideIn{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}

/* Stale content warning */
.stale-banner{background:rgba(240,173,78,.12);border-bottom:1px solid rgba(240,173,78,.3);padding:.6rem 2rem;text-align:center;font-size:.85rem;color:var(--trust-medium);display:flex;justify-content:center;align-items:center;gap:1rem}
.stale-refresh{color:var(--accent);text-decoration:none;font-weight:600}.stale-refresh:hover{text-decoration:underline}

/* Deep Dives section */
.deep-dives{padding:3rem 0 3.5rem;border-bottom:1px solid var(--border);position:relative}
.deep-dives::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(212,165,116,.04),transparent);pointer-events:none}
.deep-dives-inner{max-width:960px;margin:0 auto;padding:0 2rem;position:relative}
.deep-dives-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem}
.deep-dives-title{font-size:1.4rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}
.deep-dives-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;background:linear-gradient(135deg,rgba(212,165,116,.15),rgba(212,165,116,.05));border:1px solid rgba(212,165,116,.2);border-radius:20px;font-size:.65rem;font-weight:600;color:var(--accent);letter-spacing:.08em;text-transform:uppercase}
.deep-dives-badge-dot{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:badgePulse 2s ease-in-out infinite}
@keyframes badgePulse{0%,100%{opacity:.4}50%{opacity:1}}
.deep-dives-sub{font-size:.9rem;color:var(--text-muted);margin-bottom:2rem}
.deep-dive-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:1.25rem}

/* Deep Dive Card */
.deep-dive-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:all .3s ease;position:relative}
.deep-dive-card::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;border-radius:16px;opacity:0;transition:opacity .3s;pointer-events:none}
.deep-dive-card:hover{border-color:rgba(212,165,116,.4);transform:translateY(-2px);box-shadow:0 8px 32px rgba(0,0,0,.3),0 0 0 1px rgba(212,165,116,.1)}
.deep-dive-card:hover::before{opacity:1}

/* Card Header Zone - gradient background with icon */
.dd-card-header{position:relative;padding:1.5rem 1.5rem 1rem;display:flex;gap:1rem;align-items:flex-start}
.dd-card-header::before{content:'';position:absolute;top:0;left:0;right:0;height:100%;opacity:.5;pointer-events:none}

/* Topic-specific gradients */
.deep-dive-card[data-category="tech_ai"] .dd-card-header::before{background:linear-gradient(135deg,rgba(99,102,241,.12),rgba(168,85,247,.06),transparent 70%)}
.deep-dive-card[data-category="tech_ai"]::before{background:linear-gradient(135deg,rgba(99,102,241,.05),transparent)}
.deep-dive-card[data-category="finance"] .dd-card-header::before{background:linear-gradient(135deg,rgba(34,197,94,.12),rgba(16,185,129,.06),transparent 70%)}
.deep-dive-card[data-category="finance"]::before{background:linear-gradient(135deg,rgba(34,197,94,.05),transparent)}
.deep-dive-card[data-category="geopolitics"] .dd-card-header::before{background:linear-gradient(135deg,rgba(239,68,68,.12),rgba(249,115,22,.06),transparent 70%)}
.deep-dive-card[data-category="geopolitics"]::before{background:linear-gradient(135deg,rgba(239,68,68,.05),transparent)}

/* Topic Icon */
.dd-topic-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}
.dd-topic-icon svg{width:22px;height:22px;position:relative;z-index:1}
.deep-dive-card[data-category="tech_ai"] .dd-topic-icon{background:linear-gradient(135deg,rgba(99,102,241,.2),rgba(168,85,247,.15))}
.deep-dive-card[data-category="tech_ai"] .dd-topic-icon svg{fill:#818cf8}
.deep-dive-card[data-category="finance"] .dd-topic-icon{background:linear-gradient(135deg,rgba(34,197,94,.2),rgba(16,185,129,.15))}
.deep-dive-card[data-category="finance"] .dd-topic-icon svg{fill:#4ade80}
.deep-dive-card[data-category="geopolitics"] .dd-topic-icon{background:linear-gradient(135deg,rgba(239,68,68,.2),rgba(249,115,22,.15))}
.deep-dive-card[data-category="geopolitics"] .dd-topic-icon svg{fill:#f87171}

/* Card Header Text */
.dd-header-text{flex:1;min-width:0}
.deep-dive-card h3{font-size:1.15rem;font-weight:600;color:var(--text-primary);margin-bottom:.15rem;line-height:1.3}
.dd-meta{display:flex;gap:.75rem;font-size:.78rem;color:var(--text-muted);align-items:center}
.dd-duration,.dd-sources{display:inline-flex;align-items:center;gap:.3rem}
.dd-meta-dot{opacity:.3}

/* Card Body */
.dd-card-body{padding:0 1.5rem 1rem}
.dd-summary{font-size:.88rem;color:var(--text-body);line-height:1.55;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* Section Structure Indicator */
.dd-sections{display:flex;gap:.5rem;margin-bottom:1.25rem}
.dd-section-tag{font-size:.68rem;font-weight:500;padding:.2rem .5rem;border-radius:4px;background:rgba(255,255,255,.04);color:var(--text-muted);border:1px solid rgba(255,255,255,.06);letter-spacing:.02em}

/* Play Button - premium */
.dd-card-footer{padding:0 1.5rem 1.5rem}
.dd-play-btn{width:100%;padding:.7rem 1rem;background:transparent;border:1px solid rgba(212,165,116,.3);color:var(--accent);border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .25s;display:flex;align-items:center;justify-content:center;gap:.5rem;letter-spacing:.02em}
.dd-play-btn svg{width:18px;height:18px;fill:currentColor;transition:transform .2s}
.dd-play-btn:hover{background:var(--accent);color:var(--bg-primary);border-color:var(--accent);box-shadow:0 4px 16px rgba(212,165,116,.25)}
.dd-play-btn:hover svg{transform:scale(1.1)}
.dd-play-btn:active{transform:scale(.98)}

/* Playing state */
.deep-dive-card.playing{border-color:var(--accent);box-shadow:0 0 24px rgba(212,165,116,.12)}
.deep-dive-card.playing .dd-play-btn{background:var(--accent);color:var(--bg-primary);border-color:var(--accent)}

/* Back to briefing button */
.back-to-briefing-btn{background:transparent;border:1px solid var(--border);color:var(--text-muted);padding:.3rem .85rem;border-radius:6px;font-size:.8rem;cursor:pointer;transition:all .2s;margin-left:.5rem;letter-spacing:.02em}
.back-to-briefing-btn:hover{color:var(--accent);border-color:var(--accent);background:rgba(212,165,116,.05)}

/* Card entrance animation */
.deep-dive-card{opacity:0;transform:translateY(16px);animation:ddCardIn .5s ease forwards}
.deep-dive-card:nth-child(1){animation-delay:.1s}
.deep-dive-card:nth-child(2){animation-delay:.25s}
.deep-dive-card:nth-child(3){animation-delay:.4s}
@keyframes ddCardIn{to{opacity:1;transform:translateY(0)}}

@media(max-width:768px){.header{padding:1rem}.hero{min-height:70vh;padding:2rem 1rem}.greeting{font-size:2rem}.content{padding:2rem 1rem}.article{padding:1rem}.sticky-waveform{display:none}.feedback-buttons{gap:.25rem}.feedback-btn{padding:.3rem .5rem}.deep-dives-inner{padding:0 1rem}.deep-dive-cards{grid-template-columns:1fr;gap:1rem}.dd-card-header{padding:1.25rem 1.25rem .75rem}.dd-card-body{padding:0 1.25rem .75rem}.dd-card-footer{padding:0 1.25rem 1.25rem}.dd-topic-icon{width:38px;height:38px}.dd-sections{flex-wrap:wrap;gap:.35rem}}
