:root{color-scheme:light;--color-primary: #1d4ed8;--color-primary-hover: #1e40af;--color-secondary: var(--color-text-secondary);--color-accent: #2563eb;--color-primary-soft: #eff6ff;--color-button: var(--color-text-primary);--color-button-hover: #0f172a;--color-admin-primary: #667eea;--color-admin-accent: #764ba2;--color-white: #ffffff;--color-text-primary: #111827;--color-text-secondary: #1f2937;--color-text-muted: #4b5563;--color-text-subtle: #6b7280;--color-text-inverse: var(--color-white);--color-text-admin: #333333;--color-text-admin-muted: #666666;--color-text-admin-heading: #1a1a1a;--color-bg-primary: #f8fafc;--color-bg-surface: var(--color-white);--color-bg-secondary: #f1f5f9;--color-bg-tertiary: #f3f4f6;--color-bg-muted: #f9fafb;--color-bg-admin: #f8f9fa;--color-bg-error: #fff5f5;--color-bg-error-strong: #fef2f2;--color-info-surface: #dbeafe;--color-warning-surface: #fef3c7;--color-success-surface: #d1fae5;--color-success-soft: #ecfdf5;--color-border: #e5e7eb;--color-border-strong: #d1d5db;--color-border-admin: #e9ecef;--color-border-error: #fecaca;--color-success: #15803d;--color-success-text: #166534;--code-keyword: #6d28d9;--code-string: #047857;--code-comment: #5b6b82;--code-number: #b45309;--code-type: #1d4ed8;--code-annotation: #0e7490;--code-function: #0369a1;--code-parameter: #9a3412;--code-operator: #475569;--code-constant: #b45309;--color-warning: #92400e;--color-error: #b91c1c;--color-info: var(--color-accent);--color-error-heading: #991b1b;--font-family-base: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-mono: ui-monospace, "SFMono-Regular", "Cascadia Code", Consolas, monospace;--font-size-xs: .72rem;--font-size-base: 1rem;--font-size-sm: .88rem;--font-size-md: .95rem;--font-size-lg: 1.05rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-hero: clamp(2.5rem, 5vw, 4.25rem);--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 20px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 10px 24px rgba(15, 23, 42, .08);--shadow-lg: 0 10px 25px rgba(17, 24, 39, .15);--shadow-card: 0 1px 3px rgba(0, 0, 0, .08);--shadow-admin-card: 0 2px 4px rgba(0, 0, 0, .05);--shadow-card-hover: 0 4px 12px rgba(0, 0, 0, .12);--focus-ring: 2px solid var(--color-primary);--learn-navy: #172554;--learn-text: #0f172a;--learn-text-muted: #64748b;--learn-label: #475569;--learn-accent: #4f46e5;--learn-accent-text: #4f46e5;--learn-accent-hover: #4338ca;--learn-accent-soft: #eef2ff;--learn-focus: 2px solid var(--learn-accent);--button-primary-bg: #F9AC04;--button-primary-text: #1F2937;--button-primary-border: #E09A03;--button-primary-hover-bg: #E89D03;--button-primary-hover-border: #CC8A02;--button-primary-active-bg: #C98000;--button-primary-active-border: #B37000;--button-primary-disabled-bg: #F3E2BC;--button-primary-disabled-text: #6B5B3A;--button-primary-disabled-border: #E5D3A4;--resource-page-inset-x: var(--space-6);--footer-bg: #352820;--footer-border: #594638;--footer-heading: #FFF8EF;--footer-text: #C5B3A2;--footer-link: #E5D8CB;--footer-accent: #F9AC04;--footer-icon-bg: #352820;--footer-icon-border: #594638;--container-max-width: 1200px;--content-gap: 40px;--reading-font-size: 1rem;--reading-line-height: 1.7;--reading-measure: 100ch;--heading-article: clamp(1.5rem, 2.3vw, 1.95rem);--label-font-size: .8rem;--code-font-size: .9rem;--code-line-height: 1.7;--code-padding: 40px 16px 14px;--code-block-margin: 1.25rem 0;--content-padding: 24px;--section-gap: var(--space-8);--color-background: var(--color-bg-primary);--color-surface: var(--color-bg-surface);--color-surface-alt: var(--color-bg-secondary);--color-surface-hover: var(--color-bg-primary);--background-color: var(--color-bg-primary);--surface-color: var(--color-bg-surface);--surface-muted-color: var(--color-bg-secondary);--text-color: var(--color-text-primary);--muted-text-color: var(--color-text-muted);--border-color: var(--color-border);--primary-color: var(--color-primary);--primary-soft-color: var(--color-primary-soft);--error-color: var(--color-error);--success-color: var(--color-success);--content-max-width: var(--container-max-width)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--color-primary: #7fa8ff;--color-primary-hover: #a3c1ff;--color-accent: #60a5fa;--color-primary-soft: #172a4d;--color-button: #2563eb;--color-button-hover: #1d4ed8;--color-white: #ffffff;--color-text-primary: #e6edf8;--color-text-secondary: #cdd7e6;--color-text-muted: #9fadc4;--color-text-subtle: #8c9ab0;--color-text-admin: #dfe6f1;--color-text-admin-muted: #a7b3c6;--color-text-admin-heading: #f1f5fb;--color-bg-primary: #0b1120;--color-bg-surface: #131c2e;--color-bg-secondary: #1a2540;--color-bg-tertiary: #1e2a45;--color-bg-muted: #111a2b;--color-bg-admin: #101827;--color-bg-error: #3a1d24;--color-bg-error-strong: #431f28;--color-info-surface: #172f57;--color-warning-surface: #3b2e10;--color-success-surface: #123a2a;--color-success-soft: #0f2b20;--color-border: #243049;--color-border-strong: #36456a;--color-border-admin: #2a3650;--color-border-error: #7f2d38;--color-success: #4ade80;--color-success-text: #86efac;--code-keyword: #c4b5fd;--code-string: #6ee7b7;--code-comment: #8c9ab0;--code-number: #fcd34d;--code-type: #93c5fd;--code-annotation: #67e8f9;--code-function: #7dd3fc;--code-parameter: #fdba74;--code-operator: #cbd5e1;--code-constant: #fcd34d;--color-warning: #fbbf24;--color-error: #f87171;--color-error-heading: #fca5a5;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 10px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .5);--shadow-card: 0 1px 3px rgba(0, 0, 0, .4);--shadow-admin-card: 0 2px 4px rgba(0, 0, 0, .35);--shadow-card-hover: 0 6px 16px rgba(0, 0, 0, .5);--learn-navy: #dbe7ff;--learn-text: #e2e8f0;--learn-text-muted: #9fadc4;--learn-label: #b4c0d4;--learn-accent-text: #a5b4fc;--learn-accent-hover: #4338ca;--learn-accent-soft: #1e2a55;--learn-focus: 2px solid var(--learn-accent-text);--button-primary-disabled-bg: #4A3D1E;--button-primary-disabled-text: #D9C8A0;--button-primary-disabled-border: #5C4B26}}@media(max-width:639px){:root{--resource-page-inset-x: var(--space-4)}}:root[data-theme=dark]{color-scheme:dark;--color-primary: #7fa8ff;--color-primary-hover: #a3c1ff;--color-accent: #60a5fa;--color-primary-soft: #172a4d;--color-button: #2563eb;--color-button-hover: #1d4ed8;--color-white: #ffffff;--color-text-primary: #e6edf8;--color-text-secondary: #cdd7e6;--color-text-muted: #9fadc4;--color-text-subtle: #8c9ab0;--color-text-admin: #dfe6f1;--color-text-admin-muted: #a7b3c6;--color-text-admin-heading: #f1f5fb;--color-bg-primary: #0b1120;--color-bg-surface: #131c2e;--color-bg-secondary: #1a2540;--color-bg-tertiary: #1e2a45;--color-bg-muted: #111a2b;--color-bg-admin: #101827;--color-bg-error: #3a1d24;--color-bg-error-strong: #431f28;--color-info-surface: #172f57;--color-warning-surface: #3b2e10;--color-success-surface: #123a2a;--color-success-soft: #0f2b20;--color-border: #243049;--color-border-strong: #36456a;--color-border-admin: #2a3650;--color-border-error: #7f2d38;--color-success: #4ade80;--color-success-text: #86efac;--code-keyword: #c4b5fd;--code-string: #6ee7b7;--code-comment: #8c9ab0;--code-number: #fcd34d;--code-type: #93c5fd;--code-annotation: #67e8f9;--code-function: #7dd3fc;--code-parameter: #fdba74;--code-operator: #cbd5e1;--code-constant: #fcd34d;--color-warning: #fbbf24;--color-error: #f87171;--color-error-heading: #fca5a5;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 10px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .5);--shadow-card: 0 1px 3px rgba(0, 0, 0, .4);--shadow-admin-card: 0 2px 4px rgba(0, 0, 0, .35);--shadow-card-hover: 0 6px 16px rgba(0, 0, 0, .5);--learn-navy: #dbe7ff;--learn-text: #e2e8f0;--learn-text-muted: #9fadc4;--learn-label: #b4c0d4;--learn-accent-text: #a5b4fc;--learn-accent-hover: #4338ca;--learn-accent-soft: #1e2a55;--learn-focus: 2px solid var(--learn-accent-text);--button-primary-disabled-bg: #4A3D1E;--button-primary-disabled-text: #D9C8A0;--button-primary-disabled-border: #5C4B26}*{box-sizing:border-box}html,body{margin:0;padding:0;min-width:320px;font-family:var(--font-family-base);color:var(--color-text-primary);background:var(--color-bg-primary)}body{min-height:100vh;line-height:1.5}img,svg,video,canvas{display:block;max-width:100%}a,button{-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit}.btn-back{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);padding:var(--space-2) 0;text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-2);transition:opacity .2s ease}.btn-back:hover{opacity:.8}.btn-back:active{opacity:.9}.tok-keyword{color:var(--code-keyword);font-weight:600}.tok-string{color:var(--code-string)}.tok-comment{color:var(--code-comment);font-style:italic}.tok-number{color:var(--code-number)}.tok-constant{color:var(--code-constant);font-weight:600}.tok-type{color:var(--code-type)}.tok-function{color:var(--code-function)}.tok-parameter{color:var(--code-parameter)}.tok-annotation{color:var(--code-annotation)}.tok-operator{color:var(--code-operator)}.code-block{position:relative;width:fit-content;max-width:100%;min-width:8rem}.copy-code{position:absolute;top:6px;right:6px;min-height:30px;padding:0 10px;border:1px solid var(--color-border-strong);border-radius:var(--radius-xs);background:var(--color-bg-surface);color:var(--learn-navy);font:inherit;font-size:.78rem;font-weight:600;cursor:pointer}.copy-code:before{content:"";position:absolute;inset:-7px -4px}.copy-code:hover{border-color:var(--learn-navy)}.copy-code:focus-visible{outline:var(--learn-focus);outline-offset:2px}.skip-link{position:absolute;top:-100px;left:16px;z-index:1000;padding:10px 16px;border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-text-primary);font-weight:600;text-decoration:none}.skip-link:focus-visible{top:12px;outline:var(--focus-ring);outline-offset:3px}h1[tabindex="-1"]:focus-visible{outline:var(--focus-ring);outline-offset:4px}.copy-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.markdown{min-width:0;color:var(--color-text-primary);font-size:var(--reading-font-size);line-height:var(--reading-line-height);overflow-wrap:anywhere}.markdown>:is(p,ul,ol,blockquote,h1,h2,h3,h4,h5,h6){max-width:var(--reading-measure)}.markdown p{margin:0 0 1rem}.markdown :is(h1,h2,h3,h4,h5,h6){margin:2.25rem 0 .75rem;color:var(--learn-navy);font-weight:700;line-height:1.3;letter-spacing:-.01em}.markdown>:is(h1,h2,h3,h4,h5,h6):first-child{margin-top:0}.markdown :is(h1,h2){font-size:1.25rem}.markdown h3{font-size:1.3rem}.markdown :is(h4,h5,h6){font-size:1rem}.markdown :is(ul,ol){margin:0 0 1rem;padding-inline-start:1.4rem}.markdown li+li{margin-top:.35rem}.markdown li>:is(ul,ol){margin:.35rem 0 0}.markdown li::marker{color:var(--color-text-subtle)}.markdown strong{color:var(--learn-navy)}.markdown a{color:var(--learn-accent-text);text-underline-offset:2px}.markdown :not(pre)>code{padding:.1em .35em;border:1px solid var(--color-border);border-radius:5px;background:var(--color-bg-secondary);font-family:var(--font-family-mono);font-size:.88em}.markdown blockquote{margin:1.5rem 0;padding:.9rem 1.15rem;border-left:3px solid var(--learn-accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--learn-accent-soft);color:var(--color-text-secondary)}.markdown blockquote p:last-child{margin-bottom:0}.markdown .code-block{margin:var(--code-block-margin)}.markdown pre{max-width:100%;margin:0;padding:var(--code-padding);overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);line-height:var(--code-line-height);tab-size:4}.markdown pre code{display:block;min-width:max-content;color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:var(--code-font-size);line-height:var(--code-line-height);white-space:pre}.markdown table{display:block;max-width:100%;margin:1.25rem 0;overflow-x:auto;border-collapse:collapse;font-size:.92rem}.markdown th,.markdown td{min-width:9rem;padding:10px 14px;border:1px solid var(--color-border);text-align:left;vertical-align:top;white-space:normal}.markdown th{background:var(--color-bg-secondary);color:var(--learn-navy);font-weight:700}.markdown tbody tr:nth-child(2n) td{background:var(--color-bg-muted)}.markdown img{max-width:100%;height:auto}@media(max-width:767px){.copy-code{min-width:44px;min-height:44px}.markdown .code-block pre{padding-top:52px}}.brand-logo{display:block;width:auto}.brand-logo--for-dark{display:none}:root[data-theme=dark] .brand-logo--for-light{display:none}:root[data-theme=dark] .brand-logo--for-dark{display:block}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .brand-logo--for-light{display:none}:root:not([data-theme=light]) .brand-logo--for-dark{display:block}}
