#problem-content h2{scroll-margin-top:6rem}.approach-card{border:1px solid var(--color-vault-border);border-radius:1rem;padding:1.75rem;margin-top:2rem;margin-bottom:2rem;background:color-mix(in srgb,var(--color-vault-surface) 60%,transparent);position:relative;overflow:hidden}.approach-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px}.approach-card.summary{border-color:color-mix(in srgb,var(--color-vault-primary) 30%,transparent);background:color-mix(in srgb,var(--color-vault-primary) 5%,var(--color-vault-surface))}.approach-card.summary:before{background:linear-gradient(90deg,var(--color-vault-primary),color-mix(in srgb,var(--color-vault-primary) 40%,transparent))}.approach-card.brute{border-left:4px solid var(--color-vault-hard);border-color:color-mix(in srgb,var(--color-vault-hard) 25%,var(--color-vault-border));background:color-mix(in srgb,var(--color-vault-hard) 4%,var(--color-vault-surface))}.approach-card.brute:before{background:linear-gradient(90deg,var(--color-vault-hard),color-mix(in srgb,var(--color-vault-hard) 30%,transparent))}.approach-card.optimal{border-left:4px solid var(--color-vault-easy);border-color:color-mix(in srgb,var(--color-vault-easy) 25%,var(--color-vault-border));background:color-mix(in srgb,var(--color-vault-easy) 4%,var(--color-vault-surface))}.approach-card.optimal:before{background:linear-gradient(90deg,var(--color-vault-easy),color-mix(in srgb,var(--color-vault-easy) 30%,transparent))}.approach-card.bridge{border-left:4px solid var(--color-vault-medium);border-color:color-mix(in srgb,var(--color-vault-medium) 25%,var(--color-vault-border));background:color-mix(in srgb,var(--color-vault-medium) 5%,var(--color-vault-surface))}.approach-card.bridge:before{background:linear-gradient(90deg,var(--color-vault-medium),color-mix(in srgb,var(--color-vault-medium) 30%,transparent))}.section-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer;user-select:none;padding:.25rem 0;font-size:1.75rem;font-weight:700;color:var(--color-vault-text);line-height:1.3}.section-toggle .chevron{transition:transform .2s ease;color:var(--color-vault-muted);flex-shrink:0;margin-left:.75rem}.section-toggle.collapsed .chevron{transform:rotate(-90deg)}.section-body.hidden{display:none}.approach-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:.25rem .75rem;border-radius:9999px;margin-bottom:.75rem}.approach-label.brute{background:color-mix(in srgb,var(--color-vault-hard) 15%,transparent);color:var(--color-vault-hard)}.approach-label.optimal{background:color-mix(in srgb,var(--color-vault-easy) 15%,transparent);color:var(--color-vault-easy)}.approach-label.bridge{background:color-mix(in srgb,var(--color-vault-medium) 15%,transparent);color:var(--color-vault-medium)}.approach-label.summary{background:color-mix(in srgb,var(--color-vault-primary) 15%,transparent);color:var(--color-vault-primary)}.lang-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-vault-border);margin-bottom:0}.lang-tab{padding:.4rem 1rem;font-size:.75rem;font-weight:600;color:var(--color-vault-muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .15s ease;background:none;border-top:none;border-left:none;border-right:none}.lang-tab:hover{color:var(--color-vault-text)}.lang-tab.active{color:var(--color-vault-primary);border-bottom-color:var(--color-vault-primary)}.lang-panel{display:none}.lang-panel.active{display:block}#problem-content svg.flowchart,#problem-content svg[id^=mermaid-]{max-height:350px;width:auto;margin:0 auto;display:block}.mermaid-expandable{position:relative;cursor:pointer;border:1px solid var(--color-vault-border);border-radius:.75rem;padding:1rem;transition:border-color .2s;overflow:hidden}.mermaid-expandable:hover{border-color:var(--color-vault-primary)}.mermaid-expand-hint{position:absolute;top:.5rem;right:.5rem;display:inline-flex;align-items:center;gap:.35rem;font-size:.65rem;font-weight:500;color:var(--color-vault-muted);background:var(--color-vault-surface);border:1px solid var(--color-vault-border);padding:.25rem .6rem;border-radius:.375rem;opacity:0;transition:opacity .2s;pointer-events:none;z-index:2}.mermaid-expandable:hover .mermaid-expand-hint{opacity:1}.diagram-lightbox{position:fixed;inset:0;z-index:9999;background:#000000e6;backdrop-filter:blur(6px);display:none;flex-direction:column}.diagram-lightbox.open{display:flex}.diagram-lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1.25rem;background:#0f172af2;border-bottom:1px solid var(--color-vault-border);flex-shrink:0}.diagram-lightbox-toolbar .hint-text{font-size:.7rem;color:var(--color-vault-muted)}.diagram-lightbox-toolbar button{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;padding:.4rem .85rem;border-radius:.375rem;border:1px solid var(--color-vault-border);background:var(--color-vault-surface);color:var(--color-vault-muted);cursor:pointer;transition:all .15s}.diagram-lightbox-toolbar button:hover{background:var(--color-vault-surface-hover);color:var(--color-vault-text)}.diagram-lightbox-toolbar button.close-btn{background:#ef444426;border-color:#ef444466;color:#ef4444}.diagram-lightbox-toolbar button.close-btn:hover{background:#ef44444d;color:#fca5a5}.diagram-lightbox-viewport{flex:1;overflow:hidden;cursor:crosshair;position:relative}.diagram-lightbox-canvas{position:absolute;top:0;left:0;transform-origin:0 0;will-change:transform;transition:transform .08s ease-out}.diagram-lightbox-canvas svg{max-height:none!important;max-width:none!important;width:auto;height:auto}.complexity-bar{display:flex;gap:1rem;flex-wrap:wrap;margin-top:.5rem}.complexity-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;padding:.3rem .75rem;border-radius:.5rem;background:var(--color-vault-surface);border:1px solid var(--color-vault-border);color:var(--color-vault-muted)}.complexity-chip strong{color:var(--color-vault-text)}#toc a{display:block;padding:.3rem .75rem;color:var(--color-vault-muted);text-decoration:none;border-left:2px solid transparent;transition:all .15s ease;font-size:.8rem;line-height:1.4}#toc a:hover{color:var(--color-vault-text)}#toc a.active{color:var(--color-vault-primary);border-left-color:var(--color-vault-primary);font-weight:500}#toc a.toc-h3{padding-left:1.25rem;font-size:.75rem}@keyframes yt-pulse{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 10px #ef444400}}.yt-cta-btn{animation:yt-pulse 2s ease-in-out infinite}.yt-cta-btn:hover{animation:none}
