@charset "UTF-8";:root,[data-theme=light]{--bg: var(--neutral-0);--bg-subtle: var(--neutral-50);--bg-muted: var(--neutral-100);--bg-fill: var(--neutral-200);--bg-hover: var(--neutral-100);--bg-active: var(--neutral-200);--surface: var(--neutral-0);--scrim: #18191f73;--border: var(--neutral-200);--border-strong: var(--neutral-300);--border-control: var(--neutral-500);--ink: var(--neutral-900);--ink-muted: var(--neutral-700);--ink-subtle: var(--neutral-600);--ink-disabled: var(--neutral-400);--ink-accent: var(--violet-600);--accent: var(--violet-600);--accent-hover: var(--violet-700);--accent-active: var(--violet-800);--accent-soft: var(--violet-50);--accent-soft-hover: var(--violet-100);--accent-border: var(--violet-300);--on-accent: #ffffff;--focus: var(--violet-600);--success: #0d9958;--success-soft: #e1fae8;--warning: #c08208;--warning-soft: #fff2cc;--danger: #d72d34;--danger-soft: #ffeeec;--info: #0f80c8;--info-soft: #e8f4ff;--ink-success: #056538;--ink-warning: #824c01;--ink-danger: #a72025;--ink-info: #035b91;--danger-hover: #b91121;--on-danger: #ffffff;--code-bg: var(--neutral-900);--code-header: var(--neutral-850);--code-border: var(--neutral-900);--code-line: #ffffff0f;--code-ink: #e7e7ee;--code-ink-muted: #9b9ca9;--code-keyword: var(--violet-300);--code-type: #7fd4e4;--code-function: #ecd58a;--code-string: #93dba9;--code-number: #f4b57a;--code-add-bg: #173724;--code-add-ink: #93dba9;--code-remove-bg: #471c20;--code-remove-ink: #ffa19f;--code-focus: var(--violet-300);--media-bg: var(--neutral-950);--media-scrim: #000000b3;--media-track: #ffffff59;--media-hover: #ffffff26;--on-media: #ffffff;--neutral-0: #ffffff;--neutral-50: #f9f9fc;--neutral-100: #f3f3f7;--neutral-200: #e5e6eb;--neutral-300: #d3d4da;--neutral-400: #a1a2ab;--neutral-500: #8a8b94;--neutral-600: #676871;--neutral-700: #4c4c55;--neutral-800: #2f3037;--neutral-850: #23242a;--neutral-900: #18191f;--neutral-950: #0f0f14;--violet-50: #f6f4ff;--violet-100: #eceaff;--violet-200: #dbd7fe;--violet-300: #c2baff;--violet-400: #a195ff;--violet-500: #705af0;--violet-600: #4f35c8;--violet-700: #3d25a9;--violet-800: #2e1a85;--violet-900: #1f125e;--violet-950: #130e3c;--shadow-md: 0 1px 2px #18191f14, 0 4px 12px #18191f1f;--shadow-lg: 0 2px 4px #18191f14, 0 16px 40px -4px #18191f33;--focus-ring: 0 0 0 2px #ffffff, 0 0 0 4px #4f35c8}[data-theme=dark]{--bg: var(--neutral-950);--bg-subtle: var(--neutral-900);--bg-muted: var(--neutral-850);--bg-fill: var(--neutral-800);--bg-hover: var(--neutral-850);--bg-active: var(--neutral-800);--surface: var(--neutral-900);--scrim: #00000099;--border: var(--neutral-800);--border-strong: var(--neutral-700);--border-control: var(--neutral-500);--ink: var(--neutral-100);--ink-muted: var(--neutral-400);--ink-subtle: var(--neutral-500);--ink-disabled: var(--neutral-600);--ink-accent: var(--violet-400);--accent: #684fe8;--accent-hover: var(--violet-500);--accent-active: var(--violet-600);--accent-soft: #1c1847;--accent-soft-hover: #272061;--accent-border: var(--violet-700);--on-accent: #ffffff;--focus: var(--violet-400);--success: #3bb974;--success-soft: #13311f;--warning: #eab532;--warning-soft: #352808;--danger: #d93539;--danger-soft: #40201d;--info: #2b99e7;--info-soft: #122c41;--ink-success: #72d699;--ink-warning: #f5c761;--ink-danger: #f98f87;--ink-info: #7cc2fd;--danger-hover: #c22029;--on-danger: #ffffff;--code-bg: var(--neutral-900);--code-header: var(--neutral-850);--code-border: var(--neutral-800);--code-line: #ffffff0f;--code-ink: #e7e7ee;--code-ink-muted: #9b9ca9;--code-keyword: var(--violet-300);--code-type: #7fd4e4;--code-function: #ecd58a;--code-string: #93dba9;--code-number: #f4b57a;--code-add-bg: #173724;--code-add-ink: #93dba9;--code-remove-bg: #471c20;--code-remove-ink: #ffa19f;--code-focus: var(--violet-300);--media-bg: var(--neutral-950);--media-scrim: #000000b3;--media-track: #ffffff59;--media-hover: #ffffff26;--on-media: #ffffff;--shadow-md: 0 1px 2px #00000066, 0 6px 16px #00000080;--shadow-lg: 0 16px 40px -4px #000000b3;--focus-ring: 0 0 0 2px #0f0f14, 0 0 0 4px #a195ff}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-24: 96px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--content-max: 1200px;--rail-width: 280px;--measure: 72ch;--gutter: 24px;--gutter-mobile: 16px;--breakpoint-rail: 900px;--topbar-height: 56px;--control-sm: 32px;--control-md: 40px;--icon-sm: 16px;--icon-md: 20px;--target-min: 24px;--z-sticky: 100;--z-dropdown: 1000;--z-modal: 1100;--z-toast: 1200;--font-sans: "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-serif: "Source Serif 4", "Iowan Old Style", Georgia, "Times New Roman", serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-display: 700 40px/48px var(--font-sans);--text-h1: 700 32px/40px var(--font-sans);--text-h2: 700 24px/32px var(--font-sans);--text-h3: 600 20px/28px var(--font-sans);--text-h4: 600 16px/24px var(--font-sans);--text-body: 400 16px/24px var(--font-sans);--text-body-sm: 400 14px/20px var(--font-sans);--text-label: 600 14px/20px var(--font-sans);--text-caption: 500 12px/16px var(--font-sans);--text-overline: 700 12px/16px var(--font-sans);--text-prose-title: 600 40px/48px var(--font-serif);--text-prose-h2: 600 28px/36px var(--font-serif);--text-prose-h3: 600 22px/30px var(--font-serif);--text-prose-lead: 400 21px/1.6 var(--font-serif);--text-prose: 400 18px/1.7 var(--font-serif);--text-prose-sm: 400 16px/1.65 var(--font-serif);--text-code: 400 14px/22px var(--font-mono);--text-code-sm: 400 13px/20px var(--font-mono)}.dk-text-display{font:var(--text-display);letter-spacing:-.02em}.dk-text-h1{font:var(--text-h1);letter-spacing:-.015em}.dk-text-h2{font:var(--text-h2);letter-spacing:-.01em}.dk-text-h3{font:var(--text-h3);letter-spacing:-.005em}.dk-text-h4{font:var(--text-h4)}.dk-text-body{font:var(--text-body)}.dk-text-body-sm{font:var(--text-body-sm)}.dk-text-label{font:var(--text-label)}.dk-text-caption{font:var(--text-caption);letter-spacing:.01em}.dk-text-overline{font:var(--text-overline);letter-spacing:.06em;text-transform:uppercase}.dk-text-prose-title{font:var(--text-prose-title);letter-spacing:-.015em}.dk-text-prose-h2{font:var(--text-prose-h2);letter-spacing:-.01em}.dk-text-prose-h3{font:var(--text-prose-h3)}.dk-text-prose-lead{font:var(--text-prose-lead)}.dk-text-prose{font:var(--text-prose)}.dk-text-prose-sm{font:var(--text-prose-sm)}.dk-text-code{font:var(--text-code);font-variant-ligatures:none}.dk-text-code-sm{font:var(--text-code-sm);font-variant-ligatures:none}@font-face{font-family:Manrope;src:url("./media/Manrope-Variable-73PUZEUA.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap}@font-face{font-family:"Source Serif 4";src:url("./media/SourceSerif4-Variable-CTFEAZ5J.woff2") format("woff2");font-weight:200 900;font-style:normal;font-display:swap}@font-face{font-family:"Source Serif 4";src:url("./media/SourceSerif4-Italic-Variable-KLSHXZEG.woff2") format("woff2");font-weight:200 900;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url("./media/JetBrainsMono-Variable-VBS632QH.woff2") format("woff2");font-weight:100 800;font-style:normal;font-display:swap}:root{--dk-ease: cubic-bezier(.2, 0, 0, 1);--dk-fast: .12s;--dk-base: .2s;color-scheme:light}[data-theme=dark]{color-scheme:dark}body{margin:0;font-family:var(--font-sans);font-size:16px;line-height:24px;font-weight:400;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}:where([class^=dk-],[class*=" dk-"]),:where([class^=dk-],[class*=" dk-"]):before,:where([class^=dk-],[class*=" dk-"]):after{box-sizing:border-box}.dk-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.dk-btn:focus-visible,.dk-btn[data-force~=focus],.dk-link:focus-visible,.dk-checkbox__input:focus-visible,.dk-checkbox__input[data-force~=focus],.dk-weekday:focus-visible,.dk-weekday[data-force~=focus],.dk-page:focus-visible,.dk-breadcrumbs a:focus-visible,.dk-cal__day:focus-visible,.dk-notify__item:focus-visible,.dk-playlist__item:focus-visible,.dk-table__sort:focus-visible,.dk-tabpanel:focus-visible,.dk-prose a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.dk-link{color:var(--ink-accent);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;border-radius:2px;cursor:pointer;background:none;border:0;padding:0;font-size:inherit;font-family:inherit;line-height:inherit}.dk-link:hover{text-decoration-thickness:2px}.dk-icon{display:inline-block;flex:none;width:20px;height:20px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.dk-spinner{display:inline-block;flex:none;width:16px;height:16px;animation:dk-spin .8s linear infinite}.dk-spinner circle{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round}.dk-spinner circle:first-child{opacity:.25}@keyframes dk-spin{to{transform:rotate(360deg)}}.dk-popover{position:absolute;z-index:var(--z-dropdown);top:calc(100% + 6px);left:0;background:var(--surface);color:var(--ink);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.dk-popover--end{left:auto;right:0}.dk-popover--static{position:static;display:inline-block}@media(prefers-reduced-motion:reduce){:where([class^=dk-],[class*=" dk-"]),:where([class^=dk-],[class*=" dk-"]):before,:where([class^=dk-],[class*=" dk-"]):after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.dk-spinner{animation-duration:1.6s!important;animation-iteration-count:infinite!important}}.dk-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--control-md);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--ink);font:600 14px/20px var(--font-sans);letter-spacing:0;text-decoration:none;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background-color var(--dk-fast) var(--dk-ease),border-color var(--dk-fast) var(--dk-ease),color var(--dk-fast) var(--dk-ease)}.dk-btn .dk-icon{width:var(--icon-sm);height:var(--icon-sm)}.dk-btn--sm{height:var(--control-sm);padding:0 var(--space-3);gap:6px}.dk-btn--block{display:flex;width:100%}.dk-btn--icon{width:var(--control-md);padding:0}.dk-btn--icon.dk-btn--sm{width:var(--control-sm)}.dk-btn--icon .dk-icon{width:var(--icon-md);height:var(--icon-md)}.dk-btn--icon.dk-btn--sm .dk-icon{width:var(--icon-sm);height:var(--icon-sm)}.dk-btn--primary{background:var(--accent);color:var(--on-accent)}.dk-btn--primary:hover,.dk-btn--primary[data-force~=hover]{background:var(--accent-hover)}.dk-btn--primary:active,.dk-btn--primary[data-force~=active]{background:var(--accent-active)}.dk-btn--secondary{border-color:var(--border-strong);color:var(--ink)}.dk-btn--secondary:hover,.dk-btn--secondary[data-force~=hover]{background:var(--bg-hover);border-color:var(--border-control)}.dk-btn--secondary:active,.dk-btn--secondary[data-force~=active]{background:var(--bg-active)}.dk-btn--ghost{color:var(--ink)}.dk-btn--ghost:hover,.dk-btn--ghost[data-force~=hover]{background:var(--bg-hover)}.dk-btn--ghost:active,.dk-btn--ghost[data-force~=active]{background:var(--bg-active)}.dk-btn--danger{background:var(--danger);color:var(--on-danger)}.dk-btn--danger:hover,.dk-btn--danger[data-force~=hover],.dk-btn--danger:active,.dk-btn--danger[data-force~=active]{background:var(--danger-hover)}.dk-btn:disabled,.dk-btn[aria-disabled=true]{background:var(--bg-fill);border-color:transparent;color:var(--ink-disabled);cursor:not-allowed}.dk-btn--ghost:disabled,.dk-btn--ghost[aria-disabled=true]{background:transparent}.dk-btn--secondary:disabled,.dk-btn--secondary[aria-disabled=true]{background:transparent;border-color:var(--border)}.dk-btn[aria-busy=true]{pointer-events:none}.dk-btn-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.dk-field{display:flex;flex-direction:column;gap:6px;min-width:0}.dk-field__label{font:600 14px/20px var(--font-sans);color:var(--ink)}.dk-field__opt{margin-left:6px;font-weight:400;color:var(--ink-subtle)}.dk-field__req{margin-left:2px;color:var(--ink-danger)}.dk-field__hint{margin:0;font:400 14px/20px var(--font-sans);color:var(--ink-muted)}.dk-field__error{display:flex;align-items:flex-start;gap:6px;margin:0;font:500 14px/20px var(--font-sans);color:var(--ink-danger)}.dk-field__error .dk-icon{width:16px;height:16px;margin-top:2px}.dk-field__foot{display:flex;justify-content:space-between;gap:var(--space-3)}.dk-field__count{margin-left:auto;font:400 12px/20px var(--font-sans);color:var(--ink-subtle);font-variant-numeric:tabular-nums;white-space:nowrap}.dk-input{display:block;width:100%;min-width:0;height:var(--control-md);margin:0;padding:0 var(--space-3);border:1px solid var(--border-control);border-radius:var(--radius-md);background:var(--bg);color:var(--ink);font:400 16px/24px var(--font-sans);text-align:left;appearance:none;-webkit-appearance:none;transition:border-color var(--dk-fast) var(--dk-ease)}.dk-input::placeholder{color:var(--ink-subtle);opacity:1}.dk-input:hover,.dk-input[data-force~=hover]{border-color:var(--ink-muted)}.dk-input:focus-visible,.dk-input[data-force~=focus]{border-color:var(--focus);outline:2px solid var(--focus);outline-offset:-1px}.dk-input[aria-invalid=true]{border-color:var(--danger)}.dk-input[aria-invalid=true]:focus-visible{outline-color:var(--danger)}.dk-input:disabled{background:var(--bg-subtle);border-color:var(--border-strong);color:var(--ink-disabled);cursor:not-allowed}.dk-input:disabled::placeholder{color:var(--ink-disabled)}.dk-input[readonly]:not(.dk-input--picker){background:var(--bg-subtle);border-color:var(--border-strong)}.dk-input--sm{height:var(--control-sm);padding:0 10px;font-size:14px;line-height:20px}.dk-input--mono{font-family:var(--font-mono);font-size:14px}textarea.dk-input{height:auto;min-height:96px;padding:var(--space-2) var(--space-3);resize:vertical}select.dk-input{padding-right:40px;cursor:pointer;text-overflow:ellipsis}select.dk-input:disabled{cursor:not-allowed}select.dk-input--sm{padding-right:32px}.dk-input-wrap{position:relative;display:flex;align-items:center;min-width:0}.dk-input-wrap>.dk-input{flex:1}.dk-input-wrap--lead>.dk-input{padding-left:40px}.dk-input-wrap--lead>.dk-input--sm{padding-left:32px}.dk-input-wrap--trail>.dk-input{padding-right:40px}.dk-input-wrap__lead,.dk-input-wrap__trail{position:absolute;top:50%;transform:translateY(-50%);display:inline-flex;color:var(--ink-subtle)}.dk-input-wrap__lead{left:12px;pointer-events:none}.dk-input-wrap__trail{right:12px;pointer-events:none}.dk-input-wrap__lead .dk-icon,.dk-input-wrap__trail .dk-icon{width:16px;height:16px}.dk-input-wrap__trail--btn{right:4px;pointer-events:auto}.dk-input-wrap__trail--btn .dk-btn{width:32px;height:32px;color:var(--ink-muted)}.dk-input--sm~.dk-input-wrap__lead{left:10px}.dk-input--sm~.dk-input-wrap__trail{right:10px}.dk-checkbox{display:inline-flex;align-items:flex-start;gap:10px;font:400 16px/24px var(--font-sans);color:var(--ink);cursor:pointer}.dk-checkbox__input{appearance:none;-webkit-appearance:none;flex:none;position:relative;width:20px;height:20px;margin:2px 0;border:1px solid var(--border-control);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;transition:background-color var(--dk-fast) var(--dk-ease),border-color var(--dk-fast) var(--dk-ease)}.dk-checkbox__input:after{content:"";position:absolute;inset:0;background:var(--on-accent);opacity:0;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 14px 14px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 14px 14px no-repeat}.dk-checkbox__input:indeterminate:after{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 12h12'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 12h12'/%3E%3C/svg%3E")}.dk-checkbox__input:hover,.dk-checkbox__input[data-force~=hover]{border-color:var(--ink-muted)}.dk-checkbox__input:checked,.dk-checkbox__input:indeterminate{background:var(--accent);border-color:var(--accent)}.dk-checkbox__input:checked:after,.dk-checkbox__input:indeterminate:after{opacity:1}.dk-checkbox__input:checked:hover,.dk-checkbox__input:indeterminate:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.dk-checkbox__input:disabled{background:var(--bg-fill);border-color:var(--border-strong);cursor:not-allowed}.dk-checkbox__input:disabled:after{background:var(--ink-disabled)}.dk-checkbox__input:disabled:checked,.dk-checkbox__input:disabled:indeterminate{background:var(--bg-fill);border-color:var(--border-strong)}.dk-checkbox__input[aria-invalid=true]{border-color:var(--danger)}.dk-checkbox__text{display:flex;flex-direction:column;min-width:0}.dk-checkbox__desc{font:400 14px/20px var(--font-sans);color:var(--ink-muted)}.dk-checkbox:has(.dk-checkbox__input:disabled){color:var(--ink-disabled);cursor:not-allowed}.dk-checkbox:has(.dk-checkbox__input:disabled) .dk-checkbox__desc{color:var(--ink-disabled)}.dk-weekdays{display:inline-flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;border:0}.dk-weekday{display:inline-grid;place-items:center;width:var(--control-md);height:var(--control-md);padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:transparent;color:var(--ink);font:600 14px/20px var(--font-sans);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--dk-fast) var(--dk-ease),border-color var(--dk-fast) var(--dk-ease),color var(--dk-fast) var(--dk-ease)}.dk-weekday:hover,.dk-weekday[data-force~=hover]{background:var(--bg-hover);border-color:var(--border-control)}.dk-weekday[aria-pressed=true],.dk-weekday[data-on=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.dk-weekday[aria-pressed=true]:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.dk-weekday:disabled{background:transparent;border-color:var(--border);color:var(--ink-disabled);cursor:not-allowed}.dk-weekday:disabled[aria-pressed=true]{background:var(--bg-fill);border-color:transparent;color:var(--ink-disabled)}.dk-weekdays--sm .dk-weekday{width:var(--control-sm);height:var(--control-sm);font-size:12px;line-height:16px}.dk-weekdays--readonly{gap:4px}.dk-weekdays--readonly .dk-weekday{width:28px;height:24px;border-color:transparent;color:var(--ink-subtle);font-size:12px;line-height:16px;font-weight:500;cursor:default}.dk-weekdays--readonly .dk-weekday:hover{background:transparent;border-color:transparent}.dk-weekdays--readonly .dk-weekday[data-on=true]{background:var(--accent-soft);border-color:transparent;color:var(--ink-accent);font-weight:700}.dk-datepicker{position:relative;display:block}.dk-cal{width:296px;padding:var(--space-3);border-radius:var(--radius-xl)}.dk-cal__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:0 0 var(--space-2) var(--space-2)}.dk-cal__title{font:600 14px/20px var(--font-sans);color:var(--ink)}.dk-cal__nav{display:flex;gap:2px}.dk-cal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dk-cal__dow{display:grid;place-items:center;height:28px;font:500 12px/16px var(--font-sans);color:var(--ink-subtle)}.dk-cal__day{display:grid;place-items:center;width:100%;aspect-ratio:1;padding:0;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--ink);font:500 14px/20px var(--font-sans);font-variant-numeric:tabular-nums;cursor:pointer}.dk-cal__day:hover{background:var(--bg-hover)}.dk-cal__day[data-outside=true]{color:var(--ink-subtle)}.dk-cal__day[data-today=true]{border-color:var(--border-control);font-weight:700}.dk-cal__day[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.dk-cal__day:disabled{color:var(--ink-disabled);cursor:not-allowed;background:transparent}.dk-cal__foot{display:flex;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border)}.dk-datetime{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:var(--space-2);align-items:start}.dk-dropzone{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-8) var(--space-6);text-align:center;border:1.5px dashed var(--border-control);border-radius:var(--radius-lg);background:var(--bg);transition:background-color var(--dk-fast) var(--dk-ease),border-color var(--dk-fast) var(--dk-ease)}.dk-dropzone:hover,.dk-dropzone[data-force~=hover]{border-color:var(--ink-muted);background:var(--bg-subtle)}.dk-dropzone[data-drag=true]{border-style:solid;border-color:var(--accent);background:var(--accent-soft)}.dk-dropzone[aria-invalid=true]{border-color:var(--danger)}.dk-dropzone[aria-disabled=true]{border-color:var(--border-strong);background:var(--bg-subtle);color:var(--ink-disabled)}.dk-dropzone__icon{width:32px;height:32px;margin-bottom:var(--space-2);color:var(--ink-subtle);stroke-width:1.5}.dk-dropzone[data-drag=true] .dk-dropzone__icon{color:var(--ink-accent)}.dk-dropzone__title{margin:0;font:600 16px/24px var(--font-sans);color:var(--ink)}.dk-dropzone__hint{margin:0;font:400 14px/20px var(--font-sans);color:var(--ink-muted)}.dk-dropzone__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);margin-top:var(--space-4)}.dk-dropzone[aria-disabled=true] .dk-dropzone__title,.dk-dropzone[aria-disabled=true] .dk-dropzone__hint,.dk-dropzone[aria-disabled=true] .dk-dropzone__icon{color:var(--ink-disabled)}.dk-filelist{list-style:none;margin:var(--space-3) 0 0;padding:0;border-top:1px solid var(--border)}.dk-file{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-3);padding:10px 0;border-bottom:1px solid var(--border)}.dk-file__icon{width:20px;height:20px;color:var(--ink-subtle)}.dk-file__main{min-width:0;display:flex;flex-direction:column;gap:2px}.dk-file__name{font:500 13px/20px var(--font-mono);font-variant-ligatures:none;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dk-file__meta{display:flex;align-items:center;gap:6px;font:400 12px/16px var(--font-sans);color:var(--ink-subtle);font-variant-numeric:tabular-nums}.dk-file__meta .dk-icon{width:14px;height:14px}.dk-file[data-state=error] .dk-file__meta{color:var(--ink-danger);font-weight:500}.dk-file[data-state=done] .dk-file__meta .dk-icon{color:var(--ink-success)}.dk-file__bar{height:4px;margin-top:4px;border-radius:var(--radius-full);background:var(--bg-fill);overflow:hidden}.dk-file__bar>span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width var(--dk-base) var(--dk-ease)}.dk-tabs{--dk-tab-pad: 6px;--dk-tabs-gap: var(--space-6);display:flex;gap:calc(var(--dk-tabs-gap) - 2 * var(--dk-tab-pad));margin:0 calc(-1 * var(--dk-tab-pad));padding:0;background:linear-gradient(var(--border),var(--border)) var(--dk-tab-pad) 100% / calc(100% - 2 * var(--dk-tab-pad)) 1px no-repeat;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.dk-tabs::-webkit-scrollbar{display:none}.dk-tab{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);flex:none;height:44px;padding:0 var(--dk-tab-pad);border:0;background:none;color:var(--ink-muted);font:600 14px/20px var(--font-sans);white-space:nowrap;cursor:pointer;transition:color var(--dk-fast) var(--dk-ease)}.dk-tab .dk-icon{width:16px;height:16px}.dk-tab:hover,.dk-tab[data-force~=hover],.dk-tab[aria-selected=true]{color:var(--ink)}.dk-tab[aria-selected=true]:after{content:"";position:absolute;left:var(--dk-tab-pad);right:var(--dk-tab-pad);bottom:0;height:2px;border-radius:2px 2px 0 0;background:var(--accent)}.dk-tab:disabled{color:var(--ink-disabled);cursor:not-allowed}.dk-tab:focus-visible,.dk-tab[data-force~=focus]{outline:2px solid var(--focus);outline-offset:-2px;border-radius:var(--radius-sm)}.dk-tab__count{min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-full);background:var(--bg-muted);color:var(--ink-muted);font:600 12px/20px var(--font-sans);text-align:center;font-variant-numeric:tabular-nums}.dk-tab[aria-selected=true] .dk-tab__count{background:var(--accent-soft);color:var(--ink-accent)}.dk-tabpanel{padding-top:var(--space-6);border-radius:var(--radius-sm)}.dk-breadcrumbs{container-type:inline-size;font:400 14px/20px var(--font-sans)}.dk-breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:2px;margin:0;padding:0;list-style:none}.dk-breadcrumbs li{display:inline-flex;align-items:center;gap:2px;min-width:0;color:var(--ink-muted)}.dk-breadcrumbs a{padding:2px 4px;border-radius:var(--radius-sm);color:var(--ink-muted);text-decoration:none}.dk-breadcrumbs a:hover{background:var(--bg-hover);color:var(--ink)}.dk-breadcrumbs [aria-current=page]{padding:2px 4px;color:var(--ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dk-breadcrumbs__sep{width:14px;height:14px;color:var(--ink-subtle)}.dk-breadcrumbs__back{display:none;width:16px;height:16px}@container (max-width: 480px){.dk-breadcrumbs li{display:none}.dk-breadcrumbs li:nth-last-child(2){display:inline-flex}.dk-breadcrumbs li:nth-last-child(2) .dk-breadcrumbs__sep{display:none}.dk-breadcrumbs li:nth-last-child(2) .dk-breadcrumbs__back{display:inline-block}.dk-breadcrumbs li:nth-last-child(2) a{display:inline-flex;align-items:center;gap:4px;padding-left:0;font-weight:600}}.dk-pagination{container-type:inline-size}.dk-pagination__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);font:400 14px/20px var(--font-sans);color:var(--ink-muted);font-variant-numeric:tabular-nums}.dk-pagination__pages{display:flex;align-items:center;gap:2px;margin:0;padding:0;list-style:none}.dk-page{display:inline-grid;place-items:center;min-width:var(--control-sm);height:var(--control-sm);padding:0 var(--space-2);border:0;border-radius:var(--radius-md);background:none;color:var(--ink-muted);font:600 14px/20px var(--font-sans);font-variant-numeric:tabular-nums;cursor:pointer}.dk-page:hover{background:var(--bg-hover);color:var(--ink)}.dk-page[aria-current=page]{background:var(--accent-soft);color:var(--ink-accent)}.dk-page[aria-current=page]:hover{background:var(--accent-soft-hover);color:var(--ink-accent)}.dk-page:disabled{color:var(--ink-disabled);background:none;cursor:not-allowed}.dk-page .dk-icon{width:16px;height:16px}.dk-page--gap{cursor:default;color:var(--ink-subtle)}.dk-page--gap:hover{background:none;color:var(--ink-subtle)}.dk-pagination__compact{display:none;padding:0 var(--space-2);color:var(--ink);font-weight:600}@container (max-width: 520px){.dk-pagination__pages .dk-page--num,.dk-pagination__pages .dk-page--gap{display:none}.dk-pagination__compact{display:inline}}.dk-badge{display:inline-flex;align-items:center;gap:var(--space-1);height:22px;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-muted);color:var(--ink-muted);font:600 12px/16px var(--font-sans);letter-spacing:.01em;white-space:nowrap;vertical-align:middle}.dk-badge .dk-icon,.dk-badge .dk-spinner{width:14px;height:14px;margin-left:-2px}.dk-badge--success{border-color:transparent;background:var(--success-soft);color:var(--ink-success)}.dk-badge--warning{border-color:transparent;background:var(--warning-soft);color:var(--ink-warning)}.dk-badge--danger{border-color:transparent;background:var(--danger-soft);color:var(--ink-danger)}.dk-badge--info{border-color:transparent;background:var(--info-soft);color:var(--ink-info)}.dk-badge--accent{border-color:transparent;background:var(--accent-soft);color:var(--ink-accent)}.dk-badge--dot{height:auto;padding:0;gap:var(--space-2);border:0;background:none;color:var(--ink);font:500 14px/20px var(--font-sans);letter-spacing:0}.dk-badge__dot{flex:none;width:8px;height:8px;border-radius:var(--radius-full);background:var(--ink-subtle)}.dk-badge--success .dk-badge__dot{background:var(--success)}.dk-badge--warning .dk-badge__dot{background:var(--warning)}.dk-badge--danger .dk-badge__dot{background:var(--danger)}.dk-badge--info .dk-badge__dot{background:var(--info)}.dk-badge--accent .dk-badge__dot{background:var(--accent)}.dk-progress{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.dk-progress__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);font:500 14px/20px var(--font-sans);color:var(--ink)}.dk-progress__value{color:var(--ink-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.dk-progress__track{height:6px;border-radius:var(--radius-full);background:var(--bg-fill);overflow:hidden}.dk-progress__bar{height:100%;min-width:6px;border-radius:inherit;background:var(--accent);transition:width var(--dk-base) var(--dk-ease)}.dk-progress__bar[data-empty=true]{min-width:0}.dk-progress--sm .dk-progress__track{height:4px}.dk-progress--success .dk-progress__bar{background:var(--success)}.dk-progress--indeterminate .dk-progress__bar{width:40%;animation:dk-indeterminate 1.4s var(--dk-ease) infinite}@keyframes dk-indeterminate{0%{transform:translate(-110%)}to{transform:translate(260%)}}.dk-ring{position:relative;display:inline-grid;place-items:center;flex:none;width:40px;height:40px}.dk-ring>svg{grid-area:1 / 1;width:100%;height:100%;transform:rotate(-90deg)}.dk-ring__track{fill:none;stroke:var(--bg-fill)}.dk-ring__bar{fill:none;stroke:var(--accent);stroke-linecap:round;transition:stroke-dashoffset var(--dk-base) var(--dk-ease)}.dk-ring--success .dk-ring__bar{stroke:var(--success)}.dk-ring__label{grid-area:1 / 1;font:700 12px/16px var(--font-sans);color:var(--ink);font-variant-numeric:tabular-nums}.dk-ring__label .dk-icon{width:16px;height:16px;color:var(--ink-success);stroke-width:2.5}.dk-ring--sm{width:24px;height:24px}.dk-ring--lg{width:72px;height:72px}.dk-ring--lg .dk-ring__label{font-size:20px;line-height:28px}.dk-ring--lg .dk-ring__label .dk-icon{width:28px;height:28px}.dk-skeleton{position:relative;display:block;height:12px;border-radius:var(--radius-sm);background:var(--bg-fill);overflow:hidden}.dk-skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,var(--bg-muted),transparent);animation:dk-shimmer 1.6s ease-in-out infinite}@keyframes dk-shimmer{to{transform:translate(100%)}}.dk-skeleton--title{height:20px}.dk-skeleton--circle{border-radius:var(--radius-full)}.dk-skeleton--block{border-radius:var(--radius-lg)}.dk-skeleton-stack{display:flex;flex-direction:column;gap:var(--space-3)}.dk-skeleton-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border)}.dk-empty{display:flex;flex-direction:column;align-items:center;max-width:440px;margin:0 auto;padding:var(--space-12) var(--space-6);text-align:center}.dk-empty__icon{width:40px;height:40px;margin-bottom:var(--space-4);color:var(--ink-subtle);stroke-width:1.5}.dk-empty--danger .dk-empty__icon{color:var(--ink-danger)}.dk-empty--success .dk-empty__icon{color:var(--ink-success)}.dk-empty__title{margin:0;font:600 20px/28px var(--font-sans);letter-spacing:-.005em;color:var(--ink)}.dk-empty__desc{margin:var(--space-2) 0 0;font:400 16px/24px var(--font-sans);color:var(--ink-muted)}.dk-empty__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);margin-top:var(--space-6)}.dk-empty--start{align-items:flex-start;margin:0;padding-left:0;padding-right:0;text-align:left}.dk-empty--start .dk-empty__actions{justify-content:flex-start}.dk-empty--sm{padding:var(--space-8) var(--space-4)}.dk-empty--sm .dk-empty__icon{width:32px;height:32px;margin-bottom:var(--space-3)}.dk-empty--sm .dk-empty__title{font-size:16px;line-height:24px}.dk-empty--sm .dk-empty__desc{font-size:14px;line-height:20px}.dk-toast{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:var(--space-3);width:min(400px,100%);padding:var(--space-3) var(--space-2) var(--space-3) var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-md)}.dk-toast__icon{width:20px;height:20px;margin-top:2px;color:var(--ink-muted)}.dk-toast--success .dk-toast__icon{color:var(--ink-success)}.dk-toast--warning .dk-toast__icon{color:var(--ink-warning)}.dk-toast--danger .dk-toast__icon{color:var(--ink-danger)}.dk-toast--info .dk-toast__icon{color:var(--ink-info)}.dk-toast__body{min-width:0;padding:2px 0}.dk-toast__title{margin:0;font:600 14px/20px var(--font-sans)}.dk-toast__desc{margin:2px 0 0;font:400 14px/20px var(--font-sans);color:var(--ink-muted)}.dk-toast__action{margin-top:var(--space-2);font-size:14px;line-height:20px}.dk-toast__close{width:28px;height:28px;color:var(--ink-muted)}.dk-toast-region{position:fixed;z-index:var(--z-toast);right:var(--space-6);bottom:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2);width:min(400px,calc(100vw - 2 * var(--gutter-mobile)))}@media(max-width:480px){.dk-toast-region{right:var(--gutter-mobile);bottom:var(--gutter-mobile)}}.dk-bell{position:relative;display:inline-flex}.dk-bell__count{position:absolute;top:0;right:0;min-width:20px;height:20px;padding:0 5px;border-radius:var(--radius-full);background:var(--accent);color:var(--on-accent);font:700 12px/20px var(--font-sans);text-align:center;font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px var(--bg);pointer-events:none;transform:translate(30%,-20%)}.dk-notify{width:360px;max-width:calc(100vw - 2 * var(--gutter-mobile));overflow:hidden}.dk-notify__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.dk-notify__title{margin:0;font:600 16px/24px var(--font-sans)}.dk-notify__head .dk-link{font-size:14px;line-height:20px}.dk-notify__list{list-style:none;margin:0;padding:0;max-height:360px;overflow:auto}.dk-notify__item{display:grid;grid-template-columns:8px minmax(0,1fr);gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:0;border-bottom:1px solid var(--border);background:none;color:var(--ink);text-align:left;text-decoration:none;cursor:pointer;font:400 14px/20px var(--font-sans)}.dk-notify__item:hover{background:var(--bg-hover)}.dk-notify__item:focus-visible{outline-offset:-2px}.dk-notify__dot{width:8px;height:8px;margin-top:6px;border-radius:var(--radius-full);background:transparent}.dk-notify__item[data-unread=true] .dk-notify__dot{background:var(--accent)}.dk-notify__text{display:block;color:var(--ink-muted)}.dk-notify__item[data-unread=true] .dk-notify__text{color:var(--ink);font-weight:600}.dk-notify__time{display:block;margin-top:2px;font:400 12px/16px var(--font-sans);color:var(--ink-subtle)}.dk-notify__foot{display:flex;justify-content:center;padding:var(--space-3) var(--space-4);font-size:14px;line-height:20px}.dk-avatar{display:inline-grid;place-items:center;flex:none;width:32px;height:32px;overflow:hidden;border-radius:var(--radius-full);background:var(--bg-fill);color:var(--ink-muted);font:600 12px/1 var(--font-sans);letter-spacing:.02em;text-transform:uppercase;-webkit-user-select:none;user-select:none;vertical-align:middle}.dk-avatar img{width:100%;height:100%;object-fit:cover}.dk-avatar--xs{width:24px;height:24px;font-size:12px;letter-spacing:0}.dk-avatar--md{width:40px;height:40px;font-size:14px}.dk-avatar--lg{width:56px;height:56px;font-size:20px}.dk-person{display:inline-flex;align-items:center;gap:10px;min-width:0}.dk-person__text{display:flex;flex-direction:column;min-width:0}.dk-person__name{font:600 14px/20px var(--font-sans);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dk-person__meta{font:400 12px/16px var(--font-sans);color:var(--ink-subtle);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dk-table-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.dk-table-toolbar__search{flex:1 1 220px;max-width:320px}.dk-table-toolbar__filters{display:flex;flex-wrap:wrap;gap:var(--space-2)}.dk-table-toolbar__filters .dk-input-wrap{width:180px}.dk-table-toolbar__end{margin-left:auto;font:400 14px/20px var(--font-sans);color:var(--ink-muted);font-variant-numeric:tabular-nums}.dk-table-wrap{container-type:inline-size;overflow-x:auto}.dk-table-wrap:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.dk-table{width:100%;border-collapse:collapse;font:400 14px/20px var(--font-sans);color:var(--ink);font-variant-numeric:tabular-nums}.dk-table caption{caption-side:top;padding:0 0 var(--space-3);text-align:left;font:600 16px/24px var(--font-sans);color:var(--ink)}.dk-table th{padding:10px var(--space-3);border-bottom:1px solid var(--border-strong);text-align:left;vertical-align:bottom;white-space:nowrap;font:600 12px/16px var(--font-sans);letter-spacing:.02em;color:var(--ink-muted)}.dk-table td{padding:var(--space-3);border-bottom:1px solid var(--border);vertical-align:middle}.dk-table th:first-child,.dk-table td:first-child{padding-left:var(--space-2)}.dk-table th:last-child,.dk-table td:last-child{padding-right:var(--space-2)}.dk-table__num{text-align:right!important;white-space:nowrap}.dk-table__muted{color:var(--ink-muted)}.dk-table--hover tbody tr:hover{background:var(--bg-hover)}.dk-table tbody tr[aria-selected=true]{background:var(--accent-soft)}.dk-table--hover tbody tr[aria-selected=true]:hover{background:var(--accent-soft-hover)}.dk-table__sort{display:inline-flex;align-items:center;gap:var(--space-1);margin:-4px -6px;padding:4px 6px;border:0;border-radius:var(--radius-sm);background:none;color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer}.dk-table__sort:hover{color:var(--ink);background:var(--bg-hover)}.dk-table__sort .dk-icon{width:14px;height:14px;color:var(--ink-subtle)}.dk-table th[aria-sort=ascending] .dk-table__sort,.dk-table th[aria-sort=descending] .dk-table__sort{color:var(--ink)}.dk-table th[aria-sort=ascending] .dk-table__sort .dk-icon,.dk-table th[aria-sort=descending] .dk-table__sort .dk-icon{color:var(--ink-accent)}.dk-table__state td{padding:0;border-bottom:0}@container (max-width: 640px){.dk-table:not(.dk-table--stack){min-width:var(--dk-table-min, 640px)}.dk-table--stack,.dk-table--stack tbody,.dk-table--stack tr,.dk-table--stack td{display:block}.dk-table--stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.dk-table--stack tbody tr{padding:var(--space-3) 0;border-bottom:1px solid var(--border)}.dk-table--stack td{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:4px var(--space-2)!important;border:0;text-align:right}.dk-table--stack td:before{content:attr(data-label);flex:none;color:var(--ink-muted);font-weight:500;text-align:left}.dk-table--stack td[data-primary=true]{display:block;padding-bottom:var(--space-2)!important;text-align:left;font-size:16px;line-height:24px;font-weight:600}.dk-table--stack td[data-primary=true]:before{content:none}.dk-table--stack .dk-table__state td{display:block}.dk-table--stack .dk-table__state td:before{content:none}}.dk-modal-scrim{position:fixed;inset:0;z-index:var(--z-modal);display:grid;place-items:center;padding:var(--space-6);overflow:auto;background:var(--scrim)}.dk-modal-scrim--inline{position:relative;inset:auto;z-index:0;min-height:360px;border-radius:var(--radius-lg)}.dk-modal{display:flex;flex-direction:column;width:min(480px,100%);max-height:100%;border:1px solid var(--border-strong);border-radius:var(--radius-xl);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-lg)}.dk-modal--sm{width:min(400px,100%)}.dk-modal--lg{width:min(640px,100%)}.dk-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-6) var(--space-6) 0}.dk-modal__title{margin:0;font:600 20px/28px var(--font-sans);letter-spacing:-.005em}.dk-modal__close{margin:-6px -10px 0 0;color:var(--ink-muted)}.dk-modal__body{padding:var(--space-2) var(--space-6) var(--space-6);overflow:auto;font:400 16px/24px var(--font-sans);color:var(--ink-muted)}.dk-modal__body>:first-child{margin-top:0}.dk-modal__body>:last-child{margin-bottom:0}.dk-modal__foot{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-3);padding:0 var(--space-6) var(--space-6)}@media(max-width:480px){.dk-modal-scrim:not(.dk-modal-scrim--inline){place-items:end center;padding:0}.dk-modal-scrim:not(.dk-modal-scrim--inline) .dk-modal{width:100%;border-width:1px 0 0;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.dk-modal__foot{flex-direction:column-reverse}.dk-modal__foot .dk-btn{width:100%}}.dk-modal-scrim--sheet{place-items:end center;padding:0}.dk-modal-scrim--sheet .dk-modal{width:100%;border-width:1px 0 0;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.dk-modal-scrim--sheet .dk-modal__foot{flex-direction:column-reverse}.dk-modal-scrim--sheet .dk-modal__foot .dk-btn{width:100%}.dk-prose{container-type:inline-size;max-width:var(--measure);font:400 18px/1.7 var(--font-serif);font-optical-sizing:auto;color:var(--ink);overflow-wrap:break-word}.dk-prose>:first-child{margin-top:0}.dk-prose>:last-child{margin-bottom:0}.dk-prose p{margin:0 0 1.15em}.dk-prose h1{margin:0 0 var(--space-4);font:600 40px/48px var(--font-serif);letter-spacing:-.015em;text-wrap:balance}.dk-prose h2{margin:var(--space-12) 0 var(--space-4);font:600 28px/36px var(--font-serif);letter-spacing:-.01em;text-wrap:balance}.dk-prose h3{margin:var(--space-10) 0 var(--space-3);font:600 22px/30px var(--font-serif);text-wrap:balance}.dk-prose h4{margin:var(--space-8) 0 var(--space-2);font:600 18px/28px var(--font-serif)}.dk-prose .dk-prose__lead{font-size:21px;line-height:1.6;color:var(--ink-muted)}.dk-prose a{color:var(--ink-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;border-radius:2px}.dk-prose a:hover{text-decoration-thickness:2px}.dk-prose strong{font-weight:650}.dk-prose ul,.dk-prose ol{margin:0 0 1.15em;padding-left:1.4em}.dk-prose li{padding-left:.2em}.dk-prose li+li{margin-top:.4em}.dk-prose li::marker{color:var(--ink-subtle);font-family:var(--font-sans);font-size:.85em;font-weight:600}.dk-prose li>ul,.dk-prose li>ol{margin:.4em 0 0}.dk-prose blockquote{margin:0 0 1.15em;padding-left:var(--space-6);border-left:2px solid var(--border-strong);color:var(--ink-muted);font-style:italic}.dk-prose blockquote>:last-child{margin-bottom:0}.dk-prose :not(pre)>code{padding:.12em .36em;border-radius:var(--radius-sm);background:var(--bg-muted);font:400 .84em/1 var(--font-mono);font-variant-ligatures:none;color:var(--ink)}.dk-prose kbd{padding:1px 6px;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:var(--radius-sm);background:var(--bg-subtle);font:500 .75em/1.4 var(--font-mono);font-variant-ligatures:none;color:var(--ink)}.dk-prose hr{margin:var(--space-12) 0;border:0;border-top:1px solid var(--border)}.dk-prose img{display:block;max-width:100%;height:auto;border-radius:var(--radius-lg)}.dk-prose figure{margin:var(--space-8) 0}.dk-prose figcaption{margin-top:var(--space-2);font-size:16px;line-height:1.65;color:var(--ink-muted)}.dk-prose .dk-code,.dk-prose .dk-video{margin:var(--space-6) 0 var(--space-8)}.dk-prose__table{margin:var(--space-6) 0 var(--space-8);overflow-x:auto}.dk-prose table{width:100%;border-collapse:collapse;font:400 16px/24px var(--font-sans);font-variant-numeric:tabular-nums}.dk-prose th{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-strong);text-align:left;font:600 12px/16px var(--font-sans);letter-spacing:.02em;color:var(--ink-muted);white-space:nowrap}.dk-prose td{padding:10px var(--space-3);border-bottom:1px solid var(--border);vertical-align:top}.dk-prose th:first-child,.dk-prose td:first-child{padding-left:0}.dk-callout{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);margin:var(--space-6) 0 var(--space-8);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--bg-subtle);font-size:16px;line-height:1.65}.dk-callout>.dk-icon{margin-top:3px;color:var(--ink-muted)}.dk-callout__title{display:block;margin-bottom:2px;font:600 14px/20px var(--font-sans);color:var(--ink)}.dk-callout p{margin:0}.dk-callout p+p{margin-top:.6em}.dk-callout--info{background:var(--info-soft)}.dk-callout--info>.dk-icon,.dk-callout--info .dk-callout__title{color:var(--ink-info)}.dk-callout--success{background:var(--success-soft)}.dk-callout--success>.dk-icon,.dk-callout--success .dk-callout__title{color:var(--ink-success)}.dk-callout--warning{background:var(--warning-soft)}.dk-callout--warning>.dk-icon,.dk-callout--warning .dk-callout__title{color:var(--ink-warning)}@container (max-width: 520px){.dk-prose h1{font-size:30px;line-height:38px}.dk-prose h2{margin-top:var(--space-10);font-size:24px;line-height:32px}.dk-prose h3{margin-top:var(--space-8);font-size:20px;line-height:28px}.dk-prose .dk-prose__lead{font-size:19px}}.dk-code{position:relative;overflow:hidden;border:1px solid var(--code-border);border-radius:var(--radius-lg);background:var(--code-bg);color:var(--code-ink)}.dk-code__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:40px;padding:0 6px 0 var(--space-4);border-bottom:1px solid var(--code-line);background:var(--code-header)}.dk-code__file{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0;font:500 13px/20px var(--font-mono);font-variant-ligatures:none;color:var(--code-ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dk-code__file .dk-icon{width:14px;height:14px}.dk-code__copy{display:inline-flex;align-items:center;gap:6px;flex:none;height:28px;padding:0 var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--code-ink-muted);font:600 12px/16px var(--font-sans);white-space:nowrap;cursor:pointer;transition:background-color var(--dk-fast) var(--dk-ease),color var(--dk-fast) var(--dk-ease)}.dk-code__copy .dk-icon{width:14px;height:14px}.dk-code__copy:hover{background:var(--code-line);color:var(--code-ink)}.dk-code__copy:focus-visible{outline:2px solid var(--code-focus);outline-offset:1px}.dk-code__copy[data-copied=true]{color:var(--code-add-ink)}.dk-code__lang{min-width:0;font:600 12px/16px var(--font-sans);letter-spacing:.02em;color:var(--code-ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dk-code--inline{display:flex;align-items:center;gap:var(--space-2);padding-right:6px}.dk-code--inline .dk-code__pre{flex:1 1 auto;min-width:0;padding-top:11px;padding-bottom:11px}.dk-code__pre{margin:0;padding:var(--space-4);overflow:auto;font:400 14px/22px var(--font-mono);font-variant-ligatures:none;tab-size:4;white-space:pre;scrollbar-color:var(--code-ink-muted) transparent;scrollbar-width:thin}.dk-code__pre:focus-visible{outline:2px solid var(--code-focus);outline-offset:-2px}.dk-code__pre code{font:inherit}.dk-code__line{display:block;min-height:22px}.dk-code--numbers .dk-code__pre{counter-reset:dk-line;padding-left:0}.dk-code--numbers .dk-code__line:before{counter-increment:dk-line;content:counter(dk-line);display:inline-block;width:3em;margin-right:var(--space-4);text-align:right;color:var(--code-ink-muted);-webkit-user-select:none;user-select:none}.dk-code__line--hl{background:var(--code-line)}.dk-code:not(.dk-code--numbers) .dk-code__line--hl{margin:0 calc(-1 * var(--space-4));padding:0 var(--space-4)}.dk-tok-k{color:var(--code-keyword)}.dk-tok-t{color:var(--code-type)}.dk-tok-f{color:var(--code-function)}.dk-tok-s{color:var(--code-string)}.dk-tok-n{color:var(--code-number)}.dk-tok-c{color:var(--code-ink-muted)}.dk-video{container-type:inline-size;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg)}.dk-video__stage{position:relative;display:grid;place-items:center;aspect-ratio:16 / 9;overflow:hidden;background:var(--media-bg);color:var(--on-media)}.dk-video__stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.dk-video__poster{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-start;gap:var(--space-1);padding:var(--space-6);text-align:left}.dk-video__poster-kicker{font:700 12px/16px var(--font-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--on-media);opacity:.7}.dk-video__poster-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;max-width:24ch;font:700 24px/32px var(--font-sans);letter-spacing:-.01em;text-wrap:balance}.dk-video__big{position:relative;z-index:1;display:grid;place-items:center;width:64px;height:64px;padding:0;border:0;border-radius:var(--radius-full);background:var(--on-media);color:var(--media-bg);cursor:pointer;transition:transform var(--dk-fast) var(--dk-ease)}.dk-video__big:hover{transform:scale(1.05)}.dk-video__big .dk-icon{width:28px;height:28px;fill:currentColor;margin-left:3px}.dk-video__controls{position:absolute;z-index:2;left:0;right:0;bottom:0;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-8) var(--space-2) var(--space-1);background:linear-gradient(to top,var(--media-scrim),transparent)}.dk-video__btn{display:inline-grid;place-items:center;flex:none;min-width:36px;height:36px;padding:0 var(--space-2);border:0;border-radius:var(--radius-md);background:transparent;color:var(--on-media);font:600 14px/20px var(--font-sans);font-variant-numeric:tabular-nums;cursor:pointer}.dk-video__btn:hover{background:var(--media-hover)}.dk-video__btn:focus-visible,.dk-video__big:focus-visible{outline:2px solid var(--on-media);outline-offset:2px}.dk-video__btn .dk-icon{width:20px;height:20px}.dk-video__time{flex:none;padding:0 var(--space-2);font:500 14px/20px var(--font-sans);font-variant-numeric:tabular-nums;white-space:nowrap}.dk-seek{position:relative;flex:1;min-width:40px;height:20px}.dk-seek__track{position:absolute;left:0;right:0;top:8px;height:4px;border-radius:var(--radius-full);background:var(--media-track);overflow:hidden}.dk-seek__fill{height:100%;background:var(--on-media)}.dk-seek__thumb{position:absolute;top:4px;width:12px;height:12px;margin-left:-6px;border-radius:var(--radius-full);background:var(--on-media)}.dk-seek input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.dk-seek input:focus-visible~.dk-seek__thumb{outline:2px solid var(--on-media);outline-offset:2px}.dk-playlist{list-style:none;margin:0;padding:0;counter-reset:dk-video}.dk-playlist__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);font:600 14px/20px var(--font-sans);color:var(--ink)}.dk-playlist__head span{font-weight:400;color:var(--ink-muted);font-variant-numeric:tabular-nums}.dk-playlist__item{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:var(--space-3);width:100%;padding:10px var(--space-4);border:0;border-top:1px solid var(--border);background:none;color:var(--ink);font:400 14px/20px var(--font-sans);text-align:left;cursor:pointer}.dk-playlist__item:hover{background:var(--bg-hover)}.dk-playlist__item:focus-visible{outline-offset:-2px}.dk-playlist__mark{display:grid;place-items:center;color:var(--ink-subtle);font:600 12px/16px var(--font-sans);font-variant-numeric:tabular-nums}.dk-playlist__mark .dk-icon{width:16px;height:16px}.dk-playlist__item[data-watched=true] .dk-playlist__mark{color:var(--ink-success)}.dk-playlist__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dk-playlist__dur{color:var(--ink-muted);font-variant-numeric:tabular-nums}.dk-playlist__item[aria-current=true]{background:var(--accent-soft);color:var(--ink-accent);font-weight:600}.dk-playlist__item[aria-current=true]:hover{background:var(--accent-soft-hover)}.dk-playlist__item[aria-current=true] .dk-playlist__mark,.dk-playlist__item[aria-current=true] .dk-playlist__dur{color:var(--ink-accent)}@container (max-width: 560px){.dk-video__poster-title{display:block;max-width:none;font-size:20px;line-height:28px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}@container (max-width: 420px){.dk-video__poster{padding:var(--space-4)}.dk-video__poster-title{font-size:18px;line-height:24px}.dk-video__big{width:48px;height:48px}.dk-video__big .dk-icon{width:22px;height:22px}.dk-video__controls .dk-video__hide-sm{display:none}}@container (max-width: 300px){.dk-video__controls{gap:0}.dk-video__time{padding:0 var(--space-1)}.dk-seek{min-width:24px}}.dk-project{container-type:inline-size;overflow:hidden;border:1px solid var(--code-border);border-radius:var(--radius-lg);background:var(--code-bg);color:var(--code-ink)}.dk-project__grid{display:grid;grid-template-columns:232px minmax(0,1fr);height:var(--dk-project-h, 440px)}.dk-project__side{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--code-line);background:var(--code-header)}.dk-project__side-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);height:40px;padding:0 var(--space-3) 0 var(--space-4);border-bottom:1px solid var(--code-line);font:600 12px/16px var(--font-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--code-ink-muted)}.dk-project__toggle{display:none;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;height:40px;padding:0 var(--space-3) 0 var(--space-4);border:0;border-bottom:1px solid var(--code-line);background:var(--code-header);color:var(--code-ink);font:500 13px/20px var(--font-mono);font-variant-ligatures:none;cursor:pointer}.dk-project__toggle span{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dk-project__toggle .dk-icon{width:16px;height:16px;color:var(--code-ink-muted)}.dk-project__toggle:focus-visible{outline:2px solid var(--code-focus);outline-offset:-2px}.dk-project__tree{flex:1;min-height:0;overflow:auto;padding:var(--space-2);scrollbar-color:var(--code-ink-muted) transparent;scrollbar-width:thin}.dk-tree,.dk-tree ul{list-style:none;margin:0;padding:0}.dk-tree ul{margin-left:15px;padding-left:4px;border-left:1px solid var(--code-line)}.dk-tree__item{display:flex;align-items:center;gap:6px;width:100%;height:28px;padding:0 var(--space-2);border:0;border-radius:var(--radius-sm);background:none;color:var(--code-ink-muted);font:400 13px/20px var(--font-mono);font-variant-ligatures:none;text-align:left;white-space:nowrap;cursor:pointer}.dk-tree__item .dk-icon{width:14px;height:14px;flex:none}.dk-tree__item span{overflow:hidden;text-overflow:ellipsis}.dk-tree__item:hover{background:var(--code-line);color:var(--code-ink)}.dk-tree__item:focus-visible{outline:2px solid var(--code-focus);outline-offset:-2px}.dk-tree__item[aria-current=true]{background:var(--code-line);color:var(--code-ink);font-weight:600}.dk-tree__item[aria-current=true] .dk-icon{color:var(--code-keyword)}.dk-project__pane{display:flex;flex-direction:column;min-width:0;min-height:0}.dk-project__path{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex:none;height:40px;padding:0 6px 0 var(--space-4);border-bottom:1px solid var(--code-line);font:500 13px/20px var(--font-mono);font-variant-ligatures:none;color:var(--code-ink-muted)}.dk-project__path>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dk-project__path b{font-weight:500;color:var(--code-ink)}.dk-project__code{flex:1;min-height:0;overflow:auto;scrollbar-color:var(--code-ink-muted) transparent;scrollbar-width:thin}.dk-project__code:focus-visible{outline:2px solid var(--code-focus);outline-offset:-2px}.dk-project__code .dk-code__pre{overflow:visible;min-width:max-content}.dk-project__empty{display:grid;place-items:center;height:100%;padding:var(--space-6);font:400 14px/20px var(--font-sans);color:var(--code-ink-muted);text-align:center}@container (max-width: 640px){.dk-project__grid{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.dk-project__side{border-right:0}.dk-project__side-head{display:none}.dk-project__toggle{display:flex}.dk-project__tree{display:none;max-height:220px;border-bottom:1px solid var(--code-line)}.dk-project__side[data-open=true] .dk-project__tree{display:block}}.dk-term{margin:0;padding:var(--space-3) var(--space-4);max-height:320px;overflow:auto;background:var(--code-bg);color:var(--code-ink);font:400 13px/20px var(--font-mono);font-variant-ligatures:none;white-space:pre;tab-size:4;scrollbar-color:var(--code-ink-muted) transparent;scrollbar-width:thin}.dk-term:focus-visible{outline:2px solid var(--code-focus);outline-offset:-2px}.dk-term__line{display:block;min-height:20px}.dk-term__line--err{color:var(--code-remove-ink)}.dk-term__line--warn{color:var(--code-number)}.dk-term__line--ok{color:var(--code-add-ink)}.dk-term__line--dim{color:var(--code-ink-muted)}.dk-term__cursor{display:inline-block;width:8px;height:16px;margin-left:2px;vertical-align:text-bottom;background:var(--code-ink);animation:dk-blink 1s steps(2) infinite}@keyframes dk-blink{50%{opacity:0}}.dk-diff{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--code-bg);color:var(--code-ink);font:400 13px/20px var(--font-mono);font-variant-ligatures:none}.dk-diff__col{min-width:0;overflow-x:auto;scrollbar-color:var(--code-ink-muted) transparent;scrollbar-width:thin}.dk-diff__col+.dk-diff__col{border-left:1px solid var(--code-line)}.dk-diff__title{position:sticky;left:0;display:flex;align-items:center;gap:var(--space-2);height:32px;padding:0 var(--space-4);border-bottom:1px solid var(--code-line);background:var(--code-header);font:600 12px/16px var(--font-sans);color:var(--code-ink-muted)}.dk-diff__lines{min-width:max-content;padding:var(--space-2) 0}.dk-diff__line{display:grid;grid-template-columns:36px 16px minmax(0,1fr);min-height:20px;padding-right:var(--space-4);white-space:pre}.dk-diff__no{padding-right:var(--space-2);text-align:right;color:var(--code-ink-muted);-webkit-user-select:none;user-select:none}.dk-diff__sign{text-align:center;-webkit-user-select:none;user-select:none;font-weight:700}.dk-diff__line--add{background:var(--code-add-bg)}.dk-diff__line--add .dk-diff__sign{color:var(--code-add-ink)}.dk-diff__line--rem{background:var(--code-remove-bg)}.dk-diff__line--rem .dk-diff__sign{color:var(--code-remove-ink)}.dk-diff__line--gap{background:var(--code-line)}.dk-run{container-type:inline-size;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg)}.dk-run__head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4)}.dk-run__info{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);min-width:0;min-height:var(--control-sm)}.dk-run__title{margin:0;font:600 14px/20px var(--font-sans);color:var(--ink)}.dk-run__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-4);margin:0;padding:0;list-style:none;font:400 14px/20px var(--font-sans);color:var(--ink-muted);font-variant-numeric:tabular-nums}.dk-run__meta li{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.dk-run__meta .dk-icon{width:14px;height:14px;color:var(--ink-subtle)}.dk-run__meta code{font:500 13px/20px var(--font-mono);font-variant-ligatures:none;color:var(--ink)}.dk-run__actions{display:flex;gap:var(--space-2)}.dk-run__summary{display:flex;align-items:flex-start;gap:var(--space-2);margin:0;padding:0 var(--space-4) var(--space-3);font:400 14px/20px var(--font-sans);color:var(--ink-muted)}.dk-run__summary .dk-icon{width:16px;height:16px;margin-top:2px}.dk-run__summary--danger{color:var(--ink-danger);font-weight:500}.dk-run__summary--warning{color:var(--ink-warning);font-weight:500}.dk-run__summary--success{color:var(--ink-success);font-weight:500}.dk-run .dk-tabs{--dk-tabs-gap: var(--space-4);margin:0;padding:0 calc(var(--space-4) - var(--dk-tab-pad));background-position:0 100%;background-size:100% 1px}.dk-run .dk-tab{height:40px}.dk-run__panel{background:var(--code-bg)}.dk-run__panel:focus-visible{outline:2px solid var(--code-focus);outline-offset:-2px}.dk-run__blank{margin:0;padding:var(--space-6) var(--space-4);background:var(--code-bg);color:var(--code-ink-muted);font:400 13px/20px var(--font-mono);font-variant-ligatures:none}@container (max-width: 560px){.dk-diff{grid-template-columns:minmax(0,1fr)}.dk-diff__col+.dk-diff__col{border-left:0;border-top:1px solid var(--code-line)}.dk-run__head{grid-template-columns:minmax(0,1fr)}}.dk-run .dk-tabpanel{padding-top:0}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}:where(a){color:var(--ink-accent);text-decoration:none}:where(a:hover){text-decoration:underline}:where(h1,h2,h3):where(:not([class*=dk-],.dk-prose *)){margin:0 0 .5em}:where(h1):where(:not([class*=dk-],.dk-prose *)){font:var(--text-h1);letter-spacing:-.015em}:where(h2):where(:not([class*=dk-],.dk-prose *)){font:var(--text-h2);letter-spacing:-.01em}:where(h3):where(:not([class*=dk-],.dk-prose *)){font:var(--text-h3);letter-spacing:-.005em}code,pre,kbd{font-family:var(--font-mono)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.shell-topbar{position:sticky;top:0;z-index:var(--z-sticky);display:flex;align-items:center;gap:var(--space-4);height:var(--topbar-height);padding:0 var(--gutter);background:var(--bg);border-bottom:1px solid var(--border)}@media(width<900px){.shell-topbar{padding:0 var(--gutter-mobile)}}.shell-brand{flex:none;display:inline-flex;align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);font-weight:800;letter-spacing:-.025em;color:var(--ink);text-decoration:none}.shell-brand__mark{flex:none;width:1lh;height:1lh}.shell-brand__mark rect{fill:var(--accent)}.shell-brand__mark path{fill:none;stroke:var(--on-accent);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.shell-brand__dot{display:inline-block;width:.3em;height:.3em;margin-inline-start:.06em;border-radius:var(--radius-full);background:var(--accent)}.shell-nav{flex:none;align-self:stretch;display:flex}@media(width<900px){.shell-nav{display:none}}.shell-nav__link{position:relative;display:flex;align-items:center;padding:0 var(--space-3);font:var(--text-label);color:var(--ink-muted);text-decoration:none;white-space:nowrap}.shell-nav__link:hover,.shell-nav__link[aria-current]{color:var(--ink)}.shell-nav__link:focus-visible{outline-offset:-2px;border-radius:var(--radius-sm)}.shell-nav__link[aria-current]:after{content:"";position:absolute;left:var(--space-3);right:var(--space-3);bottom:-1px;height:2px;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--accent)}.shell-actions{flex:0 1 auto;min-width:0;margin-left:auto;display:flex;align-items:center;gap:var(--space-2)}@media(width<900px){.shell-actions .dk-notify{right:calc(-1 * (var(--control-md) + var(--space-2)))}}.shell-menu{position:relative;display:flex;min-width:0}.shell-menu__account{min-width:0;max-width:var(--rail-width);padding-inline:var(--space-1) var(--space-3)}@media(width<900px){.shell-menu__account{display:none}}.shell-menu__burger{display:none}@media(width<900px){.shell-menu__burger{display:inline-flex}}.shell-menu__panel{width:var(--rail-width);max-width:calc(100vw - 2 * var(--gutter-mobile));padding:var(--space-2)}.shell-menu__nav{display:none}@media(width<900px){.shell-menu__nav{display:block;margin-bottom:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}}.shell-menu__nav ul{list-style:none;margin:0;padding:0}.shell-menu__link{display:flex;align-items:center;min-height:var(--control-md);padding:0 var(--space-3);border-radius:var(--radius-md);font:var(--text-label);color:var(--ink);text-decoration:none}.shell-menu__link:hover{background:var(--bg-hover)}.shell-menu__link:focus-visible{outline-offset:-2px}.shell-menu__link[aria-current]{background:var(--accent-soft);color:var(--ink-accent)}.shell-menu__link[aria-current]:hover{background:var(--accent-soft-hover)}.shell-menu__who{display:grid;justify-items:start;gap:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-3)}.shell-menu__foot{padding-top:var(--space-2);border-top:1px solid var(--border)}.shell-menu__foot .dk-btn{justify-content:flex-start}.shell-main{display:block;max-width:var(--content-max);margin-inline:auto;padding:var(--space-10) var(--gutter) var(--space-16)}@media(width<900px){.shell-main{padding:var(--space-6) var(--gutter-mobile) var(--space-12)}}.shell-main:has(>.lesson-layout){padding-block:0}.lesson-layout{display:grid;grid-template-columns:var(--rail-width) minmax(0,1fr);column-gap:var(--space-10);align-items:start}.lesson-layout>.lesson-read{padding-block:var(--space-10) var(--space-16)}@media(width<900px){.lesson-layout{display:block}.lesson-layout>.lesson-read{padding-block:var(--space-6) var(--space-12)}}.lesson-rail{position:sticky;top:var(--topbar-height);display:block;height:calc(100vh - var(--topbar-height));height:calc(100dvh - var(--topbar-height));overflow-y:auto;overscroll-behavior:contain;background:var(--bg-subtle);border:solid var(--border);border-width:0 1px}@media(width<900px){.lesson-rail{position:static;height:auto;overflow:visible;margin-inline:calc(-1 * var(--gutter-mobile));border-width:0 0 1px}}.lesson-rail__toggle{display:none}@media(width<900px){.lesson-rail__toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;min-height:var(--space-12);padding:0 var(--gutter-mobile);border:0;border-radius:0;background:none;color:var(--ink);font:var(--text-label);text-align:left}.lesson-rail__toggle:hover{background:var(--bg-hover)}.lesson-rail__toggle:focus-visible{outline-offset:-2px}.lesson-rail__toggle .dk-icon{width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-muted);transition:transform var(--dk-base) var(--dk-ease)}.lesson-rail__toggle[aria-expanded=true] .dk-icon{transform:rotate(180deg)}}.lesson-rail__count{font:var(--text-body-sm);color:var(--ink-muted);font-variant-numeric:tabular-nums}.lesson-rail__body{display:block;padding:var(--space-6) var(--space-2)}@media(width<900px){.lesson-rail__body{padding:var(--space-2) var(--space-2) var(--space-4);border-top:1px solid var(--border)}.lesson-rail__body:not([data-open]){display:none}}.lesson-rail__course{display:block;margin-bottom:var(--space-4);padding:0 var(--space-3);border-radius:var(--radius-sm);font:var(--text-h4);color:var(--ink);text-decoration:none}.lesson-rail__course:hover{color:var(--ink-accent)}.lesson-rail__course:focus-visible{outline-offset:-2px}.lesson-rail__section+.lesson-rail__section{margin-top:var(--space-2)}.lesson-rail__section>summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--ink-subtle);list-style:none;cursor:pointer}.lesson-rail__section>summary::-webkit-details-marker{display:none}.lesson-rail__section>summary:hover{color:var(--ink)}.lesson-rail__section>summary:focus-visible{outline-offset:-2px}.lesson-rail__section>summary .dk-icon{width:var(--icon-sm);height:var(--icon-sm);transition:transform var(--dk-base) var(--dk-ease)}.lesson-rail__section:not([open])>summary .dk-icon{transform:rotate(-90deg)}.lesson-rail__section ol{list-style:none;margin:0;padding:0 0 var(--space-2)}.lesson-rail__lesson{display:grid;grid-template-columns:var(--icon-md) minmax(0,1fr);align-items:start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font:var(--text-body-sm);color:var(--ink);text-decoration:none}.lesson-rail__lesson:hover{background:var(--bg-hover)}.lesson-rail__lesson:focus-visible{outline-offset:-2px}.lesson-rail__lesson[aria-current=page]{background:var(--accent-soft);color:var(--ink-accent);font-weight:600}.lesson-rail__lesson[aria-current=page]:hover{background:var(--accent-soft-hover)}.lesson-rail__mark{display:grid;place-items:center;height:var(--icon-md);font:var(--text-caption);font-variant-numeric:tabular-nums;color:var(--ink-subtle)}.lesson-rail__mark .dk-icon{width:var(--icon-sm);height:var(--icon-sm)}[data-done]>.lesson-rail__mark{color:var(--ink-success)}[aria-current=page]>.lesson-rail__mark{color:var(--ink-accent)}button{font:inherit;cursor:pointer}:where(button:not([class*=dk-])){background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.5rem .9rem;font-weight:600;color:var(--ink-muted)}:where(button:not([class*=dk-])):hover{border-color:var(--ink-muted);color:var(--ink)}:where(button:not([class*=dk-])).active{border-color:var(--accent);color:var(--ink-accent);background:var(--accent-soft)}:where(button:not([class*=dk-])):disabled{opacity:.5;cursor:default}label:where(:not([class*=dk-])){display:block;font-weight:600;font-size:.9rem;color:var(--ink-muted);margin-bottom:1rem}:is(input,textarea,select):where(:not([class*=dk-],.dk-seek *)){display:block;width:100%;margin-top:.35rem;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.55rem .7rem}:is(input,textarea,select):where(:not([class*=dk-],.dk-seek *)):focus{border-color:var(--accent);outline:none;box-shadow:var(--focus-ring)}textarea:where(:not([class*=dk-])){font-family:var(--font-mono);font-size:.9rem;line-height:1.5;resize:vertical}.login-page{display:block;width:min(100%,var(--space-24) * 4);margin:var(--space-16) auto 0}@media(width<900px){.login-page{margin-top:var(--space-8)}}.login-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink)}.login-lead{margin:var(--space-2) 0 0;font:var(--text-body);color:var(--ink-muted)}.login-form{display:grid;gap:var(--space-6);margin-top:var(--space-8)}.login-form>.dk-btn{margin-top:var(--space-2)}.login-help{margin:var(--space-6) 0 0;font:var(--text-body-sm);color:var(--ink-muted)}.hw-page{display:block}.hw-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink)}.hw-section{margin-top:var(--space-12)}.hw-title+.hw-section{margin-top:var(--space-8)}.hw-section__title{margin:0 0 var(--space-4);font:var(--text-h3);letter-spacing:-.005em;color:var(--ink)}.hw-sub{display:block;margin-top:var(--space-1);font:var(--text-caption);color:var(--ink-muted)}.hw-due,.hw-badges,.hw-work{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.hw-due{font-variant-numeric:tabular-nums}.hw-work__item{display:inline-flex;align-items:center;gap:var(--space-1)}.hw-work__item .dk-icon{width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.stat-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-template-rows:repeat(3,auto);row-gap:var(--space-1);margin:0;border-block:1px solid var(--border)}.stat{display:grid;grid-row:span 3;grid-template-rows:subgrid;align-content:start;padding:var(--space-4) var(--space-6)}@media(width<900px){.stat{padding-inline:var(--space-4)}}.stat+.stat{border-inline-start:1px solid var(--border)}.stat:first-child{padding-inline-start:0}.stat:last-child{padding-inline-end:0}.stat dd{margin:0}.stat__label{font:var(--text-overline);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}.stat__value{font:var(--text-h2);letter-spacing:-.01em;color:var(--ink);font-variant-numeric:tabular-nums}.stat__sub{font:var(--text-caption);color:var(--ink-muted);font-variant-numeric:tabular-nums}.disclosure>summary{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--control-md);margin-inline-start:calc(-1 * var(--space-3));padding:0 var(--space-3);border-radius:var(--radius-md);font:var(--text-label);color:var(--ink);list-style:none;cursor:pointer}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:hover{background:var(--bg-hover)}.disclosure>summary .dk-icon{width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle);transition:transform var(--dk-base) var(--dk-ease)}.disclosure[open]>summary .dk-icon{transform:rotate(90deg)}.dk-table-wrap{position:relative}.results-page{display:block}.results-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink)}.results-section{margin-top:var(--space-12)}.results-title+.results-section{margin-top:var(--space-8)}.results-section__title{margin:0;font:var(--text-h3);letter-spacing:-.005em;color:var(--ink);text-wrap:balance}.results-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin:var(--space-2) 0 var(--space-6);padding:0;list-style:none;font:var(--text-body-sm);color:var(--ink-muted)}.results-meta li{display:inline-flex;align-items:center;gap:var(--space-1)}.results-meta .dk-icon{width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.results-note{margin:var(--space-4) 0 0;font:var(--text-body-sm);color:var(--ink-muted)}.results-log{margin-top:var(--space-4)}.results-log .dk-table-wrap{margin-top:var(--space-2)}.results-log__count{font:var(--text-body-sm);color:var(--ink-muted)}.results-certs{container-type:inline-size;margin:var(--space-4) 0 0;padding:0;list-style:none;border-top:1px solid var(--border)}.results-certs>li{border-bottom:1px solid var(--border)}.results-cert{display:grid;grid-template-columns:var(--icon-md) minmax(0,1fr) auto;align-items:center;gap:var(--space-1) var(--space-3);min-height:var(--control-md);padding:var(--space-3);color:var(--ink);text-decoration:none}.results-cert:hover{background:var(--bg-hover)}.results-cert:focus-visible{outline-offset:-2px}.results-cert>.dk-icon{width:var(--icon-md);height:var(--icon-md);color:var(--ink-subtle)}.results-cert__title{font:var(--text-body);font-weight:600;overflow-wrap:anywhere}.results-cert__meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2) var(--space-3);font:var(--text-body-sm);color:var(--ink-muted)}.results-cert__number{font:var(--text-code-sm);font-variant-ligatures:none}@container (width < 640px){.results-cert{grid-template-columns:var(--icon-md) minmax(0,1fr);align-items:start}.results-cert__meta{grid-column:2;justify-content:flex-start}}.results-empty{margin-top:var(--space-8)}.results-loading{display:grid;gap:var(--space-3)}.results-loading .stat-row{margin-block:var(--space-3)}.sched-page{display:block}.sched-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink)}.sched-week{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-4)}.sched-week__label{margin:0 0 0 var(--space-2);font:var(--text-h4);color:var(--ink);font-variant-numeric:tabular-nums}.sched-day{margin-top:var(--space-8)}.sched-day+.sched-day{margin-top:var(--space-12)}.sched-day__title{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-2);margin:0;font:var(--text-h3);letter-spacing:-.005em;color:var(--ink)}.sched-day__date{font:var(--text-body);color:var(--ink-muted)}.sched-list{container-type:inline-size;margin:var(--space-3) 0 0;padding:0;list-style:none;border-top:1px solid var(--border)}.sched-item{display:grid;grid-template-columns:var(--space-16) minmax(0,1fr) auto;grid-template-areas:"time body side" "time plan plan";align-items:start;column-gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.sched-item__time{grid-area:time;display:grid;margin:0;font:var(--text-h4);font-family:var(--font-mono);font-variant-ligatures:none;font-variant-numeric:tabular-nums;color:var(--ink)}.sched-item__end{font:var(--text-code-sm);font-variant-ligatures:none;color:var(--ink-muted)}.sched-item__body{grid-area:body;display:grid;gap:var(--space-1);min-width:0}.sched-item__title{margin:0;font:var(--text-h4);color:var(--ink);overflow-wrap:anywhere}.sched-item__meta{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);margin:0;padding:0;list-style:none;font:var(--text-body-sm);color:var(--ink-muted)}.sched-item__meta li{display:inline-flex;align-items:center;gap:var(--space-1);min-width:0;overflow-wrap:anywhere}.sched-item__meta .dk-icon{flex:none;width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.sched-item__plan{grid-area:plan;margin-top:var(--space-1)}.sched-item__plan>.md-ui{max-width:var(--measure);margin-top:var(--space-2);font:var(--text-body-sm)}.sched-item__side{grid-area:side;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2) var(--space-3);min-height:var(--control-sm);margin-top:calc(-1 * var(--space-1))}.sched-item[data-cancelled] .sched-item__time,.sched-item[data-cancelled] .sched-item__title,.sched-item[data-cancelled] .sched-item__title .dk-link{color:var(--ink-muted)}.sched-item[data-cancelled] .sched-item__title,.sched-item[data-cancelled] .sched-item__title .dk-link{text-decoration-line:line-through}@container (width < 640px){.sched-item{grid-template-columns:var(--space-16) minmax(0,1fr);grid-template-areas:"time body" "time side" "time plan";column-gap:var(--space-3)}.sched-item__side{justify-content:flex-start;min-height:0;margin-top:var(--space-2)}}.sched-loading .sched-item__body{gap:var(--space-2)}.sched-empty{margin-top:var(--space-8)}.notif-page{display:block;max-width:var(--measure)}.notif-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4)}.notif-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink)}.notif-body{margin-top:var(--space-6)}.notif-list{container-type:inline-size;margin:0;padding:0;list-style:none;border-top:1px solid var(--border)}.notif-list>li,.notif-list>.notif-item{border-bottom:1px solid var(--border)}.notif-item{display:grid;grid-template-columns:var(--space-2) var(--icon-md) minmax(0,1fr) auto;align-items:start;gap:var(--space-1) var(--space-3);width:100%;margin:0;padding:var(--space-4) var(--space-3);border:0;border-radius:0;background:none;font:var(--text-body-sm);color:var(--ink);text-align:start;text-decoration:none;cursor:pointer}.notif-item:hover{background:var(--bg-hover)}.notif-item:focus-visible{outline-offset:-2px}.notif-item>.dk-icon{width:var(--icon-md);height:var(--icon-md);margin-top:calc((var(--space-6) - var(--icon-md)) / 2);color:var(--ink-subtle)}.notif-item__dot{width:var(--space-2);height:var(--space-2);margin-top:calc((var(--space-6) - var(--space-2)) / 2);border-radius:var(--radius-full)}[data-unread]>.notif-item__dot{background:var(--accent)}.notif-item__main{display:grid;gap:var(--space-1);min-width:0}.notif-item__title{font:var(--text-body);color:var(--ink-muted);overflow-wrap:anywhere}[data-unread] .notif-item__title{font-weight:600;color:var(--ink)}.notif-item__text{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;color:var(--ink-muted);overflow-wrap:anywhere}.notif-item__time{margin-top:var(--space-1);font:var(--text-caption);color:var(--ink-subtle);white-space:nowrap;font-variant-numeric:tabular-nums}@container (width < 640px){.notif-item{grid-template-columns:var(--space-2) var(--icon-md) minmax(0,1fr)}.notif-item__time{grid-column:3;margin-top:0}}.notif-loading{display:grid;gap:var(--space-6)}.notif-loading .notif-loading__tabs{display:flex;gap:var(--space-6);padding-block:var(--space-3);border-bottom:1px solid var(--border)}.notif-loading .notif-item{cursor:default}.notif-loading .notif-item:hover{background:none}.notif-loading .notif-item__main{gap:var(--space-2)}.notif-empty{margin-top:var(--space-8)}.notif-body .notif-empty{margin-top:0}.rv-page{display:block}.rv-page__title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink)}.rv-body{margin-top:var(--space-6)}.rv-state{margin-top:var(--space-2)}.rv-empty{margin-top:var(--space-8)}.rv-cell{display:grid;gap:var(--space-1);min-width:0}.rv-cell__title{overflow-wrap:anywhere}.rv-cell__sub{font:var(--text-caption);color:var(--ink-muted)}.rv-when{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-1) var(--space-2);white-space:nowrap}.rv-loading{display:grid;gap:var(--space-3);max-width:var(--measure)}.rv-sub{display:block}.rv-head{max-width:var(--measure)}.rv-head .dk-breadcrumbs{margin-bottom:var(--space-4)}.rv-head__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4)}.rv-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink);overflow-wrap:anywhere}.rv-pager{display:inline-flex;align-items:center;gap:var(--space-1)}.rv-pager__pos{min-width:7ch;font:var(--text-body-sm);color:var(--ink-muted);font-variant-numeric:tabular-nums;text-align:center}.rv-lesson{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-3);margin:var(--space-2) 0 0;font:var(--text-body)}.rv-lesson a{overflow-wrap:anywhere}.rv-lesson__course{font:var(--text-body-sm);color:var(--ink-muted)}.rv-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);margin:var(--space-4) 0 0;padding:0;list-style:none;font:var(--text-body-sm);color:var(--ink-muted)}.rv-meta li{display:inline-flex;align-items:center;gap:var(--space-1);font-variant-numeric:tabular-nums}.rv-meta .dk-icon{flex:none;width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.rv-task{max-width:var(--measure);margin-top:var(--space-6)}.rv-task__text{display:block;margin-top:var(--space-2)}.rv-section{display:grid;gap:var(--space-4);margin-top:var(--space-12)}.rv-section__title{margin:0;font:var(--text-h3);letter-spacing:-.005em;color:var(--ink)}.rv-label{margin:0 0 var(--space-1);font:var(--text-label);color:var(--ink)}.rv-note{max-width:var(--measure)}.rv-note__text{margin:0;font:var(--text-body);color:var(--ink);white-space:pre-line;overflow-wrap:anywhere}.rv-repo{display:flex;align-items:center;gap:var(--space-2);min-width:0;margin:0;font:var(--text-body-sm)}.rv-repo .dk-icon{flex:none;width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.rv-repo a{min-width:0;overflow-wrap:anywhere;font-family:var(--font-mono)}.rv-form{display:grid;gap:var(--space-4);max-width:var(--measure)}.rv-score{width:12ch}.rv-actions{margin-top:var(--space-2)}@media(width<900px){.rv-actions>.dk-btn{width:100%}}.rv-result{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);margin:0}.rv-result__score{font:var(--text-label);color:var(--ink);font-variant-numeric:tabular-nums}.rv-result__when{font:var(--text-body-sm);color:var(--ink-muted);font-variant-numeric:tabular-nums}.gr-page{display:block}.gr-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4)}@media(width<900px){.gr-head>.dk-btn{width:100%}}.gr-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink)}.gr-body{margin-top:var(--space-6)}.gr-state{margin-top:var(--space-2)}.gr-cell{display:grid;justify-items:start;gap:var(--space-1);min-width:0}.gr-cell__name{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);overflow-wrap:anywhere}.gr-cell__sub{font:var(--text-caption);color:var(--ink-muted)}.gr-cell__time{font-variant-numeric:tabular-nums}.gr-next{white-space:nowrap}@container (max-width: 640px){.dk-table--stack td:not([data-primary]) .gr-cell{justify-items:end}}.us-page{display:block}.us-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4)}@media(width<900px){.us-head>.dk-btn{width:100%}}.us-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink)}.us-body{margin-top:var(--space-6)}.us-state{margin-top:var(--space-2)}.us-who{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);min-width:0}.us-courses{display:grid;justify-items:start;gap:var(--space-1)}.us-date{white-space:nowrap}.us-note{margin:var(--space-4) 0 0;font:var(--text-body-sm);color:var(--ink-muted)}@container (max-width: 640px){.dk-table--stack td:not([data-primary]) .us-courses{justify-items:end;text-align:end}}.gn-page{display:block}.gn-title{margin:var(--space-2) 0 0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink)}.gn-form{margin-top:var(--space-6)}.gn-state{margin-top:var(--space-8)}.gn-loading{display:grid;gap:var(--space-6);max-width:var(--measure);margin-top:var(--space-6)}.gn-loading>.gn-loading__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.gn-loading>.gn-loading__row>span{display:grid;gap:var(--space-2)}.gn-loading>.gn-loading__row>.gn-loading__wide{grid-column:1/-1}.gf{display:block;max-width:var(--measure);container-type:inline-size}.gf-form{display:grid;gap:var(--space-6)}.gf-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--space-4);align-items:start}@container (width < 480px){.gf-row{grid-template-columns:minmax(0,1fr)}}.gf-actions{margin-top:var(--space-2)}@media(width<900px){.gf-actions>.dk-btn{width:100%}}.gp-page{display:block}.gp-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);margin-top:var(--space-2)}.gp-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink);overflow-wrap:anywhere}.gp-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin:var(--space-2) 0 0;padding:0;list-style:none;font:var(--text-body-sm);color:var(--ink-muted)}.gp-meta li{display:inline-flex;align-items:center;gap:var(--space-1);font-variant-numeric:tabular-nums}.gp-meta .dk-icon{flex:none;width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.gp-stats{margin-top:var(--space-6)}.gp-tabs,.gp-state{margin-top:var(--space-8)}.gp-loading{display:grid;gap:var(--space-3);margin-top:var(--space-2)}.gp-loading .stat-row{margin-block:var(--space-3)}.dk-modal__body:has(.dk-datepicker .dk-popover){overflow:visible}.gm-form{display:grid;gap:var(--space-6);container-type:inline-size}.gm-lead{margin:0;font:var(--text-body-sm);color:var(--ink-muted)}.gm-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--space-4);align-items:start}@container (width < 400px){.gm-row{grid-template-columns:minmax(0,1fr)}}.gsn-cell,.gc-cell{display:grid;justify-items:start;gap:var(--space-1);min-width:0}.gst-sub,.gsn-sub,.gc-sub{font:var(--text-caption);color:var(--ink-muted);font-variant-numeric:tabular-nums}@container (max-width: 640px){.dk-table--stack td:not([data-primary]) :is(.gsn-cell,.gc-cell){justify-items:end;text-align:end}}.gst{display:block}.gst-who{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-3)}.gst-att{display:grid;gap:var(--space-1);width:calc(var(--space-16) * 2.5)}.gst-att__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.gst-att__value{font-weight:600}.gst-pick{display:grid;gap:var(--space-3);max-height:calc(var(--space-16) * 4);overflow-y:auto;margin-top:var(--space-4);padding:var(--space-3) var(--space-1);border-block:1px solid var(--border)}.gst-pick__note{margin:0;font:var(--text-body-sm);color:var(--ink-muted)}.gst-pick__skel{display:flex;align-items:center;gap:var(--space-3)}.gst-add .dk-field__error{margin-top:var(--space-2)}.gsn{display:block}.gsn-date{font-weight:600;white-space:nowrap}.gsn-cell--off .gsn-date,.gsn-topic--off,.gsn-topic--off .dk-link{color:var(--ink-muted)}.gsn-topic--off,.gsn-topic--off .dk-link{text-decoration-line:line-through}.gsn-topic{overflow-wrap:anywhere}.gsn-note{display:inline-flex;align-items:center;gap:var(--space-1);font:var(--text-body-sm);color:var(--ink-muted)}.gsn-note .dk-icon{flex:none;width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.gj{display:block}.gj-table{width:auto}.gj-table th,.gj-table td{white-space:nowrap}.gj-table thead tr:first-child .gj-group{border-bottom-color:var(--border);text-align:center}.gj-name{position:sticky;inset-inline-start:0;z-index:1;background:var(--bg);text-align:start}.gj-table tbody .gj-name{padding:var(--space-3) var(--space-4) var(--space-3) var(--space-2);border-bottom:1px solid var(--border);vertical-align:middle;font:var(--text-body-sm);font-weight:600;letter-spacing:normal;color:var(--ink)}.gj-col,.gj-cell{padding-inline:var(--space-2);text-align:center}.gj-col__link{color:var(--ink-muted);text-decoration:none;border-radius:var(--radius-sm)}.gj-col__link:hover{color:var(--ink-accent);text-decoration:underline}.gj-mark{width:var(--icon-sm);height:var(--icon-sm);vertical-align:middle}.gj-mark[data-tone=success]{color:var(--success)}.gj-mark[data-tone=warning]{color:var(--warning)}.gj-mark[data-tone=danger]{color:var(--danger)}.gj-mark[data-tone=info]{color:var(--info)}.gj-mark[data-tone=neutral],.gj-none{color:var(--ink-subtle)}.gj-score,.gj-total{font-weight:600}.gj-legend{display:grid;gap:var(--space-2);margin-top:var(--space-4)}.gj-legend__line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0;font:var(--text-body-sm);color:var(--ink-muted)}.gj-legend__label{margin-inline-end:var(--space-1);font:var(--text-label);color:var(--ink)}.gj-tasks{margin:var(--space-2) 0 0;padding-inline-start:var(--space-6);font:var(--text-body-sm);color:var(--ink)}.gj-tasks li+li{margin-top:var(--space-1)}.gj-tasks__due{color:var(--ink-muted)}.gj-loading{display:grid;gap:var(--space-4);padding-top:var(--space-2)}.gj-loading__row{display:grid;grid-template-columns:calc(var(--space-16) * 2.5) minmax(0,1fr);gap:var(--space-6)}.ga{display:block}.ga-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--border)}.ga-item{display:grid;gap:var(--space-2);padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.ga-item__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.ga-item__title{margin:0;font:var(--text-h4);color:var(--ink);overflow-wrap:anywhere}.ga-item__actions{flex:none;display:flex;gap:var(--space-1);margin-top:calc(-1 * var(--space-1))}.ga-item__meta{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);margin:0;padding:0;list-style:none;font:var(--text-body-sm);color:var(--ink-muted)}.ga-item__meta li{display:inline-flex;align-items:center;gap:var(--space-1);font-variant-numeric:tabular-nums}.ga-item__meta .dk-icon{flex:none;width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.ga-file{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);font:var(--text-body-sm);color:var(--ink)}.ga-file>.dk-btn:first-child{margin-inline-start:calc(-1 * var(--space-3))}.ga-file__icon{flex:none;width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.ga-file__name{font:var(--text-code-sm);font-variant-ligatures:none;overflow-wrap:anywhere}.ga-file__size{color:var(--ink-muted);font-variant-numeric:tabular-nums}.ga-item__text>dk-markdown{max-width:var(--measure);margin-top:var(--space-2)}.ga-loading{display:grid}.ga-form{display:block;max-width:var(--measure);container-type:inline-size}.ga-form__title{margin:0;font:var(--text-h3);letter-spacing:-.005em;color:var(--ink)}.ga-form__fields{display:grid;gap:var(--space-6);margin-top:var(--space-6)}.ga-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--space-4);align-items:start}@container (width < 480px){.ga-form__row{grid-template-columns:minmax(0,1fr)}}.ga-form__actions{margin-top:var(--space-2)}@media(width<900px){.ga-form__actions>.dk-btn{width:100%}}.gc{display:block}.gc-rule{max-width:var(--measure);margin:0 0 var(--space-4);font:var(--text-body-sm);color:var(--ink-muted)}.gc-cert{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.gc-number{font:var(--text-code-sm);font-variant-ligatures:none}.seg{display:flex;flex-wrap:wrap;gap:var(--space-2)}.seg__btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--control-md);padding:0 var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:transparent;color:var(--ink);font:var(--text-label);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--dk-fast) var(--dk-ease),border-color var(--dk-fast) var(--dk-ease),color var(--dk-fast) var(--dk-ease)}.seg__btn .dk-icon{flex:none;width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.seg__btn:hover{background:var(--bg-hover);border-color:var(--border-control)}.seg__btn[aria-pressed=true] .dk-icon{color:currentColor}.seg:not(.seg--status) .seg__btn[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.seg:not(.seg--status) .seg__btn[aria-pressed=true]:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.seg--status .seg__btn[aria-pressed=true][data-tone=success]{background:var(--success-soft);border-color:var(--success);color:var(--ink-success)}.seg--status .seg__btn[aria-pressed=true][data-tone=warning]{background:var(--warning-soft);border-color:var(--warning);color:var(--ink-warning)}.seg--status .seg__btn[aria-pressed=true][data-tone=danger]{background:var(--danger-soft);border-color:var(--danger);color:var(--ink-danger)}.seg--status .seg__btn[aria-pressed=true][data-tone=neutral]{background:var(--bg-muted);border-color:var(--border-control);color:var(--ink)}.seg--sm{gap:var(--space-1)}.seg--sm .seg__btn{height:var(--control-sm);gap:var(--space-1);padding:0 var(--space-3)}.ss-top{display:flex;align-items:center;gap:var(--space-2) var(--space-4);min-height:var(--control-sm)}.ss-top>.dk-breadcrumbs{flex:1 1 auto;min-width:0}.ss-nav{flex:none;display:flex;gap:var(--space-1);margin-inline-end:calc(-1 * var(--space-3))}.ss-actions{margin-top:var(--space-4)}.ss-loading__actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.ss-loading__tabs{margin-top:var(--space-6)}.ssp{display:block}.ssp-form{display:grid;gap:var(--space-6);max-width:var(--measure);container-type:inline-size}.ssp-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--space-4);align-items:start}.ssp-row--3{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr))}@container (width < 480px){.ssp-row{grid-template-columns:minmax(0,1fr)}.ssp-row--3{grid-template-columns:repeat(2,minmax(0,1fr))}.ssp-row--3>:first-child{grid-column:1/-1}}.ssp-preview>dk-markdown{max-width:var(--measure);margin-top:var(--space-2)}@media(width<900px){.ssp-actions>.dk-btn{width:100%}}.ssa{display:block}.ssa-table td{vertical-align:middle}.ssa-note{width:100%;min-width:calc(var(--space-16) * 3)}.ssa-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);margin-top:var(--space-6)}@media(width<900px){.ssa-foot>.dk-btn{width:100%}}.ssa-summary{margin:0;font:var(--text-body-sm);color:var(--ink-muted);font-variant-numeric:tabular-nums}.ssa-unsaved{display:inline-flex;align-items:center;gap:var(--space-1);margin-inline-start:var(--space-2);font-weight:600;color:var(--ink-warning)}.ssa-unsaved .dk-icon{flex:none;width:var(--icon-sm);height:var(--icon-sm)}@container (max-width: 640px){.ssa-table td.ssa-marks{display:block}.ssa-table td.ssa-marks:before{content:none}.ssa-marks .seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-block:var(--space-1)}.ssa-marks .seg__btn{height:var(--control-md)}.ssa-note{flex:1 1 auto;min-width:0;height:var(--control-md);font:var(--text-body)}}.ssh{display:block}.ssh-form{display:grid;gap:var(--space-6);max-width:var(--measure);container-type:inline-size}.ssh-lead{margin:0;font:var(--text-body-sm);color:var(--ink-muted)}.me{display:block}.material__remove{margin-inline-start:auto;margin-block:calc(-1 * var(--space-1))}.courses-page{display:block}.courses-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4)}@media(width<900px){.courses-head>.dk-btn{width:100%}}.courses-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink)}.courses-list{margin:var(--space-8) 0 0;padding:0;list-style:none;border-top:1px solid var(--border)}.courses-list>li,.courses-list>.courses-item{border-bottom:1px solid var(--border)}.courses-item{display:grid;gap:var(--space-2);padding:var(--space-6) var(--space-3);color:var(--ink);text-decoration:none}.courses-item[href]:hover{background:var(--bg-hover)}.courses-item[href]:hover .courses-item__title{color:var(--ink-accent)}.courses-item:focus-visible{outline-offset:-2px}.courses-item__title{margin:0;font:var(--text-h3);letter-spacing:-.005em;color:var(--ink);overflow-wrap:anywhere}.courses-item__about{display:-webkit-box;max-width:var(--measure);margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;font:var(--text-body-sm);color:var(--ink-muted)}.courses-item__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);margin-top:var(--space-1);font:var(--text-body-sm);color:var(--ink-muted)}.courses-item__fact{display:inline-flex;align-items:center;gap:var(--space-1);font-variant-numeric:tabular-nums}.courses-item__fact .dk-icon{width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.courses-loading .courses-item{gap:var(--space-3)}.courses-empty{margin-top:var(--space-8)}.course-page{display:block}.course-page [id]{scroll-margin-top:calc(var(--topbar-height) + var(--space-6))}.course-head{max-width:var(--measure)}.course-head .dk-breadcrumbs{margin-bottom:var(--space-4)}.course-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink);text-wrap:balance}.course-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);margin-top:var(--space-4);font:var(--text-body-sm);color:var(--ink-muted)}.course-meta:empty{display:none}.course-meta__item{display:inline-flex;align-items:center;gap:var(--space-1);font-variant-numeric:tabular-nums}.course-meta__item .dk-icon{width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.course-about{margin-top:var(--space-6)}.course-progress{display:grid;gap:var(--space-4);margin-top:var(--space-8)}.course-progress__next{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4)}@media(width<900px){.course-progress__next>.dk-btn{width:100%}}.course-progress__lesson{min-width:0;font:var(--text-body-sm);color:var(--ink-muted)}.course-callout{margin:var(--space-8) 0 0}.course-section{margin-top:var(--space-12)}.course-section__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4)}.course-section__title{margin:0;font:var(--text-h3);letter-spacing:-.005em;color:var(--ink)}.course-section__count{display:inline-flex;align-items:center;gap:var(--space-2);font:var(--text-body-sm);color:var(--ink-muted);font-variant-numeric:tabular-nums}.course-section__desc{max-width:var(--measure);margin:var(--space-2) 0 0;font:var(--text-body-sm);color:var(--ink-muted)}.course-section__empty{margin:var(--space-4) 0 0;padding:var(--space-3);border-block:1px solid var(--border);font:var(--text-body-sm);color:var(--ink-muted)}.course-section__add{margin-top:var(--space-3)}.course-empty{margin-top:var(--space-8)}.course-lessons{container-type:inline-size;margin:var(--space-4) 0 0;padding:0;list-style:none;border-top:1px solid var(--border)}.course-lessons>li{border-bottom:1px solid var(--border)}.course-lesson{display:grid;grid-template-columns:var(--icon-md) minmax(0,1fr) auto;align-items:center;gap:var(--space-1) var(--space-3);min-height:var(--control-md);padding:var(--space-2) var(--space-3);color:var(--ink);text-decoration:none}.course-lesson[href]:hover{background:var(--bg-hover)}.course-lesson:focus-visible{outline-offset:-2px}.course-lesson__mark{display:grid;place-items:center;height:var(--space-6);font:var(--text-caption);font-variant-numeric:tabular-nums;color:var(--ink-subtle)}.course-lesson__mark .dk-icon{width:var(--icon-sm);height:var(--icon-sm)}[data-done]>.course-lesson__mark{color:var(--ink-success)}.course-lesson__title{font:var(--text-body);overflow-wrap:anywhere}.course-lesson__meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2) var(--space-3);font:var(--text-body-sm);color:var(--ink-muted);white-space:nowrap}.course-lesson__meta:empty{display:none}.course-lesson__tag{display:inline-flex;align-items:center;gap:var(--space-1);font-variant-numeric:tabular-nums}.course-lesson__tag .dk-icon{width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}@container (width < 640px){.course-lesson{grid-template-columns:var(--icon-md) minmax(0,1fr);align-items:start}.course-lesson__meta{grid-column:2;justify-content:flex-start}}.course-lesson-row{display:flex;align-items:center;padding-inline-end:var(--space-2)}.course-lesson-row:hover{background:var(--bg-hover)}.course-lesson-row>.course-lesson{flex:1;min-width:0}.course-lesson-row>.course-lesson[href]:hover{background:none}.course-folds{margin-top:var(--space-12);border-top:1px solid var(--border)}.course-fold{border-bottom:1px solid var(--border)}.course-fold__title{margin:0;font:var(--text-h3);letter-spacing:-.005em;color:var(--ink)}.course-fold__toggle{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:var(--control-md);padding:var(--space-3);border:0;border-radius:0;background:none;font:inherit;letter-spacing:inherit;color:inherit;text-align:start}.course-fold__toggle:hover{background:var(--bg-hover)}.course-fold__toggle:focus-visible{outline-offset:-2px}.course-fold__toggle>.dk-icon{flex:none;width:var(--icon-md);height:var(--icon-md);color:var(--ink-subtle);transition:transform var(--dk-base) var(--dk-ease)}.course-fold__toggle[aria-expanded=true]>.dk-icon{transform:rotate(90deg)}.course-fold__name{flex:1;min-width:0;overflow-wrap:anywhere}.course-fold__count{flex:none;font:var(--text-body-sm);color:var(--ink-muted);font-variant-numeric:tabular-nums}.course-fold__body:not([hidden]){padding-bottom:var(--space-4)}.course-fold__body .course-lessons{margin-top:var(--space-2)}.course-fold__desc{max-width:calc(var(--measure) + var(--space-3) * 2 + var(--icon-md));margin:0;padding-inline-start:calc(var(--space-3) * 2 + var(--icon-md));font:var(--text-body-sm);color:var(--ink-muted)}.course-loading{display:grid;gap:var(--space-12)}.course-loading__head{display:grid;gap:var(--space-4);max-width:var(--measure)}.course-loading__section{display:grid;gap:var(--space-3)}.course-loading__rows{border-top:1px solid var(--border)}.course-loading__rows>.dk-skeleton-row{padding-inline:var(--space-3)}.md-ui{font:var(--text-body);color:var(--ink-muted);overflow-wrap:break-word}.md-ui>:first-child{margin-top:0}.md-ui>:last-child{margin-bottom:0}.md-ui p,.md-ui ul,.md-ui ol{margin:0 0 var(--space-3)}.md-ui ul,.md-ui ol{padding-left:var(--space-6)}.md-ui strong{font-weight:600;color:var(--ink)}.ce-page{display:block}.ce-page>.dk-breadcrumbs{margin-bottom:var(--space-4)}.ce-title{margin:0;font:var(--text-h1);letter-spacing:-.015em;color:var(--ink)}.ce-callout{max-width:var(--measure);margin:var(--space-6) 0 0}.ce-callout code{font:var(--text-code-sm);font-variant-ligatures:none}.ce-form{display:grid;gap:var(--space-6);max-width:var(--measure);margin-top:var(--space-8)}.ce-preview>dk-markdown{margin-top:var(--space-2)}@media(width<900px){.ce-actions>.dk-btn{width:100%}}.ce-state{margin-top:var(--space-8)}.ce-loading{display:grid;gap:var(--space-4);max-width:var(--measure)}.ce-loading__field{display:grid;gap:var(--space-2);margin-top:var(--space-2)}.ce-sections{display:block;margin-top:var(--space-12);padding-top:var(--space-8);border-top:1px solid var(--border)}.ce-h2{margin:0 0 var(--space-4);font:var(--text-h3);letter-spacing:-.005em;color:var(--ink)}.ce-sec{overflow-wrap:anywhere}.ce-sec__num{color:var(--ink-muted);font-variant-numeric:tabular-nums}.ce-sec__actions{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-1)}.ce-sec-row{display:grid;grid-template-columns:minmax(0,1fr) 12ch;gap:var(--space-6) var(--space-4);align-items:start}@container (width < 400px){.ce-sec-row{grid-template-columns:minmax(0,1fr)}}.le-page{display:block}.le-page>.dk-breadcrumbs{margin-bottom:var(--space-4)}.le-callout{max-width:var(--measure);margin:0 0 var(--space-8)}.le-callout code{font:var(--text-code-sm);font-variant-ligatures:none}.le-form{display:grid;gap:var(--space-6);max-width:var(--measure);container-type:inline-size}.le-form .dk-input--mono{font-variant-ligatures:none}.le-form--new{margin-top:var(--space-8)}.le-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6) var(--space-4);align-items:start}@container (width < 480px){.le-row{grid-template-columns:repeat(2,minmax(0,1fr))}.le-row>:last-child{grid-column:1/-1}}.le-text{margin-top:var(--space-2);padding-top:var(--space-8);border-top:1px solid var(--border)}.le-text>.ce-h2{margin-bottom:var(--space-2)}.le-lead{margin:0;font:var(--text-body-sm);color:var(--ink-muted)}.le-lead code{font:var(--text-code-sm);font-variant-ligatures:none}.le-preview>dk-markdown{margin-top:var(--space-2)}@media(width<900px){.le-actions>.dk-btn{width:100%}}.le-loading__tabs{margin-top:var(--space-6)}.lv{display:block}.lv-url{justify-self:start;font:var(--text-code-sm);font-variant-ligatures:none;overflow-wrap:anywhere}.lv-url .dk-icon{width:var(--icon-sm);height:var(--icon-sm);margin-left:var(--space-1);vertical-align:-3px}.lesson-read{min-width:0;max-width:var(--measure)}.lesson-read [id]{scroll-margin-top:calc(var(--topbar-height) + var(--space-6))}.lesson-head .dk-breadcrumbs{margin-bottom:var(--space-4)}.lesson-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);margin-top:var(--space-4);font:var(--text-body-sm);color:var(--ink-muted)}.lesson-lead{margin-top:var(--space-6)}.lesson-meta__item{display:inline-flex;align-items:center;gap:var(--space-1);font-variant-numeric:tabular-nums}.lesson-meta__item .dk-icon{width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.lesson-video{margin-top:var(--space-8)}.lesson-section{margin-top:var(--space-12)}.lesson-section>.dk-prose:first-child{margin-bottom:var(--space-4)}.lesson-h3{margin:var(--space-4) 0 0;font:var(--text-h3);color:var(--ink)}.lesson-h4{margin:0 0 var(--space-2);font:var(--text-h4);color:var(--ink)}.lesson-foot{display:grid;gap:var(--space-6);margin-top:var(--space-16);padding-top:var(--space-8);border-top:1px solid var(--border)}.lesson-foot__done{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}@media(width<900px){.lesson-foot__done>.dk-btn{width:100%}}.lesson-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}@media(width<900px){.lesson-pager{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}}.lesson-pager__link{display:flex;align-items:center;gap:var(--space-3);min-height:var(--control-md);padding:var(--space-3);border-radius:var(--radius-md);color:var(--ink);text-decoration:none}.lesson-pager__link:hover{background:var(--bg-hover)}.lesson-pager__link>.dk-icon{flex:none;width:var(--icon-md);height:var(--icon-md);color:var(--ink-subtle)}.lesson-pager__link--next{grid-column:2;justify-content:flex-end;text-align:right}@media(width<900px){.lesson-pager__link--next{grid-column:auto}}.lesson-pager__text{display:grid;gap:var(--space-1);min-width:0}.lesson-pager__label{font:var(--text-caption);color:var(--ink-muted)}.lesson-pager__title{font:var(--text-label);color:var(--ink-accent);overflow-wrap:anywhere}.lesson-loading{display:grid;gap:var(--space-4)}.lesson-loading__video{margin-block:var(--space-4)}.lesson-loading__video>.dk-skeleton{height:auto;aspect-ratio:16/9}.lesson-rail__loading{display:grid;gap:var(--space-4);padding:0 var(--space-3)}.lesson-hw{display:grid;gap:var(--space-4)}.lesson-hw__facts{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);margin:0;padding:0;list-style:none;font:var(--text-body-sm);color:var(--ink-muted)}.lesson-hw__facts li{display:inline-flex;align-items:center;gap:var(--space-2)}.lesson-hw__facts strong{font-weight:600;color:var(--ink)}.lesson-hw__facts .dk-icon{width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.lesson-hw__text{margin:0;font:var(--text-body-sm);color:var(--ink-muted)}.lesson-hw__work,.lesson-hw__form{display:grid;gap:var(--space-4);margin-top:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--border)}.lesson-hw__work>.lesson-h3:first-child,.lesson-hw__form>.lesson-h3:first-child{margin-top:0}.lesson-hw__status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.lesson-hw__when{font:var(--text-body-sm);color:var(--ink-muted);font-variant-numeric:tabular-nums}.lesson-hw__score{font:var(--text-label);color:var(--ink);font-variant-numeric:tabular-nums}.lesson-hw__repo{display:flex;align-items:center;gap:var(--space-2);min-width:0;margin:0;font:var(--text-body-sm)}.lesson-hw__repo .dk-icon{flex:none;width:var(--icon-sm);height:var(--icon-sm);color:var(--ink-subtle)}.lesson-hw__repo a{min-width:0;overflow-wrap:anywhere;font-family:var(--font-mono)}.lesson-hw__review{padding-top:var(--space-4);border-top:1px solid var(--border)}@media(width<900px){.lesson-hw__submit{width:100%}}.material-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--border)}.material{display:grid;gap:var(--space-3);padding-block:var(--space-4);border-bottom:1px solid var(--border)}.material__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.material__title{font:var(--text-label)}.material__title .dk-icon{width:var(--icon-sm);height:var(--icon-sm);margin-left:var(--space-1);vertical-align:-3px}span.material__title{color:var(--ink)}.material__group{font:var(--text-caption);color:var(--ink-muted)}.stored-file{display:block;container-type:inline-size}.stored-file>*+*{margin-top:var(--space-3)}.stored-file__row{border-top:1px solid var(--border)}.material .stored-file__row{border-block:0}.stored-file__actions{justify-content:flex-end;gap:var(--space-2)}@container (width < 560px){.stored-file__row{grid-template-columns:auto minmax(0,1fr)}.stored-file__actions{grid-column:1/-1;justify-content:flex-start}}.cert-page{display:block}.cert-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);max-width:calc(var(--space-24) * 9);margin:0 auto var(--space-6)}@media(width<900px){.cert-bar>.dk-btn{width:100%}}.cert-bar__hint{flex:1 1 calc(var(--space-24) * 2);margin:0;font:var(--text-body-sm);color:var(--ink-muted)}@media(width<900px){.cert-bar__hint{flex-basis:100%}}.cert-bar__action{width:calc(var(--space-16) * 2 + var(--space-2))}@media(width<900px){.cert-bar__action{width:100%}}.cert{position:relative;display:block;max-width:calc(var(--space-24) * 9);margin:0 auto;padding:var(--space-12) var(--space-16);text-align:center;background:var(--surface);border:var(--space-2) double var(--border-control);outline:1px solid var(--border);outline-offset:calc(-1 * (var(--space-2) + var(--space-3)))}@media(width<900px){.cert{padding:var(--space-8) var(--space-6)}}.cert__brand{margin:0 0 var(--space-6);font:var(--text-overline);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-subtle)}.cert__title{margin:0 0 var(--space-6);padding-inline-start:.25em;font:var(--text-display);letter-spacing:.25em;text-transform:uppercase;color:var(--ink)}@media(width<900px){.cert__title{padding-inline-start:.12em;font:var(--text-h1);letter-spacing:.12em}}.cert__lead{margin:var(--space-1) 0;font:var(--text-body);color:var(--ink-muted)}.cert__name{display:inline-block;margin:var(--space-3) 0;padding:0 var(--space-8) var(--space-2);border-bottom:1px solid var(--border-strong);font:var(--text-h1);color:var(--ink);overflow-wrap:anywhere}@media(width<900px){.cert__name{padding-inline:var(--space-2);font:var(--text-h2)}}.cert__course{margin:var(--space-3) 0 var(--space-8);font:var(--text-h2);color:var(--ink);overflow-wrap:anywhere}@media(width<900px){.cert__course{font:var(--text-h3)}}.cert__facts{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4) var(--space-10);margin:0 0 var(--space-8)}.cert__facts>div{display:grid;justify-items:center;gap:var(--space-1)}.cert__facts dt{font:var(--text-overline);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle)}.cert__facts dd{margin:0;font:var(--text-h4);color:var(--ink)}.cert__number{margin:0;font:var(--text-code);font-weight:600;font-variant-ligatures:none;color:var(--ink)}.cert__verify{margin:var(--space-2) 0 0;font:var(--text-body-sm);color:var(--ink-subtle);overflow-wrap:anywhere}.cert__url{font:var(--text-code-sm);font-variant-ligatures:none}.cert__stamp{position:absolute;top:45%;left:50%;width:max-content;max-width:90%;margin:0;padding:var(--space-1) var(--space-6);border:var(--space-1) solid var(--danger);background:var(--surface);font:var(--text-h1);text-align:center;text-transform:uppercase;color:var(--ink-danger);transform:translate(-50%,-50%) rotate(-12deg)}.cert__stamp .dk-icon{width:1em;height:1em;margin-inline-end:var(--space-2);vertical-align:-.125em}@media(width<900px){.cert__stamp{padding-inline:var(--space-3);font:var(--text-h3)}}.cert--loading{display:grid;justify-items:center;gap:var(--space-4)}.cert--loading .cert__facts{margin:var(--space-2) 0}.cert--loading .cert__facts>div{gap:var(--space-2)}.cert-empty{margin-top:var(--space-8)}@media print{@page{size:A4 landscape;margin:10mm}body{background:var(--surface)}.shell-topbar,.cert-bar{display:none}.shell-main{padding:0;max-width:none}.cert{max-width:none}}
