:root{--max-width:820px;--pip-width:360px;--pip-height:203px;--gutter:calc(var(--pip-width) + 32px);--color-bg:#fafaf9;--color-surface:#fff;--color-text:#1c1917;--color-muted:#78716c;--color-border:#e7e5e4;--color-accent:#1d4ed8;--color-accent-light:#eff6ff}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:24px}body{background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}.video-section{background:#000;justify-content:center;align-items:center;min-height:60vh;padding:0;display:flex}.video-container{width:100%;max-width:1100px;margin:0 auto;transition:none}.video-container.pip{width:var(--pip-width);max-width:var(--pip-width);z-index:1000;border-radius:10px;position:fixed;bottom:24px;right:24px;overflow:hidden;box-shadow:0 8px 32px #0000004d,0 2px 8px #0003}.video-aspect{width:100%;padding-bottom:56.25%;position:relative}.video-aspect>div,.video-aspect>iframe{width:100%;height:100%;position:absolute;top:0;left:0}.pip-controls{bottom:calc(var(--pip-height) + 32px);z-index:1001;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:6px 12px;position:fixed;right:24px;box-shadow:0 2px 8px #0000001a}.follow-toggle{color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:6px;font-size:.8rem;font-weight:500;display:flex}.follow-toggle input{accent-color:var(--color-accent)}.content-section{max-width:1200px;margin:0 auto;padding:0 24px;display:flex}.content-main{min-width:0;max-width:var(--max-width);flex:1;margin:0 auto;padding:40px 0 120px}.content-gutter{flex-shrink:0;width:0;transition:width .2s}body:has(.video-container.pip) .content-gutter{width:var(--gutter)}.transcript-header{margin-bottom:32px}.transcript-header h1{letter-spacing:-.02em;margin-bottom:6px;font-size:1.75rem;font-weight:700}.subtitle{color:var(--color-muted);margin-bottom:4px;font-size:1.05rem}.meta{color:var(--color-muted);font-size:.875rem}.candidates-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:32px;display:grid}.candidate-card{background:var(--color-surface);border:1px solid var(--color-border);border-top:3px solid;border-radius:8px;padding:14px 16px}.candidate-card h4{margin-bottom:4px;font-size:.95rem;font-weight:600}.candidate-card p{color:var(--color-muted);font-size:.8rem;line-height:1.5}.chapter-index{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;margin-bottom:32px;padding:20px 24px}.chapter-index h2{text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);margin-bottom:12px;font-size:.8rem;font-weight:600}.chapter-index ul{list-style:none}.chapter-index>ul>li{margin-bottom:2px}.chapter-btn{cursor:pointer;text-align:left;width:100%;color:var(--color-text);background:0 0;border:none;border-radius:6px;align-items:baseline;gap:10px;padding:5px 8px;font-size:.9rem;transition:background .1s;display:flex}.chapter-btn:hover{background:var(--color-accent-light)}.chapter-btn.active{background:var(--color-accent-light);color:var(--color-accent);font-weight:500}.chapter-time{color:var(--color-accent);flex-shrink:0;min-width:52px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.8rem}.chapter-title{flex:1}.chapter-children{padding-left:24px}.chapter-btn.child{color:var(--color-muted);padding:3px 8px;font-size:.85rem}.chapter-btn.child:hover,.chapter-btn.child.active{color:var(--color-accent)}.section-divider{border:none;border-top:1px solid var(--color-border);margin:36px 0}.transcript-body{color:#44403c;font-size:.95rem;line-height:1.7}.transcript-heading{letter-spacing:-.01em;color:var(--color-text);border-top:1px solid var(--color-border);align-items:baseline;gap:10px;margin-top:40px;margin-bottom:12px;padding-top:20px;scroll-margin-top:24px;font-size:1.2rem;font-weight:700;display:flex}.transcript-heading:first-child{border-top:none;margin-top:0;padding-top:0}.transcript-question{color:var(--color-muted);border-left:3px solid var(--color-accent);background:var(--color-accent-light);border-radius:0 6px 6px 0;margin:8px 0 16px;padding:8px 16px;font-size:.92rem;font-style:italic;line-height:1.5}.speaker-block{border-left:3px solid var(--speaker-color,var(--color-border));gap:0;margin:12px 0;padding-left:0;display:flex}.speaker-label{width:90px;color:var(--speaker-color,var(--color-muted));text-align:right;-webkit-user-select:none;user-select:none;flex-shrink:0;padding:4px 12px 4px 10px;font-size:.78rem;font-weight:600;line-height:1.7}.speaker-text{flex:1;min-width:0;padding:4px 0}.speaker-moderator{border-left-color:var(--color-border);opacity:.7}.speaker-moderator .speaker-label{color:var(--color-muted)}.speaker-para{margin:0 0 8px}.speaker-para:last-child{margin-bottom:0}.caption-span{cursor:pointer;border-radius:3px;padding:1px 0;transition:background .15s,color .15s}.caption-span:hover{background:var(--color-accent-light);color:var(--color-accent)}.caption-active{color:#854d0e;background:#fef9c3;border-radius:3px;padding:1px 2px}.timestamp-link{color:var(--color-accent);background:var(--color-accent-light);cursor:pointer;white-space:nowrap;border:none;border-radius:4px;flex-shrink:0;padding:2px 6px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.78rem;transition:background .1s}.timestamp-link:hover{background:#dbeafe}.transcript-footer{border-top:1px solid var(--color-border);margin-top:48px;padding-top:24px}.transcript-footer p{color:var(--color-muted);font-size:.8rem;font-style:italic}@media (width<=768px){.video-section{min-height:auto}.content-section{padding:0 16px}.content-main{padding:24px 0 80px}.candidates-grid{grid-template-columns:1fr}.transcript-header h1{font-size:1.35rem}.video-container.pip{width:200px;bottom:12px;right:12px}body:has(.video-container.pip) .content-gutter{width:0}.transcript-heading{font-size:1.05rem}.transcript-question{font-size:.85rem}.speaker-block{flex-direction:column;gap:0}.speaker-label{text-align:left;width:auto;padding:2px 10px;font-size:.75rem}.speaker-text{padding:2px 10px}}@media (width<=480px){.video-container.pip{width:160px;bottom:8px;right:8px}}
