.knowledge-main{margin:0 auto;max-width:1320px;padding:38px clamp(20px,5vw,72px) 90px}.crumb{color:var(--muted);display:flex;font-size:12px;gap:10px;margin-bottom:42px}.crumb a{color:var(--teal)}.knowledge-hero{border-bottom:1px solid var(--line);max-width:900px;padding-bottom:48px}.knowledge-hero h1{font-size:clamp(42px,6vw,78px);letter-spacing:-.04em;line-height:1.04;margin:0}.knowledge-hero>p:not(.eyebrow):not(.content-meta){color:var(--muted);font-size:19px;line-height:1.7;margin:22px 0 0;max-width:760px}.hero-rose h1{max-width:780px}.knowledge-layout{display:grid;gap:48px;grid-template-columns:190px minmax(0,820px);padding-top:48px}.chapter-nav{align-self:start;display:grid;gap:12px;position:sticky;top:100px}.chapter-nav strong{font-size:12px;letter-spacing:.08em;margin-bottom:7px;text-transform:uppercase}.chapter-nav a{border-left:1px solid var(--line);color:var(--muted);font-size:13px;padding:4px 0 4px 13px}.chapter-nav a:hover{border-color:var(--teal);color:var(--teal)}.knowledge-article{font-size:17px;line-height:1.8}.knowledge-article section{border-bottom:1px solid var(--line);padding:0 0 50px;margin-bottom:48px}.knowledge-article h2{font-size:clamp(27px,3vw,40px);letter-spacing:-.03em;line-height:1.18;margin:0 0 18px}.knowledge-article p{margin:0 0 20px}.knowledge-article .eyebrow{margin-bottom:12px}.definition-grid,.comparison-cards{display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin:28px 0}.definition-grid>div,.comparison-cards>div{background:var(--panel);border:1px solid var(--line);display:grid;gap:9px;padding:18px}.definition-grid strong,.comparison-cards strong{font-size:17px}.definition-grid span,.comparison-cards span{color:var(--muted);font-size:13px;line-height:1.55}.definition-grid b{color:var(--teal);font-size:11px;text-transform:uppercase}.callout{background:rgba(123,224,196,.08);border-left:3px solid var(--teal);font-size:15px;padding:16px 18px}.callout.amber{background:rgba(233,183,108,.08);border-color:var(--amber)}.callout.rose{background:rgba(230,129,143,.08);border-color:var(--rose)}.step-flow{display:grid;gap:1px;grid-template-columns:repeat(4,1fr);margin:28px 0}.step-flow>div{background:var(--panel);min-height:145px;padding:17px}.step-flow span{color:var(--teal);display:block;font-size:11px;margin-bottom:30px}.step-flow strong,.step-flow small{display:block}.step-flow strong{font-size:14px}.step-flow small{color:var(--muted);font-size:12px;line-height:1.45;margin-top:5px}.knowledge-table{border-collapse:collapse;font-size:14px;margin:24px 0;width:100%}.knowledge-table th,.knowledge-table td{border-bottom:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}.knowledge-table th{color:var(--muted);font-size:11px;text-transform:uppercase}.check-section{background:var(--panel);border:1px solid var(--line);padding:26px!important}.quiz{display:grid;gap:14px}.quiz-item{border-top:1px solid var(--line);display:grid;gap:9px;padding-top:16px}.quiz-item strong{font-size:15px}.quiz-item button{background:transparent;border:1px solid var(--line);color:var(--muted);cursor:pointer;padding:10px;text-align:left}.quiz-item button:hover{border-color:var(--teal);color:var(--teal)}.quiz-result{font-size:12px}.quiz-result.correct{color:var(--teal)}.quiz-result.wrong{color:var(--rose)}.safety-checklist{display:grid;gap:11px;margin:22px 0}.safety-checklist label{align-items:center;background:var(--bg-soft);border:1px solid var(--line);cursor:pointer;display:flex;font-size:14px;gap:10px;padding:13px}.safety-checklist input{accent-color:var(--teal);height:17px;width:17px}.check-progress{color:var(--teal);font-size:13px!important}.knowledge-article .article-links{border-top:0;margin-top:20px;padding-top:0}.knowledge-article .article-links a{color:var(--teal)}
@media(max-width:760px){.knowledge-layout{display:block}.chapter-nav{display:flex;gap:4px;overflow:auto;position:static;margin-bottom:40px}.chapter-nav strong{display:none}.chapter-nav a{border-left:0;border-bottom:2px solid var(--line);min-width:max-content;padding:9px}.chapter-nav a:hover{border-color:var(--teal)}.definition-grid,.comparison-cards,.step-flow{grid-template-columns:1fr}.step-flow>div{min-height:0}.step-flow span{margin-bottom:12px}.knowledge-article{font-size:16px}.knowledge-table{display:block;overflow:auto;white-space:nowrap}}
.library-toolbar{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:18px;justify-content:space-between;margin-top:48px;padding-bottom:18px}.library-toolbar .search-wrap{width:min(430px,100%)}.library-results{padding-top:22px}.library-result-head{align-items:center;color:var(--muted);display:flex;font-size:12px;justify-content:space-between;margin-bottom:14px}.library-result-head strong{color:var(--text);font-size:14px}.term-grid{display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.term-card{background:var(--panel);border:1px solid var(--line);display:flex;flex-direction:column;min-height:230px;padding:20px;transition:border-color .2s,transform .2s}.term-card:hover{border-color:var(--teal);transform:translateY(-3px)}.term-card>span{color:var(--teal);font-size:11px;text-transform:uppercase}.term-card strong{font-size:21px;margin-top:22px}.term-card p{color:var(--muted);font-size:13px;line-height:1.55;margin:10px 0 18px}.term-card small{color:var(--muted);font-size:11px}.term-card b{font-size:12px;margin-top:auto;padding-top:18px}.empty-library{border:1px dashed var(--line);color:var(--muted);grid-column:1/-1;padding:28px;text-align:center}.term-detail-list{display:grid;gap:1px;grid-template-columns:repeat(2,1fr);margin-top:48px}.term-detail-list article{background:var(--panel);border:1px solid var(--line);min-height:255px;padding:24px;scroll-margin-top:100px}.term-detail-list article.term-focused{border-color:var(--teal);box-shadow:0 0 28px rgba(123,224,196,.1)}.term-detail-list h2{font-size:27px;margin:0 0 12px}.term-detail-list p{color:var(--muted);font-size:14px;line-height:1.7}.term-answer{border-left:2px solid var(--teal);display:grid;gap:5px;margin-top:22px;padding-left:13px}.term-answer strong{font-size:12px}.term-answer span{color:var(--muted);font-size:12px;line-height:1.55}.term-answer.warning{border-color:var(--rose)}.term-answer.warning strong{color:var(--rose)}
@media(max-width:760px){.library-toolbar{align-items:stretch;flex-direction:column}.library-toolbar .search-wrap{width:100%}.term-grid,.term-detail-list{grid-template-columns:1fr}.term-detail-list article{min-height:0}}
.search-page-toolbar{align-items:center}.site-result-grid{display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.site-result{background:var(--panel);border:1px solid var(--line);display:flex;flex-direction:column;min-height:190px;padding:20px;transition:border-color .2s,transform .2s}.site-result:hover{border-color:var(--teal);transform:translateY(-3px)}.site-result span{color:var(--teal);font-size:11px}.site-result strong{font-size:21px;margin-top:20px}.site-result p{color:var(--muted);font-size:13px;line-height:1.6;margin:10px 0 18px}.site-result b{font-size:12px;margin-top:auto}.policy-main{max-width:1100px}.policy-article{max-width:820px;padding-top:48px}.policy-article section{padding-bottom:38px;margin-bottom:38px}.policy-article a{color:var(--teal)}
@media(max-width:760px){.site-result-grid{grid-template-columns:1fr}.search-page-toolbar{align-items:stretch}}
.security-alert{background:rgba(230,129,143,.1);border:1px solid rgba(230,129,143,.45);margin-top:48px;padding:20px 24px}.security-alert strong{color:var(--rose);display:block;font-size:14px;margin-bottom:7px}.security-alert p{color:var(--muted);font-size:14px;line-height:1.65;margin:0}.risk-grid,.stack-grid{display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.risk-grid>a,.stack-grid>div{background:var(--panel);border:1px solid var(--line);display:block;padding:20px;transition:border-color .2s,transform .2s}.risk-grid>a:hover,.stack-grid>div:hover{border-color:var(--teal);transform:translateY(-3px)}.risk-grid span,.stack-grid span{display:block;color:var(--muted);font-size:11px;margin-bottom:24px;text-transform:uppercase}.risk-grid strong,.stack-grid strong{display:block;font-size:18px}.risk-grid p,.stack-grid p{color:var(--muted);font-size:13px;line-height:1.55;margin:10px 0 0}.risk-high{color:var(--rose)!important}.risk-mid{color:var(--amber)!important}.risk-low{color:var(--teal)!important}.incident-flow{display:grid;gap:1px;grid-template-columns:repeat(4,1fr)}.incident-flow>div{background:var(--panel);min-height:180px;padding:20px}.incident-flow span{color:var(--teal);display:block;font-size:11px;margin-bottom:38px}.incident-flow strong{display:block;font-size:16px}.incident-flow p{color:var(--muted);font-size:13px;line-height:1.55;margin:8px 0 0}.incident-flow a{color:var(--teal);display:block;font-size:12px;font-weight:800;margin-top:14px}.stack-grid b{color:var(--teal);display:block;font-size:11px;margin-top:18px}.dev-flow>div{min-height:225px}
@media(max-width:760px){.risk-grid,.stack-grid,.incident-flow{grid-template-columns:1fr}.incident-flow>div{min-height:0}.incident-flow span{margin-bottom:15px}}
.progress-summary{align-items:center;background:var(--panel);border:1px solid var(--line);display:grid;gap:12px;grid-template-columns:140px 1fr auto;margin-top:48px;padding:18px 20px}.progress-summary span,.progress-summary strong{display:block}.progress-summary span{color:var(--muted);font-size:11px;text-transform:uppercase}.progress-summary strong{font-size:24px;margin-top:3px}.progress-track{background:var(--bg-soft);height:8px;overflow:hidden}.progress-track i{background:var(--teal);display:block;height:100%;transition:width .25s;width:0}.reset-progress{background:transparent;border:1px solid var(--line);color:var(--muted);cursor:pointer;font-size:12px;padding:9px 12px}.reset-progress:hover{border-color:var(--rose);color:var(--rose)}.learning-grid{display:grid;gap:14px;grid-template-columns:repeat(2,1fr);margin-top:16px}.learning-track{background:var(--panel);border:1px solid var(--line);padding:22px}.learning-track-head{align-items:start;display:flex;justify-content:space-between}.learning-track-head .eyebrow{margin-bottom:9px}.learning-track h2{font-size:25px;margin:0}.learning-track-head>strong{color:var(--teal);font-size:14px}.learning-track>p{color:var(--muted);font-size:13px;line-height:1.6;margin:14px 0 22px}.lesson-list{display:grid;gap:8px}.lesson-list label{align-items:center;background:var(--bg-soft);border:1px solid var(--line);display:grid;gap:10px;grid-template-columns:18px 1fr auto;padding:11px}.lesson-list input{accent-color:var(--teal);height:16px;width:16px}.lesson-list span{display:grid;gap:2px}.lesson-list b{font-size:13px}.lesson-list small{color:var(--muted);font-size:11px}.lesson-list a{color:var(--teal);font-size:11px}.lesson-list label:has(input:checked){border-color:rgba(123,224,196,.5)}.lesson-list label:has(input:checked) b{color:var(--muted);text-decoration:line-through}
@media(max-width:760px){.progress-summary{grid-template-columns:1fr auto}.progress-track{grid-column:1/-1;grid-row:2}.learning-grid{grid-template-columns:1fr}}
.progress-actions{display:flex;gap:8px}.share-progress{background:transparent;border:1px solid var(--teal);color:var(--teal);cursor:pointer;font-size:12px;padding:9px 12px}.share-progress:hover{background:rgba(123,224,196,.08)}.share-status{color:var(--teal);font-size:11px;grid-column:1/-1}
.project-card>a{color:var(--teal);font-size:12px;font-weight:800;margin-top:auto;padding-top:18px}.project-card>a:hover{text-decoration:underline;text-underline-offset:3px}
.project-overview{align-items:start;display:flex;gap:24px;justify-content:space-between}.project-overview p{max-width:680px}.concept-tags{display:flex;flex-wrap:wrap;gap:10px}.concept-tags a{border:1px solid var(--line);color:var(--teal);font-size:13px;padding:10px 13px}.concept-tags a:hover{border-color:var(--teal)}.question-list{display:grid;gap:1px;grid-template-columns:1fr 1fr}.question-list>div{background:var(--panel);display:grid;gap:14px;grid-template-columns:32px 1fr;padding:18px}.question-list span{color:var(--teal);font-size:12px}.question-list strong{font-size:14px;line-height:1.5}
@media(max-width:760px){.project-overview{display:block}.project-overview .primary-button{display:inline-block;margin-top:10px}.question-list{grid-template-columns:1fr}}
.term-reference{border-top:1px solid var(--line);display:grid;gap:7px;margin-top:20px;padding-top:16px}.term-reference>strong{color:var(--amber);font-size:12px}.term-reference p{color:var(--muted);font-size:13px;line-height:1.65;margin:0}.term-reference a{color:var(--teal);font-size:12px;line-height:1.45}.term-reference a:hover{text-decoration:underline;text-underline-offset:3px}
.article-sources{border-top:1px solid var(--line);display:grid;gap:8px;margin-top:26px;padding-top:17px}.article-sources strong{color:var(--amber);font-size:12px}.article-sources a{color:var(--teal);font-size:13px}.article-sources a:hover{text-decoration:underline;text-underline-offset:3px}
.tool-grid{display:grid;gap:14px;grid-template-columns:1fr 1fr;margin-top:48px}.tool-card{background:var(--panel);border:1px solid var(--line);padding:24px}.tool-card-heading{align-items:start;display:flex;justify-content:space-between}.tool-card-heading h2{font-size:28px;margin:0}.tool-card-heading>span{color:var(--teal);font-size:12px}.tool-intro{color:var(--muted);font-size:14px;line-height:1.65;min-height:48px}.tool-form{display:grid;gap:10px;margin-top:24px}.tool-form label{color:var(--muted);display:grid;font-size:12px;gap:7px}.tool-form label span{color:var(--teal);font-size:11px}.tool-form input{background:var(--bg-soft);border:1px solid var(--line);color:var(--text);font:inherit;padding:12px}.tool-form input:focus{border-color:var(--teal);outline:0}.tool-result{background:rgba(123,224,196,.08);border-left:3px solid var(--teal);display:grid;gap:5px;margin-top:20px;padding:16px}.tool-result span{color:var(--muted);font-size:12px}.tool-result strong{font-size:30px}.tool-result b{color:var(--teal);font-size:13px}.tool-note{color:var(--muted);font-size:11px;line-height:1.55;margin:18px 0 0}.tool-checklist{display:grid;gap:8px;margin-top:18px}.tool-checklist label{align-items:start;background:var(--bg-soft);border:1px solid var(--line);cursor:pointer;display:grid;gap:10px;grid-template-columns:18px 1fr;padding:12px}.tool-checklist input{accent-color:var(--teal);height:16px;width:16px}.tool-checklist span{display:grid;gap:4px}.tool-checklist strong{font-size:13px}.tool-checklist small{color:var(--muted);font-size:11px;line-height:1.45}.tool-checklist label:has(input:checked){border-color:rgba(123,224,196,.5)}.tool-checklist label:has(input:checked) strong{color:var(--muted);text-decoration:line-through}.tool-card .reset-progress{margin-top:14px}
@media(max-width:760px){.tool-grid{grid-template-columns:1fr}.tool-card-heading h2{font-size:25px}}
.case-grid{display:grid;gap:14px;grid-template-columns:1fr 1fr}.case-card{background:var(--panel);border:1px solid var(--line);padding:22px}.case-card>span{color:var(--rose);font-size:11px}.case-card h2{font-size:23px;line-height:1.25;margin:16px 0 10px}.case-card>p{color:var(--muted);font-size:13px;line-height:1.65;margin:0 0 18px}.case-flow,.case-defense,.case-question{border-top:1px solid var(--line);display:grid;gap:7px;margin-top:13px;padding-top:13px}.case-flow b,.case-defense b,.case-question b{font-size:11px;text-transform:uppercase}.case-flow strong,.case-defense p,.case-question p{font-size:13px;line-height:1.55;margin:0}.case-flow strong{color:var(--amber);font-weight:500}.case-defense b{color:var(--teal)}.case-question b{color:var(--rose)}.case-defense p,.case-question p{color:var(--muted)}
@media(max-width:760px){.case-grid{grid-template-columns:1fr}}
.compare-picker{background:var(--panel);border:1px solid var(--line);margin-top:48px;padding:22px}.compare-picker .section-heading{margin-bottom:18px}.compare-options{display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.compare-options label{align-items:center;background:var(--bg-soft);border:1px solid var(--line);cursor:pointer;display:grid;gap:3px;grid-template-columns:18px 1fr;padding:13px}.compare-options input{accent-color:var(--teal);grid-row:span 2;height:16px;width:16px}.compare-options span{font-size:14px}.compare-options small{color:var(--muted);font-size:11px}.compare-options label:has(input:checked){border-color:var(--teal)}.compare-output{margin-top:24px}.compare-table-wrap{background:var(--panel);border:1px solid var(--line);overflow:auto}.compare-table{margin:0;min-width:700px}.compare-table th:first-child{min-width:145px}.compare-table td{color:var(--muted);line-height:1.55}.compare-table a{color:var(--teal)}
@media(max-width:760px){.compare-options{grid-template-columns:1fr 1fr}}
.source-grid{display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-top:48px}.source-card{background:var(--panel);border:1px solid var(--line);display:flex;flex-direction:column;min-height:190px;padding:20px;transition:border-color .2s,transform .2s}.source-card:hover{border-color:var(--teal);transform:translateY(-3px)}.source-card>span{color:var(--teal);font-size:11px}.source-card strong{font-size:20px;margin-top:18px}.source-card p{color:var(--muted);font-size:13px;line-height:1.6;margin:9px 0 15px}.source-card b{font-size:12px;margin-top:auto}.source-card a{color:var(--teal)}
@media(max-width:760px){.source-grid{grid-template-columns:1fr}}
.code-block{background:#081919;border:1px solid var(--line);color:#c9f5e5;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;line-height:1.7;margin:24px 0;overflow:auto;padding:20px;white-space:pre}.knowledge-article code{background:var(--bg-soft);color:var(--teal);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9em;padding:2px 5px}
.faq-list{display:grid;gap:10px;margin:48px 0 0;max-width:900px}.faq-list details{background:var(--panel);border:1px solid var(--line);padding:0 20px}.faq-list details[open]{border-color:rgba(123,224,196,.45)}.faq-list summary{cursor:pointer;font-size:17px;font-weight:700;list-style:none;padding:20px 28px 20px 0;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{color:var(--teal);content:"+";font-size:20px;position:absolute;right:0;top:17px}.faq-list details[open] summary::after{content:"−"}.faq-list p{color:var(--muted);font-size:15px;line-height:1.8;margin:0;padding:0 0 22px}.faq-list a{color:var(--teal)}
