.library-page .sr-only,.sd-reader .sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.library-page .sd-level,.sd-reader .sd-level{display:inline-flex;align-items:center;padding:0 var(--cf-space-200);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-full);font-size:var(--cf-font-size-275);font-weight:var(--cf-font-weight-semibold);line-height:var(--cf-line-height-180);white-space:nowrap}.library-page .sd-level.is-easy,.sd-reader .sd-level.is-easy{border-color:var(--cf-color-success-border);color:var(--cf-color-success)}.library-page .sd-level.is-medium,.sd-reader .sd-level.is-medium{border-color:var(--cf-color-warning-border);color:var(--cf-color-warning)}.library-page .sd-level.is-hard,.sd-reader .sd-level.is-hard{border-color:var(--cf-color-danger-border);color:var(--cf-color-danger)}.library-page .sd-button,.sd-reader .sd-button{display:inline-flex;align-items:center;gap:var(--cf-space-150);padding:var(--cf-space-150) var(--cf-space-400);border:1px solid var(--cf-color-primary-solid);border-radius:var(--cf-radius-200);background:var(--cf-color-primary-solid);color:var(--cf-color-on-primary-solid);font:inherit;font-size:var(--cf-font-size-325);font-weight:var(--cf-font-weight-semibold);cursor:pointer;transition:background var(--cf-duration-fast) var(--cf-ease-standard)}.library-page .sd-button:hover:not(:disabled),.sd-reader .sd-button:hover:not(:disabled){background:var(--cf-color-primary-solid-hover)}.library-page .sd-button:disabled,.sd-reader .sd-button:disabled{opacity:.45;cursor:default}.library-page .sd-button.is-quiet,.sd-reader .sd-button.is-quiet{border-color:var(--cf-color-border-control);background:var(--cf-color-surface);color:var(--cf-color-text-strong)}.library-page .sd-button.is-quiet:hover:not(:disabled),.sd-reader .sd-button.is-quiet:hover:not(:disabled){background:var(--cf-color-surface-hover)}.library-page .sd-chip,.sd-reader .sd-chip{padding:var(--cf-space-100) var(--cf-space-300);border:1px solid var(--cf-color-border-control);border-radius:var(--cf-radius-full);background:var(--cf-color-surface);color:var(--cf-color-text-secondary);font:inherit;font-size:var(--cf-font-size-300);font-weight:var(--cf-font-weight-medium);cursor:pointer}.library-page .sd-chip:hover,.sd-reader .sd-chip:hover{border-color:var(--cf-color-border-hover);color:var(--cf-color-text-strong)}.library-page .sd-chip[aria-pressed=true],.sd-reader .sd-chip[aria-pressed=true]{border-color:var(--cf-color-primary-border);background:var(--cf-color-primary-subtle);color:var(--cf-color-primary)}.library-page .sd-more-link,.sd-reader .sd-more-link{display:inline-flex;align-items:center;gap:var(--cf-space-100);margin-top:var(--cf-space-300);color:var(--cf-color-primary);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-article,.sd-reader .sd-article{max-width:860px}.library-page .sd-article code,.sd-reader .sd-article code{padding:0 var(--cf-space-100);border-radius:var(--cf-radius-100);background:var(--cf-color-code-inline-bg);color:var(--cf-color-code-inline-text);font-family:var(--cf-font-mono);font-size:.9em}.library-page .sd-header,.sd-reader .sd-header{margin-top:var(--cf-space-500)}.library-page .sd-header h1,.sd-reader .sd-header h1{margin:var(--cf-space-200) 0 var(--cf-space-300)}.library-page .sd-summary,.sd-reader .sd-summary{color:var(--cf-color-text-secondary);font-size:var(--cf-font-size-450);line-height:var(--cf-line-height-150)}.library-page .sd-chips,.sd-reader .sd-chips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--cf-space-200);margin:var(--cf-space-400) 0}.library-page .sd-chips>span:not(.sd-level),.sd-reader .sd-chips>span:not(.sd-level){display:inline-flex;align-items:center;gap:var(--cf-space-100);padding:0 var(--cf-space-250);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-full);color:var(--cf-color-text-secondary);font-size:var(--cf-font-size-300);line-height:var(--cf-line-height-180)}.library-page .sd-toc,.sd-reader .sd-toc{margin:var(--cf-space-600) 0 var(--cf-space-200);padding:var(--cf-space-400);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250);background:var(--cf-color-bg-subtle)}.library-page .sd-toc>span,.sd-reader .sd-toc>span{color:var(--cf-color-text-tertiary);font:var(--cf-font-size-225)/var(--cf-line-height-160) var(--cf-font-mono);letter-spacing:var(--cf-letter-spacing-widest);text-transform:uppercase}.library-page .sd-toc ol,.sd-reader .sd-toc ol{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));grid-gap:var(--cf-space-100) var(--cf-space-400);gap:var(--cf-space-100) var(--cf-space-400);margin:var(--cf-space-200) 0 0;padding-left:var(--cf-space-500)}.library-page .sd-toc a,.sd-reader .sd-toc a{color:var(--cf-color-text-secondary);font-size:var(--cf-font-size-325)}.library-page .sd-toc a:hover,.sd-reader .sd-toc a:hover{color:var(--cf-color-primary)}.library-page .sd-section,.sd-reader .sd-section{padding-top:var(--cf-space-800);scroll-margin-top:72px}.library-page .sd-section>h2,.sd-reader .sd-section>h2{position:relative;margin-bottom:var(--cf-space-300);padding-top:var(--cf-space-300)}.library-page .sd-section>h2:before,.sd-reader .sd-section>h2:before{content:"";position:absolute;top:0;left:0;width:28px;height:3px;border-radius:var(--cf-radius-full);background:var(--cf-color-secondary)}.library-page .sd-section .sd-deep-dive>p,.library-page .sd-section>p,.sd-reader .sd-section .sd-deep-dive>p,.sd-reader .sd-section>p{color:var(--cf-color-text-secondary)}.library-page .sd-section h3,.sd-reader .sd-section h3{margin:var(--cf-space-500) 0 var(--cf-space-200);font-size:var(--cf-font-size-450)}.library-page .sd-kicker,.sd-reader .sd-kicker{margin:0;color:var(--cf-color-secondary);font:var(--cf-font-size-250)/var(--cf-line-height-160) var(--cf-font-mono);font-weight:var(--cf-font-weight-semibold);letter-spacing:var(--cf-letter-spacing-widest);text-transform:uppercase}.library-page .sd-bullets,.library-page .sd-pitfalls,.sd-reader .sd-bullets,.sd-reader .sd-pitfalls{display:grid;grid-gap:var(--cf-space-200);gap:var(--cf-space-200);color:var(--cf-color-text-secondary)}.library-page .sd-pitfalls li::marker,.sd-reader .sd-pitfalls li::marker{color:var(--cf-color-danger)}.library-page .sd-callout,.sd-reader .sd-callout{margin:var(--cf-space-400) 0;padding:var(--cf-space-300) var(--cf-space-400);border-left:3px solid var(--cf-color-secondary);border-radius:0 var(--cf-radius-200) var(--cf-radius-200) 0;background:var(--cf-color-secondary-subtle)}.library-page .sd-callout strong,.sd-reader .sd-callout strong{color:var(--cf-color-secondary);font-size:var(--cf-font-size-300);letter-spacing:var(--cf-letter-spacing-wide);text-transform:uppercase}.library-page .sd-callout p,.sd-reader .sd-callout p{margin:var(--cf-space-100) 0 0}.library-page .sd-callout.is-warning,.sd-reader .sd-callout.is-warning{border-color:var(--cf-color-warning);background:var(--cf-color-warning-subtle)}.library-page .sd-callout.is-warning strong,.sd-reader .sd-callout.is-warning strong{color:var(--cf-color-warning)}.library-page .sd-callout.is-interview,.sd-reader .sd-callout.is-interview{border-color:var(--cf-color-primary);background:var(--cf-color-primary-subtle)}.library-page .sd-callout.is-interview strong,.sd-reader .sd-callout.is-interview strong{color:var(--cf-color-primary)}.library-page .sd-analogy,.sd-reader .sd-analogy{padding:var(--cf-space-500);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-300);background:var(--cf-color-bg-subtle)}.library-page .sd-analogy h3,.sd-reader .sd-analogy h3{margin-top:0}.library-page .sd-analogy p,.sd-reader .sd-analogy p{margin:0;color:var(--cf-color-text-secondary)}.library-page .sd-use-when,.sd-reader .sd-use-when{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--cf-space-400);gap:var(--cf-space-400)}@media(max-width:768px){.library-page .sd-use-when,.sd-reader .sd-use-when{grid-template-columns:1fr}}.library-page .sd-use-when>div,.sd-reader .sd-use-when>div{padding:var(--cf-space-400) var(--cf-space-500);border:1px solid var(--cf-color-success-border);border-radius:var(--cf-radius-250);background:var(--cf-color-success-subtle)}.library-page .sd-use-when>div:last-child,.sd-reader .sd-use-when>div:last-child{border-color:var(--cf-color-border);background:var(--cf-color-bg-subtle)}.library-page .sd-use-when h3,.sd-reader .sd-use-when h3{margin-top:0;font-size:var(--cf-font-size-400)}.library-page .sd-use-when ul,.sd-reader .sd-use-when ul{display:grid;grid-gap:var(--cf-space-150);gap:var(--cf-space-150);margin:0;padding-left:var(--cf-space-500)}.library-page .sd-code,.sd-reader .sd-code{position:relative;margin:var(--cf-space-400) 0}.library-page .sd-code pre,.sd-reader .sd-code pre{overflow-x:auto;margin:0;padding:var(--cf-space-400);border-radius:var(--cf-radius-250);background:var(--cf-color-code-bg);color:var(--cf-color-code-text);font:var(--cf-font-size-325)/var(--cf-line-height-160) var(--cf-font-mono)}.library-page .sd-code pre code,.sd-reader .sd-code pre code{padding:0;background:none;color:inherit;font-size:inherit}.library-page .sd-code pre .tok-keyword,.sd-reader .sd-code pre .tok-keyword{color:var(--cf-color-code-keyword)}.library-page .sd-code pre .tok-regexp,.library-page .sd-code pre .tok-string,.sd-reader .sd-code pre .tok-regexp,.sd-reader .sd-code pre .tok-string{color:var(--cf-color-code-string)}.library-page .sd-code pre .tok-number,.sd-reader .sd-code pre .tok-number{color:var(--cf-color-code-number)}.library-page .sd-code pre .tok-constant,.sd-reader .sd-code pre .tok-constant{color:var(--cf-color-code-constant)}.library-page .sd-code pre .tok-comment,.sd-reader .sd-code pre .tok-comment{color:var(--cf-color-code-comment)}.library-page .sd-code pre .tok-function,.sd-reader .sd-code pre .tok-function{color:var(--cf-color-code-function)}.library-page .sd-code pre .tok-type,.sd-reader .sd-code pre .tok-type{color:var(--cf-color-code-type)}.library-page .sd-code pre .tok-definition,.sd-reader .sd-code pre .tok-definition{color:var(--cf-color-code-definition)}.library-page .sd-code pre .tok-variable,.sd-reader .sd-code pre .tok-variable{color:var(--cf-color-code-variable)}.library-page .sd-code pre .tok-property,.sd-reader .sd-code pre .tok-property{color:var(--cf-color-code-property)}.library-page .sd-code figcaption,.sd-reader .sd-code figcaption{margin-top:var(--cf-space-200);color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-300)}.library-page .sd-code-language,.sd-reader .sd-code-language{position:absolute;top:var(--cf-space-200);right:var(--cf-space-300);color:var(--cf-color-code-comment);font:var(--cf-font-size-250)/var(--cf-line-height-160) var(--cf-font-mono);text-transform:uppercase}.library-page .sd-table-wrap,.sd-reader .sd-table-wrap{overflow-x:auto;margin:var(--cf-space-400) 0;border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250)}.library-page .sd-table,.sd-reader .sd-table{width:100%;border-collapse:collapse;font-size:var(--cf-font-size-325)}.library-page .sd-table caption,.sd-reader .sd-table caption{padding:var(--cf-space-200) var(--cf-space-300);color:var(--cf-color-text-tertiary);text-align:left}.library-page .sd-table td,.library-page .sd-table th,.sd-reader .sd-table td,.sd-reader .sd-table th{padding:var(--cf-space-250) var(--cf-space-300);border-top:1px solid var(--cf-color-border);text-align:left;vertical-align:top}.library-page .sd-table thead th,.sd-reader .sd-table thead th{border-top:0;background:var(--cf-color-bg-subtle);color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-300);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-table tbody th,.sd-reader .sd-table tbody th{color:var(--cf-color-text-strong);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-table td,.sd-reader .sd-table td{color:var(--cf-color-text-secondary)}.library-page .sd-table.is-compact td,.library-page .sd-table.is-compact th,.sd-reader .sd-table.is-compact td,.sd-reader .sd-table.is-compact th{padding:var(--cf-space-150) var(--cf-space-300)}.library-page .sd-think,.sd-reader .sd-think{margin:var(--cf-space-400) 0;padding:var(--cf-space-400) var(--cf-space-500);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-300);background:var(--cf-color-surface)}.library-page .sd-think.is-open,.sd-reader .sd-think.is-open{border-color:var(--cf-color-secondary-border)}.library-page .sd-think-label,.sd-reader .sd-think-label{margin:0;color:var(--cf-color-secondary);font:var(--cf-font-size-250)/var(--cf-line-height-160) var(--cf-font-mono);font-weight:var(--cf-font-weight-semibold);letter-spacing:var(--cf-letter-spacing-widest);text-transform:uppercase}.library-page .sd-think-question,.sd-reader .sd-think-question{margin:var(--cf-space-150) 0 var(--cf-space-300);color:var(--cf-color-text-strong);font-size:var(--cf-font-size-400);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-think-answer,.sd-reader .sd-think-answer{margin-top:var(--cf-space-400);padding-top:var(--cf-space-300);border-top:1px dashed var(--cf-color-border-strong)}.library-page .sd-think-answer p,.sd-reader .sd-think-answer p{color:var(--cf-color-text-secondary)}.library-page .sd-quiz,.sd-reader .sd-quiz{margin:var(--cf-space-500) 0}.library-page .sd-quiz-question,.sd-reader .sd-quiz-question{color:var(--cf-color-text-strong);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-quiz-question>span,.sd-reader .sd-quiz-question>span{color:var(--cf-color-secondary)}.library-page .sd-quiz-options,.sd-reader .sd-quiz-options{display:grid;grid-gap:var(--cf-space-200);gap:var(--cf-space-200);margin:0;padding:0;list-style:none}.library-page .sd-quiz-option,.sd-reader .sd-quiz-option{width:100%;padding:var(--cf-space-250) var(--cf-space-400);border:1px solid var(--cf-color-border-control);border-radius:var(--cf-radius-200);background:var(--cf-color-surface);color:var(--cf-color-text);font:inherit;text-align:left;cursor:pointer}.library-page .sd-quiz-option:hover,.sd-reader .sd-quiz-option:hover{border-color:var(--cf-color-border-hover);background:var(--cf-color-surface-hover)}.library-page .sd-quiz-option.is-right,.sd-reader .sd-quiz-option.is-right{border-color:var(--cf-color-success-border);background:var(--cf-color-success-subtle)}.library-page .sd-quiz-option.is-wrong,.sd-reader .sd-quiz-option.is-wrong{border-color:var(--cf-color-danger-border);background:var(--cf-color-danger-subtle)}.library-page .sd-quiz-feedback,.sd-reader .sd-quiz-feedback{margin-top:var(--cf-space-300);padding:var(--cf-space-300) var(--cf-space-400);border-radius:var(--cf-radius-200)}.library-page .sd-quiz-feedback.is-right,.sd-reader .sd-quiz-feedback.is-right{background:var(--cf-color-success-subtle)}.library-page .sd-quiz-feedback.is-wrong,.sd-reader .sd-quiz-feedback.is-wrong{background:var(--cf-color-danger-subtle)}.library-page .sd-toc.is-guide>ol,.sd-reader .sd-toc.is-guide>ol{display:block;columns:260px 2;column-gap:var(--cf-space-600)}.library-page .sd-toc.is-guide>ol>li,.sd-reader .sd-toc.is-guide>ol>li{page-break-inside:avoid;break-inside:avoid;margin-bottom:var(--cf-space-150)}.library-page .sd-toc.is-guide ol ol,.sd-reader .sd-toc.is-guide ol ol{display:block;margin:var(--cf-space-050) 0 0;padding-left:var(--cf-space-400);list-style:none}.library-page .sd-toc.is-guide ol ol a,.sd-reader .sd-toc.is-guide ol ol a{color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-300)}.library-page .sd-chapter>h3,.sd-reader .sd-chapter>h3{margin-top:var(--cf-space-600);scroll-margin-top:72px}.library-page .sd-examples,.sd-reader .sd-examples{color:var(--cf-color-text-secondary);font-size:var(--cf-font-size-350)}.library-page .sd-callout.is-note,.sd-reader .sd-callout.is-note{border-color:var(--cf-color-border-hover);background:var(--cf-color-bg-subtle)}.library-page .sd-callout.is-note strong,.sd-reader .sd-callout.is-note strong{color:var(--cf-color-text-secondary)}.library-page .sd-decision,.sd-reader .sd-decision{margin:var(--cf-space-500) 0}.library-page .sd-decision-question,.sd-reader .sd-decision-question{color:var(--cf-color-text-strong);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-decision-question>span,.sd-reader .sd-decision-question>span{margin-right:var(--cf-space-150);padding:0 var(--cf-space-200);border-radius:var(--cf-radius-full);background:var(--cf-color-primary-subtle);color:var(--cf-color-primary);font:var(--cf-font-size-250)/var(--cf-line-height-180) var(--cf-font-mono);letter-spacing:var(--cf-letter-spacing-wide);text-transform:uppercase}.library-page .sd-options,.sd-reader .sd-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));grid-gap:var(--cf-space-300);gap:var(--cf-space-300)}.library-page .sd-option,.sd-reader .sd-option{padding:var(--cf-space-400);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250);background:var(--cf-color-surface)}.library-page .sd-option h4,.sd-reader .sd-option h4{margin:0 0 var(--cf-space-150);color:var(--cf-color-text-strong)}.library-page .sd-option p,.sd-reader .sd-option p{margin:0 0 var(--cf-space-200);font-size:var(--cf-font-size-350)}.library-page .sd-option-lists,.sd-reader .sd-option-lists{display:grid;grid-gap:var(--cf-space-200);gap:var(--cf-space-200)}.library-page .sd-option-lists ul,.sd-reader .sd-option-lists ul{margin:0;padding-left:var(--cf-space-400);font-size:var(--cf-font-size-325)}.library-page .sd-option-label,.sd-reader .sd-option-label{font:var(--cf-font-size-250)/var(--cf-line-height-160) var(--cf-font-mono);letter-spacing:var(--cf-letter-spacing-wide);text-transform:uppercase}.library-page .sd-option-label.is-pro,.sd-reader .sd-option-label.is-pro{color:var(--cf-color-success)}.library-page .sd-option-label.is-con,.sd-reader .sd-option-label.is-con{color:var(--cf-color-danger)}.library-page .sd-decision-verdict,.sd-reader .sd-decision-verdict{margin-top:var(--cf-space-300);padding:var(--cf-space-300) var(--cf-space-400);border-left:3px solid var(--cf-color-primary);border-radius:0 var(--cf-radius-200) var(--cf-radius-200) 0;background:var(--cf-color-primary-subtle)}.library-page .sd-exercise,.sd-reader .sd-exercise{margin:var(--cf-space-500) 0;padding:var(--cf-space-400);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250);background:var(--cf-color-bg-subtle)}.library-page .sd-exercise-label,.sd-reader .sd-exercise-label{margin:0;color:var(--cf-color-secondary);font:var(--cf-font-size-250)/var(--cf-line-height-160) var(--cf-font-mono);letter-spacing:var(--cf-letter-spacing-wide);text-transform:uppercase}.library-page .sd-exercise-question,.sd-reader .sd-exercise-question{color:var(--cf-color-text-strong);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-exercise-hint,.sd-reader .sd-exercise-hint{color:var(--cf-color-text-tertiary);font-weight:var(--cf-font-weight-regular);font-size:var(--cf-font-size-325)}.library-page .sd-exercise-options,.sd-reader .sd-exercise-options{display:grid;grid-gap:var(--cf-space-200);gap:var(--cf-space-200);margin:0;padding:0;list-style:none}.library-page .sd-exercise-text,.sd-reader .sd-exercise-text{flex:1 1;min-width:0}.library-page .sd-exercise-option,.sd-reader .sd-exercise-option{display:flex;gap:var(--cf-space-300);align-items:flex-start;width:100%;padding:var(--cf-space-250) var(--cf-space-400);border:1px solid var(--cf-color-border-control);border-radius:var(--cf-radius-200);background:var(--cf-color-surface);color:var(--cf-color-text);font:inherit;text-align:left;cursor:pointer}.library-page .sd-exercise-option:hover,.sd-reader .sd-exercise-option:hover{border-color:var(--cf-color-border-hover)}.library-page .sd-exercise-option[aria-pressed=true],.sd-reader .sd-exercise-option[aria-pressed=true]{border-color:var(--cf-color-primary)}.library-page .sd-exercise-option.is-right,.sd-reader .sd-exercise-option.is-right{border-color:var(--cf-color-success-border);background:var(--cf-color-success-subtle)}.library-page .sd-exercise-option.is-missed,.library-page .sd-exercise-option.is-wrong,.sd-reader .sd-exercise-option.is-missed,.sd-reader .sd-exercise-option.is-wrong{border-color:var(--cf-color-danger-border);background:var(--cf-color-danger-subtle)}.library-page .sd-exercise-box,.sd-reader .sd-exercise-box{display:inline-grid;flex:none;place-items:center;width:20px;height:20px;border:1px solid var(--cf-color-border-control);border-radius:var(--cf-radius-100);color:var(--cf-color-primary);font-size:var(--cf-font-size-300)}.library-page .sd-exercise-why,.sd-reader .sd-exercise-why{margin:var(--cf-space-150) 0 0 var(--cf-space-800);font-size:var(--cf-font-size-325)}.library-page .sd-exercise-actions,.sd-reader .sd-exercise-actions{display:flex;flex-wrap:wrap;gap:var(--cf-space-300);align-items:center;margin-top:var(--cf-space-300)}.library-page .sd-exercise-result,.sd-reader .sd-exercise-result{font-weight:var(--cf-font-weight-semibold)}.library-page .sd-exercise-result.is-right,.sd-reader .sd-exercise-result.is-right{color:var(--cf-color-success)}.library-page .sd-exercise-result.is-wrong,.sd-reader .sd-exercise-result.is-wrong{color:var(--cf-color-danger)}.library-page .sd-references,.sd-reader .sd-references{padding-left:var(--cf-space-500)}.library-page .sd-references li,.sd-reader .sd-references li{margin-bottom:var(--cf-space-150)}.library-page .sd-references span,.sd-reader .sd-references span{color:var(--cf-color-text-secondary)}.library-page .sd-sorter-cards,.sd-reader .sd-sorter-cards{display:grid;grid-gap:var(--cf-space-200);gap:var(--cf-space-200);margin:var(--cf-space-300) 0;padding:0;list-style:none}.library-page .sd-sorter-cards>li,.sd-reader .sd-sorter-cards>li{padding:var(--cf-space-300) var(--cf-space-400);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250);background:var(--cf-color-surface)}.library-page .sd-sorter-cards>li.is-right,.sd-reader .sd-sorter-cards>li.is-right{border-color:var(--cf-color-success-border)}.library-page .sd-sorter-cards>li.is-wrong,.sd-reader .sd-sorter-cards>li.is-wrong{border-color:var(--cf-color-danger-border)}.library-page .sd-sorter-text,.sd-reader .sd-sorter-text{margin:0 0 var(--cf-space-200);color:var(--cf-color-text-strong)}.library-page .sd-sorter-choices,.sd-reader .sd-sorter-choices{display:flex;flex-wrap:wrap;gap:var(--cf-space-150)}.library-page .sd-sorter-why,.sd-reader .sd-sorter-why{margin:var(--cf-space-200) 0 0;color:var(--cf-color-text-secondary);font-size:var(--cf-font-size-325)}.library-page .sd-requirement-lists,.sd-reader .sd-requirement-lists{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--cf-space-400);gap:var(--cf-space-400)}@media(max-width:768px){.library-page .sd-requirement-lists,.sd-reader .sd-requirement-lists{grid-template-columns:1fr}}.library-page .sd-requirements,.sd-reader .sd-requirements{padding:var(--cf-space-400);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250)}.library-page .sd-requirements h3,.sd-reader .sd-requirements h3{margin-top:0;font-size:var(--cf-font-size-350)}.library-page .sd-requirements ul,.sd-reader .sd-requirements ul{display:grid;grid-gap:var(--cf-space-150);gap:var(--cf-space-150);margin:0;padding-left:var(--cf-space-400);color:var(--cf-color-text-secondary);font-size:var(--cf-font-size-325)}.library-page .sd-practice-toggle,.sd-reader .sd-practice-toggle{display:flex;align-items:center;gap:var(--cf-space-300);margin:var(--cf-space-300) 0;padding:var(--cf-space-300) var(--cf-space-400);border:1px solid var(--cf-color-border-control);border-radius:var(--cf-radius-250);background:var(--cf-color-surface);color:var(--cf-color-text);font:inherit;text-align:left;cursor:pointer}.library-page .sd-practice-toggle>span:last-child,.sd-reader .sd-practice-toggle>span:last-child{display:grid}.library-page .sd-practice-toggle>span:last-child span,.sd-reader .sd-practice-toggle>span:last-child span{color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-300)}.library-page .sd-practice-toggle.is-on,.sd-reader .sd-practice-toggle.is-on{border-color:var(--cf-color-secondary-border);background:var(--cf-color-secondary-subtle)}.library-page .sd-practice-switch,.sd-reader .sd-practice-switch{position:relative;flex-shrink:0;width:36px;height:20px;border-radius:var(--cf-radius-full);background:var(--cf-color-border-strong);transition:background var(--cf-duration-fast) var(--cf-ease-standard)}.library-page .sd-practice-switch:after,.sd-reader .sd-practice-switch:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:var(--cf-radius-round);background:var(--cf-color-surface);transition:transform var(--cf-duration-fast) var(--cf-ease-standard)}.library-page .sd-practice-toggle.is-on .sd-practice-switch,.sd-reader .sd-practice-toggle.is-on .sd-practice-switch{background:var(--cf-color-secondary)}.library-page .sd-practice-toggle.is-on .sd-practice-switch:after,.sd-reader .sd-practice-toggle.is-on .sd-practice-switch:after{transform:translateX(16px)}.library-page .sd-practice-gate,.sd-reader .sd-practice-gate{padding:var(--cf-space-500);border:1px dashed var(--cf-color-secondary-border);border-radius:var(--cf-radius-300);background:var(--cf-color-secondary-subtle)}.library-page .sd-practice-gate p,.sd-reader .sd-practice-gate p{margin:0 0 var(--cf-space-200)}.library-page .sd-practice-hint,.sd-reader .sd-practice-hint{color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-325)}.library-page .sd-practice-hide,.sd-reader .sd-practice-hide{margin-bottom:var(--cf-space-300)}.library-page .sd-radio,.sd-reader .sd-radio{display:flex;flex-wrap:wrap;gap:var(--cf-space-200);margin:var(--cf-space-500) 0 0}.library-page .sd-radio a,.sd-reader .sd-radio a{display:inline-flex;align-items:center;gap:var(--cf-space-150);padding:var(--cf-space-100) var(--cf-space-300) var(--cf-space-100) var(--cf-space-100);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-full);color:var(--cf-color-text-secondary);font-size:var(--cf-font-size-325)}.library-page .sd-radio a:hover,.sd-reader .sd-radio a:hover{border-color:var(--cf-color-secondary-border);color:var(--cf-color-text-strong)}.library-page .sd-radio a span,.sd-reader .sd-radio a span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:var(--cf-radius-round);background:var(--cf-color-secondary-subtle);color:var(--cf-color-secondary);font-family:var(--cf-font-mono);font-weight:var(--cf-font-weight-bold)}.library-page .sd-prompt,.sd-reader .sd-prompt{margin:0;padding:var(--cf-space-400) var(--cf-space-500);border-left:3px solid var(--cf-color-secondary);border-radius:0 var(--cf-radius-250) var(--cf-radius-250) 0;background:var(--cf-color-bg-subtle);font-size:var(--cf-font-size-450)}.library-page .sd-prompt p,.sd-reader .sd-prompt p{margin:0 0 var(--cf-space-200)}.library-page .sd-prompt p:last-child,.sd-reader .sd-prompt p:last-child{margin-bottom:0}.library-page .sd-parts,.sd-reader .sd-parts{display:grid;grid-gap:var(--cf-space-200);gap:var(--cf-space-200);margin:var(--cf-space-400) 0 0}.library-page .sd-parts>div,.sd-reader .sd-parts>div{display:grid;grid-template-columns:minmax(150px,220px) 1fr;grid-gap:var(--cf-space-400);gap:var(--cf-space-400);padding:var(--cf-space-250) 0;border-top:1px solid var(--cf-color-border)}@media(max-width:560px){.library-page .sd-parts>div,.sd-reader .sd-parts>div{grid-template-columns:1fr;gap:var(--cf-space-100)}}.library-page .sd-parts dt,.sd-reader .sd-parts dt{color:var(--cf-color-text-strong);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-parts dd,.sd-reader .sd-parts dd{margin:0;color:var(--cf-color-text-secondary)}.library-page .sd-entities,.sd-reader .sd-entities{display:grid;grid-gap:var(--cf-space-400);gap:var(--cf-space-400);margin:var(--cf-space-400) 0}.library-page .sd-entity,.sd-reader .sd-entity{border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250);overflow:hidden}.library-page .sd-entity .sd-table td,.library-page .sd-entity .sd-table th,.sd-reader .sd-entity .sd-table td,.sd-reader .sd-entity .sd-table th{border-top:1px solid var(--cf-color-border)}.library-page .sd-entity-name,.sd-reader .sd-entity-name{margin:0;padding:var(--cf-space-250) var(--cf-space-300);background:var(--cf-color-bg-subtle);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-entity-name span,.sd-reader .sd-entity-name span{color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-300);font-weight:var(--cf-font-weight-regular)}.library-page .sd-endpoints,.sd-reader .sd-endpoints{display:grid;grid-gap:var(--cf-space-300);gap:var(--cf-space-300);margin:var(--cf-space-400) 0}.library-page .sd-endpoint,.sd-reader .sd-endpoint{padding:var(--cf-space-300) var(--cf-space-400);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250)}.library-page .sd-endpoint p,.sd-reader .sd-endpoint p{margin:0 0 var(--cf-space-100);color:var(--cf-color-text-secondary)}.library-page .sd-method,.sd-reader .sd-method{display:inline-block;min-width:56px;padding:0 var(--cf-space-150);border-radius:var(--cf-radius-100);background:var(--cf-color-tertiary-subtle);color:var(--cf-color-tertiary);font:var(--cf-font-size-275)/var(--cf-line-height-180) var(--cf-font-mono);font-weight:var(--cf-font-weight-bold);text-align:center}.library-page .sd-endpoint-io,.sd-reader .sd-endpoint-io{font-size:var(--cf-font-size-300)}.library-page .sd-endpoint-io span,.sd-reader .sd-endpoint-io span{color:var(--cf-color-text-tertiary)}.library-page .sd-deep-dive,.sd-reader .sd-deep-dive{scroll-margin-top:72px}.library-page .sd-check-levels,.sd-reader .sd-check-levels{display:flex;flex-wrap:wrap;gap:var(--cf-space-150);margin-bottom:var(--cf-space-300)}.library-page .sd-check-group,.sd-reader .sd-check-group{margin:0 0 var(--cf-space-400);padding:var(--cf-space-300) var(--cf-space-400);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250)}.library-page .sd-check-group legend,.sd-reader .sd-check-group legend{padding:0 var(--cf-space-150);color:var(--cf-color-text-strong);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-check-group legend span,.sd-reader .sd-check-group legend span{color:var(--cf-color-text-tertiary);font-weight:var(--cf-font-weight-regular)}.library-page .sd-check-item,.sd-reader .sd-check-item{display:flex;align-items:flex-start;gap:var(--cf-space-250);padding:var(--cf-space-150) 0;color:var(--cf-color-text-secondary);cursor:pointer}.library-page .sd-check-item input,.sd-reader .sd-check-item input{margin-top:var(--cf-space-100);accent-color:var(--cf-color-success)}.library-page .sd-steps,.sd-reader .sd-steps{margin:var(--cf-space-500) 0}.library-page .sd-steps .illo-figure,.sd-reader .sd-steps .illo-figure{margin:var(--cf-space-200) 0}.library-page .sd-steps-title,.sd-reader .sd-steps-title{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--cf-space-200);margin:0;color:var(--cf-color-text-strong);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-steps-count,.sd-reader .sd-steps-count{color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-325);font-weight:var(--cf-font-weight-regular)}.library-page .sd-steps-controls,.sd-reader .sd-steps-controls{display:flex;flex-wrap:wrap;gap:var(--cf-space-200)}.library-page .sd-sim,.sd-reader .sd-sim{margin:var(--cf-space-500) 0;padding:var(--cf-space-400);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-300);background:var(--cf-color-bg-subtle)}.library-page .sd-sim .illo-figure,.sd-reader .sd-sim .illo-figure{margin:var(--cf-space-300) 0}.library-page .sd-sim-controls,.sd-reader .sd-sim-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--cf-space-200);color:var(--cf-color-text-secondary);font-size:var(--cf-font-size-325)}.library-page .sd-sim-table,.sd-reader .sd-sim-table{background:var(--cf-color-surface);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-200)}.library-page .sd-sim-input input,.sd-reader .sd-sim-input input{font-size:var(--cf-font-size-400)}.library-page .sd-sim-draw svg,.sd-reader .sd-sim-draw svg{touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.library-page .sd-link-list,.sd-reader .sd-link-list{display:grid;grid-gap:var(--cf-space-200);gap:var(--cf-space-200);margin:var(--cf-space-300) 0;padding:0;list-style:none}.library-page .sd-link-list a,.sd-reader .sd-link-list a{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--cf-space-100) var(--cf-space-300);padding:var(--cf-space-300) var(--cf-space-400);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250);color:var(--cf-color-text-strong)}.library-page .sd-link-list a:hover,.sd-reader .sd-link-list a:hover{border-color:var(--cf-color-border-hover);background:var(--cf-color-surface-hover)}.library-page .sd-link-list a>span:not(.sd-level),.sd-reader .sd-link-list a>span:not(.sd-level){flex-basis:100%;color:var(--cf-color-text-secondary);font-size:var(--cf-font-size-325)}.library-page .sd-pager,.sd-reader .sd-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--cf-space-300);gap:var(--cf-space-300);margin:var(--cf-space-900) 0 var(--cf-space-600)}.library-page .sd-pager a,.sd-reader .sd-pager a{display:grid;grid-gap:var(--cf-space-100);gap:var(--cf-space-100);padding:var(--cf-space-400);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250);color:var(--cf-color-text-strong)}.library-page .sd-pager a:hover,.sd-reader .sd-pager a:hover{border-color:var(--cf-color-border-hover)}.library-page .sd-pager a span,.sd-reader .sd-pager a span{display:inline-flex;align-items:center;gap:var(--cf-space-100);color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-300)}.library-page .sd-pager a.is-next,.sd-reader .sd-pager a.is-next{text-align:right}.library-page .sd-pager a.is-next span,.sd-reader .sd-pager a.is-next span{justify-content:flex-end}.library-page .sd-hero,.sd-reader .sd-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;grid-gap:var(--cf-space-700);gap:var(--cf-space-700)}@media(max-width:1020px){.library-page .sd-hero,.sd-reader .sd-hero{grid-template-columns:minmax(0,1fr)}}.library-page .sd-hero .library-intro,.sd-reader .sd-hero .library-intro{padding-bottom:0}.library-page .sd-hero .illo-figure,.sd-reader .sd-hero .illo-figure{margin:0}.library-page .sd-hero .sd-hero-facts,.sd-reader .sd-hero .sd-hero-facts{color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-300)}.library-page .sd-radio-band>p,.sd-reader .sd-radio-band>p{max-width:720px}.library-page .sd-radio-steps,.sd-reader .sd-radio-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:var(--cf-space-500);gap:var(--cf-space-500);margin:0;padding:0;list-style:none}@media(max-width:1020px){.library-page .sd-radio-steps,.sd-reader .sd-radio-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.library-page .sd-radio-steps,.sd-reader .sd-radio-steps{grid-template-columns:1fr}}.library-page .sd-radio-steps li,.sd-reader .sd-radio-steps li{display:grid;align-content:start;grid-gap:var(--cf-space-100);gap:var(--cf-space-100);padding-top:var(--cf-space-300);border-top:1px solid var(--cf-color-border)}.library-page .sd-radio-steps strong,.sd-reader .sd-radio-steps strong{display:block;color:var(--cf-color-text-strong)}.library-page .sd-radio-steps strong:first-letter,.sd-reader .sd-radio-steps strong:first-letter{color:var(--cf-color-secondary)}.library-page .sd-radio-steps span,.sd-reader .sd-radio-steps span{color:var(--cf-color-text-secondary);font-size:var(--cf-font-size-325)}.library-page .sd-levels,.sd-reader .sd-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--cf-space-600);gap:var(--cf-space-600)}@media(max-width:768px){.library-page .sd-levels,.sd-reader .sd-levels{grid-template-columns:1fr}}.library-page .sd-level-column,.sd-reader .sd-level-column{padding-top:var(--cf-space-300);border-top:2px solid var(--cf-color-border)}.library-page .sd-level-column.is-easy,.sd-reader .sd-level-column.is-easy{border-top-color:var(--cf-color-success-border)}.library-page .sd-level-column.is-medium,.sd-reader .sd-level-column.is-medium{border-top-color:var(--cf-color-warning-border)}.library-page .sd-level-column.is-hard,.sd-reader .sd-level-column.is-hard{border-top-color:var(--cf-color-danger-border)}.library-page .sd-level-column>h3,.sd-reader .sd-level-column>h3{margin:0;font-size:var(--cf-font-size-400)}.library-page .sd-level-column>p,.sd-reader .sd-level-column>p{margin:var(--cf-space-100) 0 0;color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-300)}.library-page .sd-level-column ul,.sd-reader .sd-level-column ul{display:grid;grid-gap:var(--cf-space-150);gap:var(--cf-space-150);margin:var(--cf-space-300) 0 0;padding-left:var(--cf-space-500);font-size:var(--cf-font-size-325)}.library-page .sd-level-column ul .is-soon,.sd-reader .sd-level-column ul .is-soon{color:var(--cf-color-text-tertiary)}.library-page .sd-browser-filters,.sd-reader .sd-browser-filters{display:flex;flex-wrap:wrap;gap:var(--cf-space-300);margin:var(--cf-space-500) 0 var(--cf-space-300)}.library-page .sd-field,.sd-reader .sd-field{display:grid;grid-gap:var(--cf-space-100);gap:var(--cf-space-100);min-width:140px;color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-300)}.library-page .sd-field.is-wide,.sd-reader .sd-field.is-wide{flex:1 1 260px}.library-page .sd-field input,.library-page .sd-field select,.sd-reader .sd-field input,.sd-reader .sd-field select{padding:var(--cf-space-200) var(--cf-space-300);border:1px solid var(--cf-color-border-control);border-radius:var(--cf-radius-200);background:var(--cf-color-surface-input);color:var(--cf-color-text);font:inherit;font-size:var(--cf-font-size-350)}.library-page .sd-browser-count,.sd-reader .sd-browser-count{color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-325)}.library-page .sd-problem-list,.sd-reader .sd-problem-list{display:grid;grid-gap:var(--cf-space-200);gap:var(--cf-space-200);margin:0;padding:0;list-style:none}.library-page .sd-problem-list .is-soon>div,.library-page .sd-problem-list a,.sd-reader .sd-problem-list .is-soon>div,.sd-reader .sd-problem-list a{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;grid-gap:var(--cf-space-400);gap:var(--cf-space-400);padding:var(--cf-space-300) var(--cf-space-400);border:1px solid var(--cf-color-border);border-radius:var(--cf-radius-250);background:var(--cf-color-surface);color:var(--cf-color-text)}.library-page .sd-problem-list .is-soon>div:hover,.library-page .sd-problem-list a:hover,.sd-reader .sd-problem-list .is-soon>div:hover,.sd-reader .sd-problem-list a:hover{border-color:var(--cf-color-border-hover);background:var(--cf-color-surface-hover)}@media(max-width:560px){.library-page .sd-problem-list .is-soon>div,.library-page .sd-problem-list a,.sd-reader .sd-problem-list .is-soon>div,.sd-reader .sd-problem-list a{grid-template-columns:40px minmax(0,1fr)}}.library-page .sd-problem-list .is-done a,.sd-reader .sd-problem-list .is-done a{border-color:var(--cf-color-success-border)}.library-page .sd-problem-list .is-soon>div,.sd-reader .sd-problem-list .is-soon>div{border-style:dashed;background:var(--cf-color-bg-subtle)}.library-page .sd-problem-list .is-soon>div:hover,.sd-reader .sd-problem-list .is-soon>div:hover{border-color:var(--cf-color-border);background:var(--cf-color-bg-subtle)}.library-page .sd-soon,.sd-reader .sd-soon{display:grid;grid-gap:var(--cf-space-300);gap:var(--cf-space-300);margin-top:var(--cf-space-800)}.library-page .sd-soon h2,.sd-reader .sd-soon h2{margin:0;color:var(--cf-color-text-strong);font-size:var(--cf-font-size-500)}.library-page .sd-soon>p,.sd-reader .sd-soon>p{margin:0;color:var(--cf-color-text-secondary)}.library-page .sd-soon-tag,.sd-reader .sd-soon-tag{padding:0 var(--cf-space-200);border:1px dashed var(--cf-color-border-hover);border-radius:var(--cf-radius-full);color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-275);line-height:var(--cf-line-height-180)}.library-page .sd-problem-number,.sd-reader .sd-problem-number{color:var(--cf-color-text-tertiary);font:var(--cf-font-size-325)/var(--cf-line-height-160) var(--cf-font-mono)}.library-page .sd-problem-main,.sd-reader .sd-problem-main{display:grid;grid-gap:var(--cf-space-050);gap:var(--cf-space-050)}.library-page .sd-problem-main strong,.sd-reader .sd-problem-main strong{color:var(--cf-color-text-strong)}.library-page .sd-problem-main>span,.sd-reader .sd-problem-main>span{overflow:hidden;color:var(--cf-color-text-secondary);font-size:var(--cf-font-size-325);text-overflow:ellipsis;white-space:nowrap}.library-page .sd-problem-meta,.sd-reader .sd-problem-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--cf-space-150)}@media(max-width:560px){.library-page .sd-problem-meta,.sd-reader .sd-problem-meta{grid-column:2;justify-content:flex-start}}.library-page .sd-kind,.library-page .sd-problem-progress,.sd-reader .sd-kind,.sd-reader .sd-problem-progress{padding:0 var(--cf-space-200);border-radius:var(--cf-radius-full);background:var(--cf-color-bg-subtle);color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-275);line-height:var(--cf-line-height-180)}.library-page .sd-problem-progress,.sd-reader .sd-problem-progress{background:var(--cf-color-success-subtle);color:var(--cf-color-success);font-weight:var(--cf-font-weight-semibold)}.library-page .sd-empty,.sd-reader .sd-empty{color:var(--cf-color-text-tertiary)}.sd-reader .learning-article .sd-section,.sd-reader .learning-article .sd-section>h2{padding-top:0}.sd-reader .learning-article .sd-section>h2:before{display:none}.sd-reader .sd-guide-heading .sd-level{font-size:var(--cf-font-size-250)}.sd-reader .sd-chapter>h3{font-size:var(--cf-font-size-450)}.sd-reader .sd-bullets{padding-left:var(--cf-space-500);font-size:var(--cf-font-size-400);line-height:var(--cf-line-height-180)}.sd-reader .sd-options{grid-template-columns:minmax(0,1fr)}.sd-reader .sd-option-lists{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--cf-space-400)}.sd-reader .sd-toc.is-narrow{display:none}@media(max-width:1020px){.sd-reader .sd-toc.is-narrow{display:block}}.sd-reader .sd-reader-problems{display:grid;margin-bottom:var(--cf-space-300)}.sd-reader .sd-reader-problems .lesson-sections{margin:0 0 var(--cf-space-300) var(--cf-space-300)}.sd-reader .sd-reader-more{display:inline-flex;gap:var(--cf-space-150);align-items:center;padding:0 var(--cf-space-250);color:var(--cf-color-text-tertiary);font-size:var(--cf-font-size-275)}.sd-reader .sd-reader-more:hover{color:var(--cf-color-primary)}