@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}a{color:var(--brand-secondary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{text-wrap:balance}p,li{text-wrap:pretty}.tnum,table td,table th,time,kbd{font-variant-numeric:tabular-nums}::selection{background:var(--brand-accent);color:var(--text-primary)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in srgb,var(--brand-accent)26%,transparent)}}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{box-shadow:var(--focus-ring);outline:none}}@layer components{.ui-container{width:100%;padding-inline:var(--gutter);max-width:var(--content-max);margin-inline:auto}.ui-container-sm{max-width:720px}.ui-container-md{max-width:960px}.ui-container-lg{max-width:var(--content-max)}.ui-container-xl{max-width:var(--content-max-wide)}.ui-container-full{max-width:none}.ui-section{padding-block:var(--section-y)}.ui-section-sm{padding-block:calc(var(--section-y)*.55)}.ui-section-lg{padding-block:calc(var(--section-y)*1.3)}.ui-section-flush{padding-block:0}.ui-section-page{background:var(--page)}.ui-section-surface{background:var(--surface)}.ui-section-soft{background:var(--surface-soft)}.ui-section-divide+.ui-section-divide{border-top:1px solid var(--border-hairline)}.ui-prose{max-width:var(--measure);font-size:var(--fs-base);line-height:var(--lh-relaxed);color:var(--text-primary)}.ui-prose-narrow{max-width:var(--measure-narrow)}.ui-prose-wide{max-width:var(--measure-wide)}.ui-eyebrow{align-items:center;gap:var(--space-2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--accent-text);display:inline-flex}.ui-title-1{font-size:var(--fs-3xl);line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);font-weight:var(--fw-black);color:var(--text-primary);margin:0}.ui-title-2{font-size:var(--fs-2xl);line-height:var(--lh-snug);letter-spacing:var(--tracking-tight);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.ui-title-3{font-size:var(--fs-xl);line-height:var(--lh-snug);letter-spacing:var(--tracking-snug);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.ui-lead{font-size:var(--fs-md);line-height:var(--lh-relaxed);color:var(--text-muted);max-width:var(--measure);margin:0}.ui-meta{font-size:var(--fs-xs);line-height:var(--lh-normal);color:var(--text-subtle)}.ui-btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);font-family:inherit;font-weight:var(--fw-semibold);letter-spacing:var(--tracking-snug);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),box-shadow var(--motion-fast),transform var(--dur-instant)var(--ease-out);border:1px solid #0000;line-height:1;text-decoration:none;display:inline-flex;position:relative}.ui-btn:hover{text-decoration:none}.ui-btn:active:not(:disabled):not([aria-disabled=true]){transform:translateY(1px)}.ui-btn:disabled,.ui-btn[aria-disabled=true]{cursor:not-allowed;opacity:.55;box-shadow:none;transform:none}.ui-btn:focus-visible{box-shadow:var(--focus-ring)}.ui-btn-sm{height:32px;padding-inline:var(--space-3);font-size:var(--fs-xs);border-radius:var(--radius-sm);gap:var(--space-1)}.ui-btn-md{height:40px;padding-inline:var(--space-4);font-size:var(--fs-sm)}.ui-btn-lg{height:48px;padding-inline:var(--space-6);font-size:var(--fs-base);border-radius:var(--radius-lg)}.ui-btn-block{width:100%}.ui-btn-icon.ui-btn-sm{width:32px;padding-inline:0}.ui-btn-icon.ui-btn-md{width:40px;padding-inline:0}.ui-btn-icon.ui-btn-lg{width:48px;padding-inline:0}.ui-btn-primary{background:var(--brand-primary);color:#fff;box-shadow:var(--shadow-1)}.ui-btn-primary:hover:not(:disabled){background:var(--brand-primary-dark);color:#fff;box-shadow:var(--shadow-2)}.ui-btn-accent{background:var(--brand-accent);color:var(--on-accent);box-shadow:var(--shadow-1)}.ui-btn-accent:hover:not(:disabled){background:var(--brand-accent-dark);color:var(--on-accent);box-shadow:var(--shadow-2)}.ui-btn-secondary{background:var(--surface);color:var(--text-primary);border-color:var(--border-soft);box-shadow:var(--shadow-1)}.ui-btn-secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-strong);color:var(--text-primary)}.ui-btn-ghost{color:var(--text-muted);background:0 0}.ui-btn-ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ui-btn-quiet{background:var(--surface-muted);color:var(--text-primary)}.ui-btn-quiet:hover:not(:disabled){background:var(--surface-active)}.ui-btn-danger{background:var(--danger-solid);color:#fff;box-shadow:var(--shadow-1)}.ui-btn-danger:hover:not(:disabled){background:var(--danger-solid);color:#fff;box-shadow:var(--shadow-2)}@supports (color:color-mix(in lab, red, red)){.ui-btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger-solid)82%,#000)}}.ui-btn-danger:focus-visible{box-shadow:0 0 0 var(--focus-ring-offset)var(--surface),0 0 0 calc(var(--focus-ring-offset) + var(--focus-ring-w))var(--danger-solid)}@supports (color:color-mix(in lab, red, red)){.ui-btn-danger:focus-visible{box-shadow:0 0 0 var(--focus-ring-offset)var(--surface),0 0 0 calc(var(--focus-ring-offset) + var(--focus-ring-w))color-mix(in srgb,var(--danger-solid)70%,transparent)}}.ui-btn-ico{flex:none;align-items:center;display:inline-flex}.ui-btn-ico .material-icons{font-size:1.2em}.ui-btn-label{text-overflow:ellipsis;min-width:0;overflow:hidden}.ui-btn-loading{pointer-events:none}.ui-btn-loading .ui-btn-label,.ui-btn-loading .ui-btn-ico{visibility:hidden}.ui-btn-spinner{place-items:center;display:grid;position:absolute;inset:0}.ui-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:1em;height:1em;animation:.62s linear infinite ui-spin;display:inline-block}@keyframes ui-spin{to{transform:rotate(360deg)}}.ui-iconbtn{border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:background var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast);background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;display:inline-flex}.ui-iconbtn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ui-iconbtn:disabled{opacity:.5;cursor:not-allowed}.ui-iconbtn:focus-visible{box-shadow:var(--focus-ring)}.ui-iconbtn-sm{border-radius:var(--radius-sm);width:30px;height:30px}.ui-iconbtn-md{width:38px;height:38px}.ui-iconbtn-lg{border-radius:var(--radius-lg);width:44px;height:44px}.ui-iconbtn-sm .material-icons{font-size:17px}.ui-iconbtn-md .material-icons{font-size:20px}.ui-iconbtn-lg .material-icons{font-size:22px}.ui-iconbtn-outline{border-color:var(--border-soft);background:var(--surface)}.ui-iconbtn-outline:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-hover)}.ui-iconbtn-solid{background:var(--brand-primary);color:#fff;box-shadow:var(--shadow-1)}.ui-iconbtn-solid:hover:not(:disabled){background:var(--brand-primary-dark);color:#fff}.ui-iconbtn-danger:hover:not(:disabled){background:var(--danger-surface);color:var(--danger)}.ui-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);color:inherit;transition:border-color var(--motion-base),box-shadow var(--motion-base),transform var(--motion-base),background var(--motion-base);display:block;position:relative}.ui-card-flat{box-shadow:none}.ui-card-raised{box-shadow:var(--shadow-2)}.ui-card-floating{box-shadow:var(--shadow-3)}.ui-card-soft{background:var(--surface-soft)}.ui-card-sunken{background:var(--surface-sunken);border-color:var(--border-hairline)}.ui-card-accent{border-left:3px solid var(--brand-accent);border-radius:var(--radius-sm)var(--radius-lg)var(--radius-lg)var(--radius-sm)}.ui-card-pad-none{padding:0}.ui-card-pad-sm{padding:var(--space-4)}.ui-card-pad-md{padding:var(--space-6)}.ui-card-pad-lg{padding:var(--space-7)}.ui-card-interactive{cursor:pointer}.ui-card-interactive:hover{border-color:var(--accent-border);box-shadow:var(--shadow-3);text-decoration:none;transform:translateY(-2px)}.ui-card-interactive:focus-visible{box-shadow:var(--focus-ring)}.ui-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.ui-card-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);letter-spacing:var(--tracking-snug);line-height:var(--lh-snug);color:var(--text-primary);margin:0}.ui-card-desc{margin:var(--space-2)0 0;font-size:var(--fs-sm);line-height:var(--lh-relaxed);color:var(--text-muted)}.ui-card-body>:first-child{margin-top:0}.ui-card-body>:last-child{margin-bottom:0}.ui-card-footer{align-items:center;gap:var(--space-3);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border-hairline);display:flex}.ui-badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);white-space:nowrap;vertical-align:middle;border:1px solid #0000;line-height:1;display:inline-flex}.ui-badge-sm{height:20px;padding-inline:var(--space-2);font-size:var(--fs-2xs)}.ui-badge-md{height:24px;padding-inline:var(--space-3);font-size:var(--fs-xs)}.ui-badge-neutral{background:var(--surface-muted);color:var(--text-muted)}.ui-badge-brand{background:var(--primary-soft);color:var(--primary-text);border-color:var(--primary-border)}.ui-badge-accent{background:var(--accent-soft);color:var(--accent-text);border-color:var(--accent-border)}.ui-badge-success{background:var(--success-surface);color:var(--success);border-color:var(--success-border)}.ui-badge-warning{background:var(--warning-surface);color:var(--warning);border-color:var(--warning-border)}.ui-badge-danger{background:var(--danger-surface);color:var(--danger);border-color:var(--danger-border)}.ui-badge-info{background:var(--info-surface);color:var(--info);border-color:var(--info-border)}.ui-badge-solid{background:var(--brand-accent);color:var(--on-accent);border-color:#0000}.ui-badge-outline{color:var(--text-muted);border-color:var(--border-soft);background:0 0}.ui-badge-dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.ui-badge .material-icons{font-size:14px}.ui-field{display:block}.ui-field+.ui-field{margin-top:var(--space-5)}.ui-label{margin-bottom:var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);letter-spacing:var(--tracking-snug);display:block}.ui-label-optional{margin-left:var(--space-2);font-weight:var(--fw-regular);color:var(--text-subtle)}.ui-hint{margin:var(--space-2)0 0;font-size:var(--fs-xs);line-height:var(--lh-normal);color:var(--text-subtle)}.ui-error{align-items:center;gap:var(--space-1);margin:var(--space-2)0 0;font-size:var(--fs-xs);line-height:var(--lh-normal);color:var(--danger);font-weight:var(--fw-medium);display:flex}.ui-error .material-icons{font-size:15px}.ui-input{width:100%;min-height:40px;padding:var(--space-2)var(--space-3);background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);color:var(--text-primary);font:inherit;font-size:var(--fs-sm);line-height:var(--lh-normal);transition:border-color var(--motion-fast),box-shadow var(--motion-fast),background var(--motion-fast);outline:none;display:block}.ui-input::placeholder{color:var(--text-subtle)}.ui-input:hover:not(:disabled):not(:focus){border-color:var(--border-strong)}.ui-input:focus,.ui-input:focus-visible{border-color:var(--brand-accent);box-shadow:0 0 0 3px var(--focus-ring-color)}.ui-input:disabled{background:var(--surface-muted);color:var(--text-subtle);cursor:not-allowed}.ui-input-invalid,.ui-input[aria-invalid=true]{border-color:var(--danger-border)}.ui-input-invalid:focus,.ui-input[aria-invalid=true]:focus{border-color:var(--danger-solid);box-shadow:0 0 0 3px var(--danger-solid)}@supports (color:color-mix(in lab, red, red)){:is(.ui-input-invalid:focus,.ui-input[aria-invalid=true]:focus){box-shadow:0 0 0 3px color-mix(in srgb,var(--danger-solid)24%,transparent)}}.ui-input-sm{min-height:32px;font-size:var(--fs-xs);border-radius:var(--radius-sm)}.ui-input-lg{min-height:48px;font-size:var(--fs-base);padding-inline:var(--space-4);border-radius:var(--radius-lg)}.ui-textarea{resize:vertical;min-height:120px;line-height:var(--lh-relaxed)}.ui-select{appearance:none;padding-right:var(--space-8);cursor:pointer;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:right var(--space-4)center,right calc(var(--space-4) - 5px)center;background-repeat:no-repeat;background-size:5px 5px,5px 5px}.ui-input-group{align-items:center;display:flex;position:relative}.ui-input-group .ui-input{padding-left:var(--space-9)}.ui-input-icon{left:var(--space-3);color:var(--text-subtle);pointer-events:none;display:inline-flex;position:absolute}.ui-input-icon .material-icons{font-size:18px}.ui-tablist{align-items:stretch;gap:var(--space-1);border-bottom:1px solid var(--border-soft);scrollbar-width:none;display:flex;overflow-x:auto}.ui-tablist::-webkit-scrollbar{display:none}.ui-tab{align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-4);color:var(--text-muted);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:color var(--motion-fast),border-color var(--motion-fast);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;text-decoration:none;display:inline-flex;position:relative}.ui-tab:hover{color:var(--text-primary);text-decoration:none}.ui-tab[aria-selected=true],.ui-tab.is-active{color:var(--text-primary);border-bottom-color:var(--brand-accent)}.ui-tab:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);z-index:1;position:relative}.ui-tab .material-icons{font-size:18px}.ui-tabpanel:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-md);outline:none}.ui-tablist-segmented{border:1px solid var(--border-hairline);border-radius:var(--radius-md);background:var(--chrome-track);gap:2px;padding:3px;display:inline-flex;overflow-x:auto}.ui-tablist-segmented .ui-tab{padding:var(--space-2)var(--space-4);border-radius:var(--radius-sm);font-size:var(--fs-xs);border-bottom:0;margin-bottom:0}.ui-tablist-segmented .ui-tab[aria-selected=true],.ui-tablist-segmented .ui-tab.is-active{background:var(--chrome-chip);color:var(--text-primary);box-shadow:var(--shadow-1)}.ui-callout{align-items:flex-start;gap:var(--space-3);padding:var(--space-4)var(--space-5);border:1px solid var(--border-soft);border-radius:var(--radius-sm)var(--radius-md)var(--radius-md)var(--radius-sm);background:var(--surface-soft);color:var(--text-primary);font-size:var(--fs-sm);line-height:var(--lh-relaxed);border-left-width:3px;display:flex}.ui-callout+.ui-callout{margin-top:var(--space-4)}.ui-callout-icon{flex:none;margin-top:1px;display:inline-flex}.ui-callout-icon .material-icons{font-size:19px}.ui-callout-body{flex:auto;min-width:0}.ui-callout-title{margin:0 0 var(--space-1);font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:var(--tracking-snug)}.ui-callout-body>p{margin:0}.ui-callout-body>p+p{margin-top:var(--space-2)}.ui-callout-note{background:var(--info-surface);border-color:var(--info-border);border-left-color:var(--info-solid);color:var(--info)}.ui-callout-tip{background:var(--success-surface);border-color:var(--success-border);border-left-color:var(--brand-accent);color:var(--success)}.ui-callout-warning{background:var(--warning-surface);border-color:var(--warning-border);border-left-color:var(--warning-solid);color:var(--warning)}.ui-callout-danger{background:var(--danger-surface);border-color:var(--danger-border);border-left-color:var(--danger-solid);color:var(--danger)}.ui-callout-neutral{background:var(--surface-soft);border-left-color:var(--border-strong);color:var(--text-primary)}.ui-progress{width:100%;display:block}.ui-progress-meta{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-2);font-size:var(--fs-xs);color:var(--text-muted);display:flex}.ui-progress-value{font-weight:var(--fw-bold);color:var(--text-primary);font-variant-numeric:tabular-nums}.ui-progress-track{background:var(--surface-muted);border-radius:var(--radius-pill);width:100%;position:relative;overflow:hidden}.ui-progress-sm .ui-progress-track{height:4px}.ui-progress-md .ui-progress-track{height:7px}.ui-progress-lg .ui-progress-track{height:10px}.ui-progress-fill{border-radius:inherit;background:var(--brand-accent);height:100%;transition:width var(--motion-slow);display:block}.ui-progress-brand .ui-progress-fill{background:var(--brand-primary)}.ui-progress-warning .ui-progress-fill{background:var(--warning-solid)}.ui-progress-danger .ui-progress-fill{background:var(--danger-solid)}.ui-skeleton{background:var(--surface-muted);border-radius:var(--radius-sm);display:block;position:relative;overflow:hidden}.ui-skeleton:after{content:"";background:linear-gradient(90deg,transparent,var(--surface),transparent);animation:ui-shimmer 1.4s var(--ease-in-out)infinite;position:absolute;inset:0;transform:translate(-100%)}@supports (color:color-mix(in lab, red, red)){.ui-skeleton:after{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--surface)70%,transparent),transparent)}}@keyframes ui-shimmer{to{transform:translate(100%)}}.ui-skeleton-text{border-radius:var(--radius-xs);height:.75em;margin-block:.25em}.ui-skeleton-text:last-child{width:62%}.ui-skeleton-circle{border-radius:50%}.ui-skeleton-block{border-radius:var(--radius-lg)}.ui-skeleton-group>*+*{margin-top:var(--space-2)}.ui-empty{text-align:center;align-items:center;gap:var(--space-3);padding:var(--space-9)var(--space-5);color:var(--text-muted);flex-direction:column;display:flex}.ui-empty-compact{padding:var(--space-6)var(--space-4)}.ui-empty-icon{border-radius:var(--radius-lg);background:var(--accent-soft);width:52px;height:52px;color:var(--accent-text);margin-bottom:var(--space-1);justify-content:center;align-items:center;display:inline-flex}.ui-empty-icon .material-icons{font-size:26px}.ui-empty-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);letter-spacing:var(--tracking-snug);color:var(--text-primary);margin:0}.ui-empty-desc{max-width:46ch;font-size:var(--fs-sm);line-height:var(--lh-relaxed);color:var(--text-muted);margin:0}.ui-empty-actions{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.ui-divider{background:var(--border-hairline);height:1px;margin-block:var(--space-6);border:0}.ui-kbd{min-width:20px;height:20px;padding-inline:var(--space-1);border:1px solid var(--border-soft);border-radius:var(--radius-xs);background:var(--surface);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:var(--fw-bold);border-bottom-width:2px;justify-content:center;align-items:center;display:inline-flex}.ui-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ui-scroll-x{scrollbar-width:thin;-webkit-overflow-scrolling:touch;overflow-x:auto}}@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.z-75{z-index:75}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.mt-10{margin-top:calc(var(--spacing)*10)}.mt-\[var\(--space-1\)\]{margin-top:var(--space-1)}.mt-\[var\(--space-2\)\]{margin-top:var(--space-2)}.mt-\[var\(--space-3\)\]{margin-top:var(--space-3)}.mt-\[var\(--space-4\)\]{margin-top:var(--space-4)}.mt-\[var\(--space-5\)\]{margin-top:var(--space-5)}.mt-\[var\(--space-7\)\]{margin-top:var(--space-7)}.mt-\[var\(--space-8\)\]{margin-top:var(--space-8)}.mr-\[var\(--space-1\)\]{margin-right:var(--space-1)}.mb-\[var\(--space-2\)\]{margin-bottom:var(--space-2)}.mb-\[var\(--space-3\)\]{margin-bottom:var(--space-3)}.mb-\[var\(--space-4\)\]{margin-bottom:var(--space-4)}.mb-\[var\(--space-5\)\]{margin-bottom:var(--space-5)}.mb-\[var\(--space-7\)\]{margin-bottom:var(--space-7)}.ml-\[var\(--space-2\)\]{margin-left:var(--space-2)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-auto{height:auto}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.resize{resize:both}.list-none{list-style-type:none}.flex-col{flex-direction:column}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-\[var\(--space-1\)\]{gap:var(--space-1)}.gap-\[var\(--space-2\)\]{gap:var(--space-2)}.gap-\[var\(--space-3\)\]{gap:var(--space-3)}.gap-\[var\(--space-4\)\]{gap:var(--space-4)}:where(.space-y-\[var\(--space-1\)\]>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-1)*var(--tw-space-y-reverse));margin-block-end:calc(var(--space-1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-\[var\(--space-2\)\]>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-2)*var(--tw-space-y-reverse));margin-block-end:calc(var(--space-2)*calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[var\(--success-border\)\]{border-color:var(--success-border)}.bg-\[var\(--success-surface\)\]{background-color:var(--success-surface)}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-\[var\(--surface-soft\)\]{background-color:var(--surface-soft)}.p-0{padding:calc(var(--spacing)*0)}.p-8{padding:calc(var(--spacing)*8)}.p-\[var\(--space-6\)\]{padding:var(--space-6)}.align-middle{vertical-align:middle}.text-\[length\:var\(--fs-base\)\]{font-size:var(--fs-base)}.text-\[length\:var\(--fs-sm\)\]{font-size:var(--fs-sm)}.text-\[length\:var\(--fs-xs\)\]{font-size:var(--fs-xs)}.font-\[var\(--fw-semibold\)\]{--tw-font-weight:var(--fw-semibold);font-weight:var(--fw-semibold)}.\[font-weight\:var\(--fw-bold\)\]{font-weight:var(--fw-bold)}.\[font-weight\:var\(--fw-regular\)\]{font-weight:var(--fw-regular)}.\[font-weight\:var\(--fw-semibold\)\]{font-weight:var(--fw-semibold)}.text-\[var\(--brand-secondary\)\]{color:var(--brand-secondary)}.text-\[var\(--success\)\]{color:var(--success)}.text-\[var\(--text-muted\)\]{color:var(--text-muted)}.text-\[var\(--text-primary\)\]{color:var(--text-primary)}.text-\[var\(--text-subtle\)\]{color:var(--text-subtle)}.text-\[var\(--warning\)\]{color:var(--warning)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:text-\[var\(--accent-text\)\]:hover{color:var(--accent-text)}.hover\:underline:hover{text-decoration-line:underline}}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}:root{--brand-primary:#2e3192;--brand-primary-dark:#1f2270;--brand-accent:#0e7c70;--brand-accent-dark:#095f55;--brand-secondary:#0071bc;--brand-dark:#1a1b39;--page:#f6f7fb;--on-accent:#fff;--footer-bg:#1a1b39;--surface:#fff;--surface-soft:#f7f8fb;--surface-muted:#eef0f5;--surface-code:#f6f8fa;--border-soft:#e2e5ec;--text-primary:#1f2430;--text-muted:#555a6e;--text-subtle:#7c8398;--font-sans:var(--font-inter),"Inter",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:var(--font-geist-mono),"JetBrains Mono","SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;--fs-2xs:.6875rem;--fs-xs:clamp(.75rem,.735rem + .07vw,.8125rem);--fs-sm:clamp(.8125rem,.79rem + .11vw,.875rem);--fs-base:clamp(.9375rem,.905rem + .16vw,1.0625rem);--fs-md:clamp(1rem,.96rem + .2vw,1.125rem);--fs-lg:clamp(1.0625rem,1.01rem + .27vw,1.25rem);--fs-xl:clamp(1.1875rem,1.1rem + .44vw,1.4375rem);--fs-2xl:clamp(1.375rem,1.24rem + .67vw,1.75rem);--fs-3xl:clamp(1.625rem,1.4rem + 1.11vw,2.25rem);--fs-4xl:clamp(1.9375rem,1.55rem + 1.94vw,3rem);--fs-5xl:clamp(2.25rem,1.63rem + 3.1vw,3.75rem);--lh-none:1;--lh-tight:1.16;--lh-snug:1.32;--lh-normal:1.5;--lh-relaxed:1.7;--lh-loose:1.8;--tracking-tighter:-.024em;--tracking-tight:-.014em;--tracking-snug:-.006em;--tracking-normal:0em;--tracking-wide:.02em;--tracking-caps:.075em;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-black:800;--measure-narrow:56ch;--measure:68ch;--measure-wide:78ch;--space-0:0rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:2rem;--space-8:2.5rem;--space-9:3rem;--space-10:4rem;--space-11:5rem;--space-12:6rem;--gutter:clamp(1rem,.55rem + 2.2vw,2.25rem);--section-y:clamp(2.5rem,1.6rem + 4.4vw,5rem);--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-2xl:28px;--radius-pill:999px;--shadow-1:0 1px 1px #14182c0a,0 1px 2px -1px #14182c14;--shadow-2:0 1px 2px #14182c0d,0 4px 10px -6px #14182c1f;--shadow-3:0 2px 4px -2px #14182c0f,0 12px 24px -14px #14182c2e;--shadow-4:0 4px 8px -4px #14182c14,0 24px 48px -24px #14182c3d;--shadow-5:0 8px 16px -8px #14182c1f,0 40px 80px -32px #14182c4d;--shadow-inset:inset 0 1px 0 #fff9;--focus-ring-w:2px;--focus-ring-offset:2px;--focus-ring-color:var(--brand-accent);--focus-ring:0 0 0 var(--focus-ring-offset)var(--surface),0 0 0 calc(var(--focus-ring-offset) + var(--focus-ring-w))var(--focus-ring-color);--dur-instant:90ms;--dur-fast:.15s;--dur-base:.19s;--dur-slow:.26s;--ease-out:cubic-bezier(.22,1,.36,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--ease-emphasis:cubic-bezier(.34,1.28,.64,1);--motion-fast:var(--dur-fast)var(--ease-out);--motion-base:var(--dur-base)var(--ease-out);--motion-slow:var(--dur-slow)var(--ease-out);--surface-raised:var(--surface);--surface-sunken:var(--surface-muted);--chrome-track:var(--surface-muted);--chrome-chip:var(--surface);--chrome-rail-bg:var(--surface-soft);--surface-hover:var(--text-primary);--surface-active:var(--text-primary);--border-hairline:var(--border-soft);--border-strong:var(--border-soft);--overlay:#0f132675;--accent-soft:var(--brand-accent);--accent-soft-hover:var(--brand-accent);--accent-border:var(--brand-accent);--accent-text:var(--brand-accent-dark);--primary-soft:var(--brand-primary);--primary-soft-hover:var(--brand-primary);--primary-border:var(--brand-primary);--primary-text:var(--brand-primary);--success:var(--brand-accent-dark);--success-solid:var(--brand-accent);--success-surface:var(--brand-accent);--success-border:var(--brand-accent);--warning:#8a5a00;--warning-solid:#f0ad4e;--warning-surface:#fff7e6;--warning-border:#f0c887;--danger:#b3271b;--danger-solid:#c0392b;--danger-surface:#fdeceb;--danger-border:#eab3ad;--info:#0c3c63;--info-solid:var(--brand-secondary);--info-surface:#eaf4fb;--info-border:var(--brand-secondary);--on-solid:#fff;--nav-active-fg:var(--brand-primary);--header-height:60px;--nav-height:46px;--sidebar-width:268px;--content-max:1200px;--content-max-wide:1440px;--z-sticky:40;--z-notes-fab:49;--z-nav:50;--z-header:60;--z-chat-fab:65;--z-chat-dock:75;--z-notes-backdrop:76;--z-notes-drawer:77;--z-user-menu:80;--z-sheet:90;--z-palette:200;--z-chat-backdrop:998;--z-chat-wide:999;--chat-gap:18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@supports (color:color-mix(in lab, red, red)){:root{--focus-ring-color:color-mix(in srgb,var(--brand-accent)72%,transparent);--surface-hover:color-mix(in srgb,var(--text-primary)4%,var(--surface));--surface-active:color-mix(in srgb,var(--text-primary)7%,var(--surface));--border-hairline:color-mix(in srgb,var(--border-soft)62%,transparent);--border-strong:color-mix(in srgb,var(--border-soft)45%,var(--text-subtle));--accent-soft:color-mix(in srgb,var(--brand-accent)10%,var(--surface));--accent-soft-hover:color-mix(in srgb,var(--brand-accent)17%,var(--surface));--accent-border:color-mix(in srgb,var(--brand-accent)36%,var(--border-soft));--primary-soft:color-mix(in srgb,var(--brand-primary)9%,var(--surface));--primary-soft-hover:color-mix(in srgb,var(--brand-primary)15%,var(--surface));--primary-border:color-mix(in srgb,var(--brand-primary)30%,var(--border-soft));--success-surface:color-mix(in srgb,var(--brand-accent)10%,var(--surface));--success-border:color-mix(in srgb,var(--brand-accent)38%,var(--border-soft));--info-border:color-mix(in srgb,var(--brand-secondary)32%,var(--border-soft))}}:root[data-theme=dark]{--brand-primary:#6c75e0;--brand-primary-dark:#4f57c4;--brand-accent:#2dd4bf;--brand-accent-dark:#0fb5a2;--brand-secondary:#58a6ff;--brand-dark:#c5cce8;--page:#0d1224;--on-accent:#0f1426;--footer-bg:#0a0e1c;--surface:#0f1426;--surface-soft:#161b32;--surface-muted:#1f2547;--surface-code:#14182a;--border-soft:#2a325a;--text-primary:#dce1f2;--text-muted:#b3bde0;--text-subtle:#8590bc;--shadow-1:0 1px 1px #0000004d,0 1px 3px -1px #0006;--shadow-2:0 1px 2px #00000059,0 6px 14px -8px #0000008c;--shadow-3:0 2px 6px -2px #0006,0 16px 30px -16px #000000a6;--shadow-4:0 6px 12px -6px #00000073,0 30px 56px -26px #000000b8;--shadow-5:0 10px 20px -10px #00000080,0 48px 90px -34px #000c;--shadow-inset:inset 0 1px 0 #ffffff0f;--overlay:#0407129e;--surface-sunken:var(--page);--chrome-track:var(--surface-soft);--chrome-chip:var(--surface-muted);--chrome-rail-bg:var(--page);--accent-text:var(--brand-accent);--primary-text:var(--brand-primary);--nav-active-fg:var(--text-primary);--success:#7ee7d3;--success-solid:var(--brand-accent);--success-surface:#2dd4bf1a;--success-border:#2dd4bf52;--warning:#ffd99c;--warning-solid:#f0ad4e;--warning-surface:#3a2b13;--warning-border:#f0ad4e6b;--danger:#ff9a9a;--danger-solid:#e05a5a;--danger-surface:#e05a5a21;--danger-border:#e0717166;--info:#cfe4ff;--info-solid:var(--brand-secondary);--info-surface:#1d2a4f;--info-border:#58a6ff59;--on-solid:#0f1426;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{font-family:var(--font-sans);margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + var(--nav-height) + var(--space-6));-webkit-text-size-adjust:100%}body{background-color:var(--page);color:var(--text-primary);font-size:var(--fs-base);line-height:var(--lh-normal);font-synthesis-weight:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv05" 1,"ss01" 1;overflow-x:hidden}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.w3-btn{background:var(--brand-accent);color:var(--on-accent);cursor:pointer;border:none;border-radius:4px;padding:10px 18px;font-weight:600;transition:background .15s,transform .1s;display:inline-block}.w3-btn:hover{background:var(--brand-accent-dark);color:var(--on-accent);text-decoration:none}.w3-btn:active{transform:translateY(1px)}.w3-btn-outline{color:var(--brand-accent);border:2px solid var(--brand-accent);cursor:pointer;background:0 0;border-radius:4px;padding:10px 18px;font-weight:600;transition:background .15s,color .15s;display:inline-block}.w3-btn-outline:hover{background:var(--brand-accent);color:var(--on-accent);text-decoration:none}.w3-btn-primary{background:var(--brand-primary);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:10px 18px;font-weight:600;transition:background .15s;display:inline-block}.w3-btn-primary:hover{background:var(--brand-primary-dark);color:#fff;text-decoration:none}.w3-example{margin:var(--space-6)0;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden}.w3-example+.w3-example{margin-top:var(--space-5)}.cb-head{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-2)var(--space-2)var(--space-4);background:var(--surface-soft);border-bottom:1px solid var(--border-soft);min-height:42px;display:flex}.cb-title{font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-subtle);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;overflow:hidden}.cb-lang{font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--accent-text);background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:var(--radius-pill);padding:2px var(--space-2);flex:none}.cb-actions{align-items:center;gap:var(--space-1);flex:none;margin-left:auto;display:inline-flex}.cb-btn{align-items:center;gap:var(--space-2);height:30px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--text-muted);font:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap;transition:background var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast);background:0 0;border:1px solid #0000;display:inline-flex}.cb-btn:hover{background:var(--surface-hover);border-color:var(--border-soft);color:var(--text-primary);text-decoration:none}.cb-btn .material-icons{font-size:16px}.cb-btn[data-copied=true]{color:var(--success);border-color:var(--success-border);background:var(--success-surface)}.cb-desc{padding:var(--space-4)var(--space-5)0;font-size:var(--fs-sm);line-height:var(--lh-relaxed);color:var(--text-muted);max-width:var(--measure);margin:0}.cb-desc>:first-child{margin-top:0}.cb-desc>:last-child{margin-bottom:0}.w3-code{background:var(--surface-code);color:var(--text-primary);padding:var(--space-4)var(--space-5);font-family:var(--font-mono);font-size:var(--fs-sm);tab-size:2;overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch;margin:0;line-height:1.7;overflow-x:auto}.w3-code code{font:inherit;color:inherit;white-space:pre;background:0 0;border:0;padding:0}.cb-out-label{align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-5)var(--space-1);border-top:1px solid var(--border-soft);font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-subtle);margin:0;display:flex}.cb-out-label .material-icons{font-size:14px}.cb-out{padding:0 var(--space-5)var(--space-4);background:var(--surface);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-sm);white-space:pre-wrap;margin:0;line-height:1.7;overflow-x:auto}.w3-panel{border:1px solid var(--border-soft);border-left:3px solid var(--border-strong);background:var(--surface-soft);color:var(--text-primary);padding:var(--space-4)var(--space-5);border-radius:var(--radius-md);margin:var(--space-5)0;font-size:var(--fs-base);line-height:var(--lh-relaxed)}.w3-panel-note{border-left-color:var(--info-solid);background:var(--info-surface);border-color:var(--info-border);color:var(--info)}.w3-panel-tip{border-left-color:var(--brand-accent);background:var(--success-surface);border-color:var(--success-border);color:var(--success)}.w3-panel-warning{border-left-color:var(--warning-solid);background:var(--warning-surface);border-color:var(--warning-border);color:var(--warning)}.w3-panel h4{align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:inherit;display:flex}.w3-panel h4 .material-icons{font-size:16px}.w3-panel p{line-height:inherit;margin:0}.w3-panel p+p{margin-top:var(--space-3)}.w3-panel a{color:inherit;text-decoration:underline}.head-nav{background:var(--surface);border-bottom:1px solid var(--border-soft);height:var(--header-height)}.nv-skip{top:var(--space-2);left:var(--space-2);z-index:calc(var(--z-palette) + 1);padding:var(--space-2)var(--space-4);background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-3);color:var(--text-primary);font-size:var(--fs-sm);font-weight:var(--fw-semibold);transform:translateY(calc(-100% - var(--space-4)));transition:transform var(--motion-base);text-decoration:none;position:fixed}.nv-skip:focus-visible{box-shadow:var(--focus-ring),var(--shadow-3);text-decoration:none;transform:translateY(0)}.nv-bar{height:var(--header-height);z-index:var(--z-header);background:var(--surface);-webkit-backdrop-filter:saturate(180%)blur(16px);backdrop-filter:saturate(180%)blur(16px);transition:border-color var(--motion-base),box-shadow var(--motion-base),background var(--motion-base);border-bottom:1px solid #0000;position:fixed;top:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.nv-bar{background:color-mix(in srgb,var(--surface)82%,transparent)}}.nv-bar.is-scrolled{border-bottom-color:var(--border-soft);background:var(--surface);box-shadow:var(--shadow-1)}@supports (color:color-mix(in lab, red, red)){.nv-bar.is-scrolled{background:color-mix(in srgb,var(--surface)94%,transparent)}}.nv-inner{height:100%;max-width:var(--content-max-wide);padding-inline:var(--gutter);align-items:center;gap:var(--space-4);grid-template-columns:auto 1fr auto;margin:0 auto;display:grid}.nv-brand{align-items:center;gap:var(--space-2);color:var(--text-primary);border-radius:var(--radius-md);text-decoration:none;display:inline-flex}.nv-brand:hover{text-decoration:none}.nv-brand:hover .nv-brand-mark{transform:rotate(-4deg)scale(1.04)}.nv-brand-mark{border-radius:var(--radius-md);background:linear-gradient(135deg,var(--brand-primary)0%,var(--brand-accent)100%);color:#fff;width:30px;height:30px;box-shadow:var(--shadow-2);transition:transform var(--motion-base);justify-content:center;align-items:center;display:inline-flex}.nv-brand-word{font-size:1rem;font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight);color:var(--text-primary)}.nv-nav{background:var(--chrome-track);border:1px solid var(--border-hairline);border-radius:var(--radius-md);justify-self:center;align-items:center;gap:2px;padding:3px;display:inline-flex}.nv-link{padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-snug);color:var(--text-muted);transition:color var(--motion-fast),background var(--motion-fast),box-shadow var(--motion-fast);align-items:center;text-decoration:none;display:inline-flex;position:relative}.nv-link:hover{color:var(--text-primary);background:var(--surface);text-decoration:none}@supports (color:color-mix(in lab, red, red)){.nv-link:hover{background:color-mix(in srgb,var(--surface)55%,transparent)}}.nv-link.is-active{color:var(--nav-active-fg);background:var(--chrome-chip);box-shadow:var(--shadow-1)}.nv-link.is-active:hover{color:var(--nav-active-fg)}.nv-link-bar{display:none}.nv-actions{justify-self:end;align-items:center;gap:var(--space-2);display:inline-flex}.nv-search-trigger{align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-2)0 var(--space-3);background:var(--chrome-track);border-radius:var(--radius-md);color:var(--text-muted);font:inherit;font-size:var(--fs-xs);cursor:pointer;transition:border-color var(--motion-fast),color var(--motion-fast),background var(--motion-fast);border:1px solid #0000;display:inline-flex}.nv-search-trigger:hover{border-color:var(--border-strong);color:var(--text-primary);background:var(--chrome-chip)}.nv-search-trigger .material-icons{color:var(--text-subtle);font-size:18px}.nv-search-trigger:hover .material-icons{color:var(--accent-text)}.nv-search-trigger-text{text-align:left;min-width:150px}.nv-kbd{font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:var(--fw-bold);padding:2px var(--space-1);border-radius:var(--radius-xs);background:var(--surface);border:1px solid var(--border-soft);color:var(--text-subtle);line-height:1.4}.nv-menu-btn{display:none}.nv-sheet-backdrop{z-index:var(--z-sheet);background:var(--overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:nv-fade var(--dur-fast)var(--ease-out);position:fixed;inset:0}.nv-sheet{z-index:calc(var(--z-sheet) + 1);background:var(--surface);border-left:1px solid var(--border-soft);width:min(340px,88vw);box-shadow:var(--shadow-5);animation:nv-sheet-in var(--dur-slow)var(--ease-out);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}@keyframes nv-sheet-in{0%{transform:translate(100%)}to{transform:translate(0)}}.nv-sheet-head{justify-content:space-between;align-items:center;gap:var(--space-3);height:var(--header-height);padding-inline:var(--space-5)var(--space-3);border-bottom:1px solid var(--border-soft);flex:none;display:flex}.nv-sheet-title{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-subtle)}.nv-sheet-body{overscroll-behavior:contain;padding:var(--space-4)var(--space-3)var(--space-9);flex:auto;overflow-y:auto}.nv-sheet-group+.nv-sheet-group{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border-hairline)}.nv-sheet-group-label{padding:0 var(--space-3)var(--space-2);font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-subtle)}.nv-sheet-link{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--fs-sm);font-weight:var(--fw-medium);transition:background var(--motion-fast),color var(--motion-fast);text-decoration:none;display:flex}.nv-sheet-link:hover{background:var(--surface-hover);text-decoration:none}.nv-sheet-link .material-icons{color:var(--text-subtle);font-size:20px}.nv-sheet-link.is-active{background:var(--accent-soft);color:var(--accent-text);font-weight:var(--fw-semibold)}.nv-sheet-link.is-active .material-icons{color:var(--accent-text)}.nv-scroll-lock{overflow:hidden!important}@media (max-width:980px){.nv-nav{display:none}.nv-menu-btn{display:inline-flex}.nv-search-trigger-text{display:none}.nv-search-trigger{padding-inline:var(--space-2)}.nv-search-trigger .nv-kbd{display:none}}@media (max-width:540px){.nv-brand-word{display:none}.nv-inner{gap:var(--space-2)}}.nv-palette{z-index:var(--z-palette);justify-content:center;align-items:flex-start;padding-top:90px;display:flex;position:fixed;inset:0}.nv-palette-backdrop{background:var(--overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:nv-fade var(--dur-fast)var(--ease-out);position:absolute;inset:0}@keyframes nv-fade{0%{opacity:0}to{opacity:1}}.nv-palette-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-xl);width:min(680px,100vw - 32px);box-shadow:var(--shadow-5);animation:nv-pop var(--dur-base)var(--ease-out);position:relative;overflow:hidden}@keyframes nv-pop{0%{opacity:0;transform:translateY(-6px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.nv-palette-input{align-items:center;gap:var(--space-3);padding:var(--space-4)var(--space-5);border-bottom:1px solid var(--border-soft);display:flex}.nv-palette-input .material-icons{color:var(--text-subtle);font-size:21px}.nv-palette-input input{min-width:0;font:inherit;font-size:var(--fs-md);letter-spacing:var(--tracking-snug);color:var(--text-primary);background:0 0;border:0;outline:0;flex:auto}.nv-palette-input input:focus-visible{box-shadow:none}.nv-palette-input input::placeholder{color:var(--text-subtle)}.nv-palette-body{max-height:60vh;padding:8px;overflow-y:auto}.nv-palette-section{padding:6px 4px}.nv-palette-section+.nv-palette-section{border-top:1px solid var(--border-soft);margin-top:4px;padding-top:10px}.nv-palette-label{font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-subtle);padding:var(--space-1)var(--space-3)var(--space-2)}.nv-palette-row{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);color:var(--text-primary);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;transition:background var(--motion-fast),color var(--motion-fast);background:0 0;border:0;text-decoration:none;display:flex}.nv-palette-row:hover{background:var(--surface-hover);color:var(--text-primary);text-decoration:none}.nv-palette-row:hover .material-icons{color:var(--accent-text)}.nv-palette-row .material-icons{color:var(--text-subtle);transition:color var(--motion-fast);font-size:19px}.nv-palette-hint{font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--text-subtle);flex:none;margin-left:auto}.nv-palette-text{flex:auto;min-width:0}.nv-palette-title{font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.nv-palette-snippet{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;display:block;overflow:hidden}.nv-palette-none{padding:var(--space-2)var(--space-3);font-size:var(--fs-sm);color:var(--text-muted);margin:0}.nv-palette-row-btn{text-align:left;width:100%}.nv-cap{text-transform:capitalize}.nv-palette-chip{border-radius:var(--radius-sm);background:var(--accent-soft);border:1px solid var(--accent-border);width:26px;height:22px;color:var(--accent-text);font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:var(--fw-black);letter-spacing:var(--tracking-wide);justify-content:center;align-items:center;display:inline-flex}.cnav{left:0;right:0;top:var(--header-height);height:var(--nav-height);z-index:var(--z-nav);background:var(--chrome-rail-bg);-webkit-backdrop-filter:saturate(160%)blur(12px);backdrop-filter:saturate(160%)blur(12px);border-bottom:1px solid var(--border-soft);align-items:stretch;display:flex;position:fixed}@supports (color:color-mix(in lab, red, red)){.cnav{background:color-mix(in srgb,var(--chrome-rail-bg)92%,transparent)}}.cnav-inner{width:100%;max-width:var(--content-max-wide);padding-inline:max(calc(var(--gutter) - var(--space-3)),var(--space-2));align-items:stretch;min-width:0;margin-inline:auto;display:flex;position:relative}.cnav-toggle{width:38px;margin-right:var(--space-1);color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--motion-fast),color var(--motion-fast);background:0 0;border:0;flex:none;justify-content:center;align-items:center;display:none}.cnav-toggle:hover{background:var(--surface-active);color:var(--text-primary)}@media (max-width:1023px){.cnav-toggle{display:inline-flex}}.cnav-scroll{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex:auto;min-width:0;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000 100%);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000 100%)}.cnav-scroll::-webkit-scrollbar{display:none}.cnav-list{white-space:nowrap;align-items:stretch;gap:2px;height:100%;margin:0;padding:0;list-style:none;display:flex}.cnav-link{align-items:center;gap:var(--space-2);height:100%;padding-inline:var(--space-3);border-radius:var(--radius-sm)var(--radius-sm)0 0;color:var(--text-muted);font-size:var(--fs-sm);font-weight:var(--fw-medium);letter-spacing:var(--tracking-snug);transition:color var(--motion-fast),background var(--motion-fast);text-decoration:none;display:inline-flex;position:relative}.cnav-link:hover{color:var(--text-primary);background:var(--surface-active);text-decoration:none}.cnav-link.is-active{color:var(--nav-active-fg);font-weight:var(--fw-bold)}.cnav-link.is-active:after{content:"";left:var(--space-2);right:var(--space-2);background:var(--brand-accent);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:0}.cnav-roadmap{align-items:center;gap:var(--space-2);max-width:15rem;margin-right:var(--space-2);padding:var(--space-1)var(--space-2)var(--space-1)var(--space-2);border:1px solid var(--accent-border);border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-text);font-size:var(--fs-xs);font-weight:var(--fw-semibold);transition:background var(--motion-fast),border-color var(--motion-fast);align-self:center;text-decoration:none;display:inline-flex}.cnav-roadmap:hover{background:var(--accent-soft-hover);text-decoration:none}.cnav-roadmap .material-icons{font-size:15px}.cnav-roadmap-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cnav-roadmap-count{padding-inline:var(--space-1);border-radius:var(--radius-pill);background:var(--brand-accent);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;flex:none}@supports (color:color-mix(in lab, red, red)){.cnav-roadmap-count{background:color-mix(in srgb,var(--brand-accent)22%,transparent)}}.cnav-pulse{flex:none;width:7px;height:7px;display:inline-flex;position:relative}.cnav-pulse:before,.cnav-pulse:after{content:"";background:var(--warning-solid);border-radius:50%;position:absolute;inset:0}.cnav-pulse:before{animation:cnav-ping 1.8s var(--ease-in-out)infinite;opacity:.7}@keyframes cnav-ping{0%{opacity:.7;transform:scale(1)}70%,to{opacity:0;transform:scale(2.4)}}@media (prefers-reduced-motion:reduce){.cnav-pulse:before{opacity:0;animation:none}}.course-nav{background:var(--surface-soft);border-bottom:1px solid var(--border-soft);height:var(--nav-height)}.course-nav a{color:var(--text-muted)}.course-nav a:hover{background:var(--surface-active);text-decoration:none}.course-nav a.active{color:var(--nav-active-fg);font-weight:var(--fw-bold)}.ft{margin-top:var(--space-9);background:var(--footer-bg);color:#fff;--ft-hairline:#ffffff17;--ft-dim:#ffffffa8;--ft-dimmer:#ffffff75}.ft-inner{max-width:var(--content-max);padding:var(--space-10)var(--gutter)var(--space-8);gap:var(--space-8)var(--space-7);grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));margin-inline:auto;display:grid}@media (max-width:900px){.ft-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.ft-brand-col{grid-column:1/-1}}@media (max-width:520px){.ft-inner{gap:var(--space-6);grid-template-columns:minmax(0,1fr)}}.ft-brand{align-items:center;gap:var(--space-2);color:#fff;text-decoration:none;display:inline-flex}.ft-brand:hover{text-decoration:none}.ft-brand-mark{border-radius:var(--radius-md);background:linear-gradient(135deg,var(--brand-primary)0%,var(--brand-accent)100%);color:#fff;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.ft-brand-word{font-size:var(--fs-lg);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight)}.ft-blurb{margin:var(--space-4)0 0;max-width:40ch;font-size:var(--fs-sm);line-height:var(--lh-relaxed);color:var(--ft-dim)}.ft-col-title{margin:0 0 var(--space-4);font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--ft-dimmer)}.ft-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ft-link{font-size:var(--fs-sm);color:var(--ft-dim);transition:color var(--motion-fast);text-decoration:none;display:inline-block}.ft-link:hover{color:#fff;text-decoration:none}.ft-link:focus-visible{box-shadow:0 0 0 2px var(--footer-bg),0 0 0 4px var(--brand-accent);border-radius:var(--radius-xs)}@supports (color:color-mix(in lab, red, red)){.ft-link:focus-visible{box-shadow:0 0 0 2px var(--footer-bg),0 0 0 4px color-mix(in srgb,var(--brand-accent)80%,transparent)}}.ft-legal{border-top:1px solid var(--ft-hairline)}.ft-legal-inner{max-width:var(--content-max);padding:var(--space-5)var(--gutter);justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--fs-xs);color:var(--ft-dimmer);flex-wrap:wrap;margin-inline:auto;display:flex}.ft-legal-note{align-items:center;gap:var(--space-2);display:inline-flex}.ft-legal-dot{background:var(--brand-accent);border-radius:50%;width:5px;height:5px}.sidebar-scroll::-webkit-scrollbar{width:8px}.sidebar-scroll::-webkit-scrollbar-thumb{background:var(--border-soft);border-radius:4px}.content-description{color:var(--text-primary);font-size:var(--fs-base);line-height:var(--lh-relaxed);max-width:var(--measure-wide);overflow-wrap:break-word}.content-description>*{max-width:var(--measure)}.content-description>:is(pre,table,figure,img,video,iframe,hr,.w3-panel){max-width:100%}.content-description>:first-child{margin-top:0}.content-description>:last-child{margin-bottom:0}.content-description :is(h1,h2,h3,h4,h5,h6){color:var(--text-primary);font-weight:var(--fw-bold);line-height:var(--lh-snug);letter-spacing:var(--tracking-snug);margin:var(--space-7)0 var(--space-3)}.content-description :is(h1,h2){font-size:var(--fs-xl)}.content-description h3{font-size:var(--fs-lg)}.content-description :is(h4,h5,h6){font-size:var(--fs-md);font-weight:var(--fw-semibold)}.content-description p{margin:0 0 var(--space-4)}.content-description :is(strong,b){font-weight:var(--fw-semibold);color:var(--text-primary)}.content-description :is(ul,ol){margin:0 0 var(--space-4);padding-left:var(--space-6)}.content-description li{margin:0 0 var(--space-2);padding-left:var(--space-1)}.content-description li::marker{color:var(--text-subtle)}.content-description ul>li::marker{color:var(--brand-accent)}.content-description :is(ul,ol) :is(ul,ol){margin-top:var(--space-2);margin-bottom:0}.content-description dt{font-weight:var(--fw-semibold);margin-top:var(--space-4)}.content-description dd{margin:var(--space-1)0 0 var(--space-5);color:var(--text-muted)}.content-description a{color:var(--brand-secondary);text-underline-offset:.18em;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--brand-secondary);-webkit-text-decoration-color:var(--brand-secondary);-webkit-text-decoration-color:var(--brand-secondary);text-decoration-color:var(--brand-secondary);transition:text-decoration-color var(--motion-fast),color var(--motion-fast)}@supports (color:color-mix(in lab, red, red)){.content-description a{-webkit-text-decoration-color:color-mix(in srgb,var(--brand-secondary)38%,transparent);-webkit-text-decoration-color:color-mix(in srgb,var(--brand-secondary)38%,transparent);-webkit-text-decoration-color:color-mix(in srgb,var(--brand-secondary)38%,transparent);text-decoration-color:color-mix(in srgb,var(--brand-secondary)38%,transparent)}}.content-description a:hover{text-decoration-color:currentColor}.content-description code{background:var(--surface-muted);color:var(--primary-text);border:1px solid var(--border-hairline);border-radius:var(--radius-xs);font-family:var(--font-mono);overflow-wrap:break-word;padding:.1em .38em;font-size:.86em}.content-description kbd{font-family:var(--font-mono);background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-xs);color:var(--text-primary);border-bottom-width:2px;padding:.12em .42em;font-size:.82em}.content-description mark{background:var(--warning-solid);color:inherit;border-radius:var(--radius-xs);padding:0 .15em}@supports (color:color-mix(in lab, red, red)){.content-description mark{background:color-mix(in srgb,var(--warning-solid)34%,transparent)}}.content-description pre{background:var(--surface-code);border:1px solid var(--border-soft);padding:var(--space-4)var(--space-5);border-radius:var(--radius-md);margin:var(--space-6)0;overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch;font-family:var(--font-mono);font-size:var(--fs-sm);tab-size:2;line-height:1.7;overflow-x:auto}.content-description pre code{color:inherit;font-size:inherit;white-space:pre;background:0 0;border:0;border-radius:0;padding:0;font-family:inherit}.content-description blockquote{margin:var(--space-6)0;padding:var(--space-1)0 var(--space-1)var(--space-5);border-left:3px solid var(--accent-border);color:var(--text-muted);font-size:var(--fs-md)}.content-description blockquote>:last-child{margin-bottom:0}.content-description hr{border:0;border-top:1px solid var(--border-soft);margin:var(--space-8)0}.content-description :is(img,video,iframe){max-width:100%;height:auto;margin:var(--space-6)0;border-radius:var(--radius-md);display:block}.content-description img{border:1px solid var(--border-soft)}.content-description figure{margin:var(--space-6)0}.content-description figcaption{margin-top:var(--space-2);font-size:var(--fs-xs);color:var(--text-subtle)}.content-description table{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;width:max-content;max-width:100%;margin:var(--space-6)0;border:1px solid var(--border-soft);border-radius:var(--radius-md);border-collapse:separate;border-spacing:0;font-size:var(--fs-sm);line-height:var(--lh-normal);display:block;overflow-x:auto}.content-description table :is(th,td){padding:var(--space-3)var(--space-4);text-align:left;vertical-align:top;border-bottom:1px solid var(--border-soft)}.content-description table th{background:var(--surface-soft);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;white-space:nowrap}.content-description table tr:last-child :is(th,td){border-bottom:0}.content-description table tbody tr:nth-child(2n){background:var(--surface-soft)}@supports (color:color-mix(in lab, red, red)){.content-description table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--surface-soft)55%,transparent)}}:is(.content-description pre,.w3-code) :is(.token.comment,.token.prolog,.token.doctype,.token.cdata){color:#6a737d;font-style:italic}:is(.content-description pre,.w3-code) .token.punctuation{color:#24292e}:is(.content-description pre,.w3-code) :is(.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted){color:#005cc5}:is(.content-description pre,.w3-code) :is(.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted){color:#032f62}:is(.content-description pre,.w3-code) :is(.token.operator,.token.entity,.token.url,.token.variable){color:#b31d28}:is(.content-description pre,.w3-code) :is(.token.atrule,.token.attr-value,.token.keyword){color:#d73a49}:is(.content-description pre,.w3-code) :is(.token.function,.token.class-name){color:#6f42c1}:is(.content-description pre,.w3-code) :is(.token.regex,.token.important){color:#e36209}.topic-layout{--rail-w:12.5rem;align-items:flex-start;gap:clamp(var(--space-8),4vw,var(--space-10));width:100%;max-width:var(--content-max);padding-inline:var(--gutter);padding-block:var(--space-7)var(--space-10);margin-inline:auto;display:flex}.topic-article{flex:auto;min-width:0;max-width:100%}.lesson-rail{display:none}@media (min-width:1280px){.lesson-rail{flex:0 0 var(--rail-w);width:var(--rail-w);top:calc(var(--header-height) + var(--nav-height) + var(--space-6));max-height:calc(100vh - var(--header-height) - var(--nav-height) - var(--space-9));overscroll-behavior:contain;scrollbar-width:thin;align-self:flex-start;display:block;position:sticky;overflow-y:auto}html[data-chat-open=true] .lesson-rail{display:none}}.lr-label{margin:0 0 var(--space-3)var(--space-3);font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-subtle);display:block}.lr-list{border-left:1px solid var(--border-soft);margin:0;padding:0;list-style:none}.lr-link{padding:var(--space-2)var(--space-3);color:var(--text-muted);font-size:var(--fs-sm);line-height:var(--lh-snug);transition:color var(--motion-fast),border-color var(--motion-fast);border-left:2px solid #0000;margin-left:-1px;display:block}.lr-link:hover{color:var(--text-primary);border-left-color:var(--border-strong);text-decoration:none}.lr-link.is-active{color:var(--accent-text);border-left-color:var(--brand-accent);font-weight:var(--fw-semibold)}.lr-foot{gap:var(--space-2);margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--border-soft);display:grid}.lr-jump{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--fs-xs);line-height:var(--lh-snug);transition:background var(--motion-fast),color var(--motion-fast);display:flex}.lr-jump:hover{background:var(--surface-hover);color:var(--text-primary);text-decoration:none}.lr-jump .material-icons{color:var(--text-subtle);flex:none;font-size:16px}.lr-jump-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lr-jump.is-next{text-align:right;flex-direction:row-reverse}.lr-mark{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--surface);width:100%;height:34px;color:var(--text-muted);font:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast);display:inline-flex}.lr-mark:hover{border-color:var(--accent-border);color:var(--accent-text)}.lr-mark .material-icons{font-size:16px}.lr-mark[data-complete=true]{background:var(--success-surface);border-color:var(--success-border);color:var(--success)}.chat-panel{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-xl);height:100%;box-shadow:var(--shadow-3);flex-direction:column;display:flex;position:relative;overflow:hidden}.tutor-chat-dock{--dock-w:25.5rem;--dock-h:41.25rem;right:var(--chat-gap);bottom:calc(var(--chat-gap) + var(--chat-dock-lift,0px));width:min(var(--dock-w),calc(100vw - var(--space-6)));height:min(74vh,var(--dock-h));max-height:var(--chat-dock-maxh,none);z-index:var(--z-chat-dock);transform-origin:100% 100%;transition:transform var(--dur-slow)var(--ease-out),opacity var(--motion-base),visibility 0s linear var(--dur-slow);position:fixed}.tutor-chat-dock[data-open=true]{opacity:1;visibility:visible;transition:transform var(--dur-slow)var(--ease-out),opacity var(--motion-base),visibility 0s;transform:none}.tutor-chat-dock[data-open=false]{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(14px)scale(.985)}@media (prefers-reduced-motion:reduce){.tutor-chat-dock,.tutor-chat-dock[data-open=true],.tutor-chat-dock[data-open=false]{transition:none}.chat-fab-dot,.chat-panel-wide,.chat-backdrop{animation:none}.chat-fab{transition:none}.chat-fab:hover{transform:none}.topic-article{transition:none}}@media print{.chat-fab,.tutor-chat-dock,.chat-backdrop,.notes-fab{display:none!important}}.tutor-chat-dock>.chat-panel{box-shadow:var(--shadow-4)}@media (max-width:640px){.tutor-chat-dock{left:0;right:0;bottom:var(--chat-kb,0px);width:100%;height:min(85dvh,620px);max-height:calc(100vh - var(--chat-kb,0px) - 44px);max-height:calc(100dvh - var(--chat-kb,0px) - 44px)}.tutor-chat-dock[data-open=false]{transform:translateY(calc(100% + 24px))}.tutor-chat-dock>.chat-panel:not(.chat-panel-wide){border-radius:var(--radius-xl)var(--radius-xl)0 0;border-bottom:0;border-left:0;border-right:0}.tutor-chat-dock .chat-icon-btn{width:38px;height:38px}.tutor-chat-dock .chat-send{width:44px;height:44px}.tutor-chat-dock .chat-input{font-size:16px}.tutor-chat-dock>.chat-panel:not(.chat-panel-wide) .chat-input-row{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}.chat-panel-wide{width:min(880px,96vw);height:min(86dvh,820px);max-height:calc(100dvh - var(--chat-kb,0px) - 24px);top:calc(50% - var(--chat-kb,0px)/2)!important}}.chat-backdrop{background:var(--overlay);z-index:var(--z-chat-backdrop);animation:fade-in var(--dur-base)var(--ease-out);position:fixed;inset:0}.chat-panel-wide{width:min(880px,94vw);height:min(86dvh,820px);z-index:var(--z-chat-wide);border-radius:var(--radius-xl);box-shadow:var(--shadow-5);animation:chat-wide-in var(--dur-slow)var(--ease-out);transform:translate(-50%,-50%);position:fixed!important;inset:50% auto auto 50%!important}@keyframes chat-wide-in{0%{opacity:0;transform:translate(-50%,-46%)}to{opacity:1;transform:translate(-50%,-50%)}}.chat-panel-wide .chat-bubble{max-width:min(80%,var(--measure));font-size:var(--fs-base);line-height:var(--lh-relaxed);padding:var(--space-4)var(--space-5)}.chat-panel-wide .chat-body{padding:var(--space-6)var(--space-7)}.chat-panel-wide .chat-input{font-size:var(--fs-base);padding:var(--space-3)var(--space-4)}.chat-panel-wide .chat-input-row{padding:var(--space-4)var(--space-5)}.chat-panel-wide .chat-pre{font-size:var(--fs-sm);padding:var(--space-3)var(--space-4)}.chat-panel-wide .chat-head{padding:var(--space-4)var(--space-5)}.chat-panel-wide .chat-table{font-size:var(--fs-sm)}.chat-panel-wide .chat-md h3{font-size:var(--fs-lg);letter-spacing:var(--tracking-tight)}.chat-panel-wide .chat-md h4{font-size:var(--fs-base)}@media (hover:hover) and (pointer:fine){.chat-panel-wide .chat-hint{display:flex}}.chat-head{--head-fg:#fff;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);color:var(--head-fg);box-shadow:inset 0 -1px 0 var(--head-fg);background:linear-gradient(135deg,#2e3192 0%,#0e7c70 100%);display:flex}@supports (color:color-mix(in lab, red, red)){.chat-head{box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--head-fg)16%,transparent)}}.chat-head-title{align-items:center;gap:var(--space-3);min-width:0;display:flex}.chat-head-text{min-width:0}.chat-head-icon{background:var(--head-fg);border:1px solid var(--head-fg);border-radius:var(--radius-md);flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.chat-head-icon{background:color-mix(in srgb,var(--head-fg)17%,transparent);border:1px solid color-mix(in srgb,var(--head-fg)22%,transparent)}}.chat-head-icon .material-icons{font-size:19px}.chat-head-name{font-weight:var(--fw-bold);font-size:var(--fs-base);letter-spacing:var(--tracking-snug);line-height:var(--lh-tight)}.chat-head-ctx{align-items:center;gap:var(--space-1);max-width:100%;margin-top:var(--space-1);padding:1px var(--space-2)1px var(--space-1);border-radius:var(--radius-pill);background:var(--head-fg);font-size:var(--fs-2xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);line-height:1.7;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.chat-head-ctx{background:color-mix(in srgb,var(--head-fg)16%,transparent)}}.chat-head-ctx .material-icons{opacity:.9;flex:none;font-size:13px}.chat-head-ctx-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.chat-head-sub{font-size:var(--fs-xs);opacity:.95;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:2px;overflow:hidden}.chat-head-actions{align-items:center;gap:var(--space-1);flex:none;display:flex}.chat-icon-btn{background:var(--head-fg);color:var(--head-fg);border-radius:var(--radius-md);cursor:pointer;width:32px;height:32px;transition:background var(--motion-fast),border-color var(--motion-fast),transform var(--dur-instant)var(--ease-out);border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.chat-icon-btn{background:color-mix(in srgb,var(--head-fg)12%,transparent)}}.chat-icon-btn:hover{background:var(--head-fg);border-color:var(--head-fg)}@supports (color:color-mix(in lab, red, red)){.chat-icon-btn:hover{background:color-mix(in srgb,var(--head-fg)24%,transparent);border-color:color-mix(in srgb,var(--head-fg)30%,transparent)}}.chat-icon-btn:active{transform:translateY(1px)}.chat-icon-btn[aria-pressed=true]{background:var(--head-fg);border-color:var(--head-fg)}@supports (color:color-mix(in lab, red, red)){.chat-icon-btn[aria-pressed=true]{background:color-mix(in srgb,var(--head-fg)28%,transparent);border-color:color-mix(in srgb,var(--head-fg)38%,transparent)}}.chat-icon-btn .material-icons{font-size:18px}.chat-body{padding:var(--space-4)var(--space-4)var(--space-5);background:var(--surface-soft);scrollbar-width:thin;scrollbar-color:var(--border-strong)transparent;overscroll-behavior:contain;flex:auto;overflow-y:auto}.chat-body::-webkit-scrollbar{width:6px}.chat-body::-webkit-scrollbar-thumb{background:var(--border-soft);border-radius:var(--radius-pill)}.chat-body::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.chat-msg{margin:0;display:flex}.chat-msg+.chat-msg{margin-top:var(--space-4)}.chat-msg-user+.chat-msg-user,.chat-msg-assistant+.chat-msg-assistant{margin-top:var(--space-2)}.chat-msg-user{justify-content:flex-end}.chat-msg-assistant{justify-content:flex-start}.chat-bubble{--bubble-fg:var(--text-primary);--bubble-line:var(--border-soft);--bubble-edge:var(--accent-border);--marker-fg:var(--brand-accent);--link-fg:var(--brand-secondary);--quote-fg:var(--text-muted);--code-chip-bg:var(--surface-muted);--code-chip-fg:var(--primary-text);--table-head-bg:var(--surface-soft);--table-head-fg:var(--text-muted);min-width:0;max-width:92%;padding:var(--space-3)var(--space-4);border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border-soft);color:var(--bubble-fg);font-size:var(--fs-sm);line-height:var(--lh-relaxed);box-shadow:var(--shadow-1);overflow-wrap:anywhere;word-break:break-word}.chat-msg-user .chat-bubble{--bubble-fg:#fff;--bubble-line:var(--bubble-fg);--bubble-edge:var(--bubble-fg);--marker-fg:var(--bubble-fg);--link-fg:var(--bubble-fg);--quote-fg:var(--bubble-fg);--code-chip-bg:var(--bubble-fg);--code-chip-fg:var(--bubble-fg);--table-head-bg:var(--bubble-fg);--table-head-fg:var(--bubble-fg);background:var(--brand-primary);border-color:var(--brand-primary);border-bottom-right-radius:var(--radius-xs)}@supports (color:color-mix(in lab, red, red)){.chat-msg-user .chat-bubble{--bubble-line:color-mix(in srgb,var(--bubble-fg)32%,transparent);--bubble-edge:color-mix(in srgb,var(--bubble-fg)45%,transparent);--marker-fg:color-mix(in srgb,var(--bubble-fg)75%,transparent);--quote-fg:color-mix(in srgb,var(--bubble-fg)88%,transparent);--code-chip-bg:color-mix(in srgb,var(--bubble-fg)18%,transparent);--table-head-bg:color-mix(in srgb,var(--bubble-fg)14%,transparent)}}.chat-msg-assistant .chat-bubble{border-bottom-left-radius:var(--radius-xs)}.chat-md>:first-child{margin-top:0}.chat-md>:last-child{margin-bottom:0}.chat-md p{margin:0 0 var(--space-3)}.chat-md :is(strong,b){font-weight:var(--fw-semibold)}.chat-md h3{font-size:var(--fs-base);font-weight:var(--fw-bold);letter-spacing:var(--tracking-snug);line-height:var(--lh-snug);margin:var(--space-5)0 var(--space-2);color:var(--bubble-fg)}.chat-md h4{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:var(--tracking-snug);line-height:var(--lh-snug);margin:var(--space-4)0 var(--space-1);color:var(--bubble-fg)}.chat-md ul,.chat-md ol{margin:0 0 var(--space-3);padding-left:var(--space-5)}.chat-md ul{list-style:outside}.chat-md ol{list-style:decimal}.chat-md li{margin:var(--space-1)0;padding-left:var(--space-1)}.chat-md li::marker{color:var(--marker-fg);font-weight:var(--fw-semibold)}.chat-md li>:last-child{margin-bottom:0}.chat-hr{border:0;border-top:1px solid var(--bubble-line);margin:var(--space-4)0}.chat-link{color:var(--link-fg);text-underline-offset:.18em;text-decoration:underline;text-decoration-thickness:1px}.chat-link:hover{text-decoration-thickness:2px}.chat-table-wrap{overscroll-behavior-x:contain;margin:0 0 var(--space-3);border:1px solid var(--bubble-line);border-radius:var(--radius-md);-webkit-overflow-scrolling:touch;overflow-x:auto}.chat-table{border-collapse:separate;border-spacing:0;font-size:var(--fs-xs);line-height:var(--lh-normal);min-width:100%}.chat-table th,.chat-table td{border-bottom:1px solid var(--bubble-line);padding:var(--space-2)var(--space-3);text-align:left;vertical-align:top;white-space:normal}.chat-table tr:last-child th,.chat-table tr:last-child td{border-bottom:0}.chat-table th{background:var(--table-head-bg);color:var(--table-head-fg);font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;white-space:nowrap}.chat-md blockquote{border-left:3px solid var(--bubble-edge);padding:var(--space-1)0 var(--space-1)var(--space-4);margin:0 0 var(--space-3);color:var(--quote-fg)}.chat-md blockquote>:last-child{margin-bottom:0}.chat-inline-code{background:var(--code-chip-bg);color:var(--code-chip-fg);border-radius:var(--radius-xs);font-family:var(--font-mono);overflow-wrap:anywhere;padding:.08em .38em;font-size:.85em}.chat-pre{background:var(--surface-code);color:var(--text-primary);border:1px solid var(--border-soft);border-radius:var(--radius-md);padding:var(--space-3)var(--space-4);margin:0 0 var(--space-3);overscroll-behavior-x:contain;scrollbar-width:thin;tab-size:2;font-family:var(--font-mono);font-size:var(--fs-xs);line-height:var(--lh-relaxed);overflow-x:auto}.chat-pre code{color:inherit;font:inherit;background:0 0;padding:0}.chat-input-row{align-items:flex-end;gap:var(--space-2);padding:var(--space-3);border-top:1px solid var(--border-soft);background:var(--surface);transition:border-color var(--motion-base);flex-wrap:wrap;display:flex}.chat-input-row[data-ready=true]{border-top-color:var(--accent-border)}.chat-input{resize:none;border:1px solid var(--border-soft);border-radius:var(--radius-md);min-width:0;padding:var(--space-2)var(--space-3);font:inherit;font-size:var(--fs-sm);line-height:var(--lh-normal);background:var(--surface-soft);color:var(--text-primary);min-height:38px;max-height:160px;transition:border-color var(--motion-fast),background var(--motion-fast),box-shadow var(--motion-fast);outline:none;flex:auto;overflow-y:auto}.chat-input::placeholder{color:var(--text-subtle)}.chat-input:hover:not(:focus){border-color:var(--border-strong)}.chat-input:focus{background:var(--surface);border-color:var(--brand-accent);box-shadow:var(--focus-ring)}.chat-hint{align-items:center;gap:var(--space-1);font-size:var(--fs-2xs);color:var(--text-subtle);flex-wrap:wrap;flex:1 0 100%;margin:0;display:none}.chat-hint .ui-kbd{background:var(--surface-soft)}.chat-hint-sep{margin-inline:var(--space-1);color:var(--border-strong)}.chat-send{background:var(--brand-primary);border:1px solid var(--brand-primary);color:var(--on-solid);border-radius:var(--radius-md);cursor:pointer;width:38px;height:38px;box-shadow:var(--shadow-1);transition:background var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast),transform var(--dur-instant)var(--ease-out);flex:none;justify-content:center;align-items:center;display:inline-flex}.chat-send:hover:not(:disabled){background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);box-shadow:var(--shadow-2)}.chat-send:active:not(:disabled){box-shadow:var(--shadow-1);transform:translateY(1px)}.chat-send:disabled{background:var(--surface-muted);border-color:var(--border-soft);color:var(--text-subtle);box-shadow:none;cursor:not-allowed}.chat-send .material-icons{font-size:20px}.chat-sr{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chat-icon-btn:focus-visible,.chat-fab:focus-visible{outline-offset:2px;box-shadow:0 0 0 4px var(--brand-accent);outline:2px solid #fff}@supports (color:color-mix(in lab, red, red)){:is(.chat-icon-btn:focus-visible,.chat-fab:focus-visible){box-shadow:0 0 0 4px color-mix(in srgb,var(--brand-accent)55%,transparent)}}.chat-send:focus-visible{box-shadow:var(--focus-ring);outline:none}.chat-panel:focus-visible{outline:none}.chat-fab{bottom:calc(var(--chat-gap) + var(--chat-lift,0px) + env(safe-area-inset-bottom,0px));right:var(--chat-gap);z-index:var(--z-chat-fab);align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-5)var(--space-3)var(--space-4);color:#fff;border-radius:var(--radius-pill);font-family:inherit;font-weight:var(--fw-bold);font-size:var(--fs-sm);letter-spacing:var(--tracking-snug);cursor:pointer;box-shadow:var(--shadow-3);transition:background var(--motion-fast),transform var(--motion-fast),box-shadow var(--motion-fast);background:#2e3192;border:1px solid #2e3192;display:inline-flex;position:fixed}.chat-fab:hover{box-shadow:var(--shadow-4);background:#262a80;transform:translateY(-1px)}.chat-fab:active{box-shadow:var(--shadow-3);transform:translateY(0)}.chat-fab .material-icons{font-size:18px}.chat-fab-dot{border-radius:var(--radius-pill);background:var(--brand-accent);width:7px;height:7px;box-shadow:0 0 0 3px var(--brand-accent);animation:chat-fab-breathe 3.8s var(--ease-in-out)infinite;flex:none}@supports (color:color-mix(in lab, red, red)){.chat-fab-dot{background:color-mix(in srgb,var(--brand-accent)55%,#fff);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-accent)40%,transparent)}}@keyframes chat-fab-breathe{}.chat-fab-text{letter-spacing:var(--tracking-wide)}@media (max-width:480px){.chat-fab{border-radius:var(--radius-pill);justify-content:center;gap:0;width:52px;height:52px;padding:0}.chat-fab-text{display:none}.chat-fab-dot{position:absolute;top:9px;right:9px}.chat-fab .material-icons{font-size:22px}}.notes-fab{bottom:calc(78px + var(--chat-lift,0px) + env(safe-area-inset-bottom,0px));right:var(--chat-gap);z-index:var(--z-notes-fab);cursor:pointer;align-items:center;display:inline-flex;position:fixed}@media (max-width:1179px){.notes-fab{bottom:auto;top:calc(var(--header-height) + var(--nav-height) + var(--space-3));right:var(--chat-gap)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.sb-top{padding:var(--space-5)var(--space-4)var(--space-4);border-bottom:1px solid var(--border-soft);background:var(--surface)}.sb-search{align-items:center;gap:var(--space-2);background:var(--surface-soft);border:1px solid var(--border-soft);border-radius:var(--radius-md);padding:0 var(--space-2)0 var(--space-3);transition:border-color var(--motion-fast),background var(--motion-fast);display:flex}.sb-search:focus-within{background:var(--surface);border-color:var(--accent-border)}.sb-search .material-icons{color:var(--text-subtle);flex:none;font-size:18px}.sb-search input{font:inherit;font-size:var(--fs-sm);color:var(--text-primary);padding:var(--space-2)0;background:0 0;border:0;outline:0;flex:auto;min-width:0}.sb-search input::placeholder{color:var(--text-subtle)}.sb-search input:focus-visible{box-shadow:none}.sb-search button{color:var(--text-subtle);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);background:0 0;border:0;flex:none;align-items:center;display:inline-flex}.sb-search button:hover{color:var(--text-primary);background:var(--surface-active)}.sb-nav{padding:var(--space-4)var(--space-3)var(--space-9);flex:auto}.sb-section+.sb-section{margin-top:var(--space-6)}.sb-section-head{align-items:center;gap:var(--space-2);padding:0 var(--space-2)var(--space-2);display:flex}.sb-section-icon{color:var(--text-subtle);flex:none;justify-content:center;align-items:center;display:inline-flex}.sb-section-icon .material-icons{font-size:15px}.sb-section-head h3{font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-subtle);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;overflow:hidden}.sb-section-count{font-size:var(--fs-2xs);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;color:var(--text-subtle);flex:none;margin-left:auto}.sb-list,.sb-nested{margin:0;padding:0;list-style:none}.sb-nested{margin:var(--space-1)0 var(--space-2)var(--space-5);padding-left:var(--space-2);border-left:1px solid var(--border-soft)}.sb-li{margin:1px 0}.sb-row{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);text-align:left;width:100%;color:var(--text-muted);font:inherit;font-size:var(--fs-sm);line-height:var(--lh-snug);cursor:pointer;transition:background var(--motion-fast),color var(--motion-fast);background:0 0;border:0;display:flex;position:relative}.sb-row:hover{background:var(--surface-hover);color:var(--text-primary);text-decoration:none}.sb-row.is-active{background:var(--accent-soft);color:var(--accent-text);font-weight:var(--fw-semibold)}.sb-row.is-active:before{content:"";left:0;top:var(--space-1);bottom:var(--space-1);border-radius:var(--radius-pill);background:var(--brand-accent);width:2px;position:absolute}.sb-row.is-done{color:var(--text-subtle)}.sb-row.is-done.is-active{color:var(--accent-text)}.sb-row-text{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.sb-num{min-width:18px;font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;color:var(--text-subtle);text-align:right;flex:none}.sb-row.is-active .sb-num{color:var(--accent-text);font-weight:var(--fw-bold)}.sb-mark{flex:none;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.sb-check{color:var(--brand-accent)!important;font-size:15px!important}.sb-check-quiet{color:var(--text-subtle)!important;font-size:15px!important}.sb-chev{color:var(--text-subtle);transition:transform var(--motion-base);flex:none;font-size:18px!important}.sb-row-group.is-open .sb-chev{color:var(--text-muted);transform:rotate(90deg)}.sb-empty{color:var(--text-subtle);font-size:var(--fs-sm);padding:var(--space-4)var(--space-3)}.course-shell{align-items:flex-start;width:100%;display:flex}.course-content{flex:1 1 0;width:100%;min-width:0}.app-footer{margin-top:var(--space-9)}.course-content{padding-bottom:var(--space-9)}.lab-page{--lab-topbar-h:57px;background:var(--page);min-height:100vh;color:var(--text-primary);flex-direction:column;display:flex}.lab-topbar{z-index:var(--z-sticky);height:calc(var(--lab-topbar-h) - 1px);background:var(--surface);border-bottom:1px solid var(--border-soft);position:sticky;top:0}.lab-topbar-inner{height:100%;max-width:var(--content-max-wide);padding-inline:var(--gutter);align-items:center;gap:var(--space-4);margin:0 auto;display:flex}.lab-topbar-back{align-items:center;gap:var(--space-2);height:32px;padding-inline:var(--space-3);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border-soft);color:var(--text-primary);font-size:var(--fs-sm);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-snug);white-space:nowrap;transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast);text-decoration:none;display:inline-flex}.lab-topbar-back:hover{background:var(--surface-hover);border-color:var(--border-strong);text-decoration:none}.lab-topbar-back .material-icons{color:var(--accent-text);font-size:17px}.lab-topbar-crumbs{align-items:center;gap:var(--space-1);min-width:0;color:var(--text-subtle);font-size:var(--fs-xs);display:flex}.lab-topbar-crumbs a{color:var(--text-muted);transition:color var(--motion-fast)}.lab-topbar-crumbs a:hover{color:var(--accent-text)}.lab-topbar-crumbs .material-icons{color:var(--border-strong);font-size:16px}.lab-topbar-crumbs [aria-current=page]{color:var(--text-primary);font-weight:var(--fw-semibold);white-space:nowrap}@media (max-width:640px){.lab-topbar-crumbs{display:none}}.lab-topbar-right{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.lab-topbar-link{align-items:center;gap:var(--space-2);height:32px;padding-inline:var(--space-3);border-radius:var(--radius-md);color:var(--text-muted);font-weight:var(--fw-semibold);font-size:var(--fs-sm);white-space:nowrap;transition:color var(--motion-fast),background var(--motion-fast),border-color var(--motion-fast);border:1px solid #0000;text-decoration:none;display:inline-flex}.lab-topbar-link:hover{color:var(--text-primary);background:var(--surface-hover);border-color:var(--border-soft);text-decoration:none}.lab-topbar-link .material-icons{color:var(--accent-text);font-size:16px}.lab-page-main{flex:auto;width:100%}.lab{width:100%;max-width:var(--content-max-wide);padding:var(--space-6)var(--gutter)var(--space-8);gap:var(--space-6);flex-direction:column;margin:0 auto;display:flex}.lab-clean{padding:var(--space-4)var(--gutter)var(--space-5);min-height:calc(100vh - var(--lab-topbar-h,57px));min-height:calc(100dvh - var(--lab-topbar-h,57px))}.lab-clean .lab-work{flex:auto;min-height:0}.lab-clean .lab-card-editor,.lab-clean .lab-card-output{min-height:0}.lab-clean.lab-full{z-index:var(--z-sheet);max-width:none;height:100dvh;min-height:0;padding:var(--space-4)var(--gutter);background:var(--page);margin:0;position:fixed;inset:0;overflow:auto}.lab-runbar-clean{justify-content:space-between}.lab-runbar-runtime{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;display:inline-flex;overflow:hidden}.lab-status-dot{background:var(--success-solid);width:8px;height:8px;box-shadow:0 0 0 3px var(--success-surface);border-radius:50%;flex:none}.lab-work{gap:var(--space-5);display:flex}.lab-work.is-row{flex-direction:row}.lab-work.is-col{flex-direction:column}@media (max-width:980px){.lab-work{flex-direction:column}}.lab-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-1);transition:border-color var(--motion-base),box-shadow var(--motion-base);flex-direction:column;flex:1 1 0;display:flex;overflow:hidden}.lab-card-editor,.lab-card-output{min-height:540px}.lab-card-head{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:46px;padding:var(--space-2)var(--space-3)var(--space-2)var(--space-4);border-bottom:1px solid var(--border-soft);background:var(--surface-soft);display:flex}.lab-card-head-left,.lab-card-head-right{align-items:center;gap:var(--space-2);min-width:0;display:flex}.lab-file{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;display:inline-flex}.lab-file .material-icons{color:var(--accent-text);font-size:17px!important}.lab-dim{color:var(--text-subtle);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.lab-btn-ghost{align-items:center;gap:var(--space-2);height:30px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--text-muted);font:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap;transition:background var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast);background:0 0;border:1px solid #0000;display:inline-flex}.lab-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary);border-color:var(--border-soft)}.lab-btn-ghost[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-text);border-color:var(--accent-border)}.lab-btn-ghost .material-icons{font-size:16px}@media (max-width:480px){.lab-btn-label{display:none}}.lab-langrow{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-4);border-bottom:1px solid var(--border-soft);background:var(--surface);scrollbar-width:thin;min-height:44px;display:flex;overflow-x:auto}.lab-langrow::-webkit-scrollbar{height:6px}.lab-langrow::-webkit-scrollbar-thumb{background:var(--border-soft);border-radius:var(--radius-xs)}.lab-langrow-label{align-items:center;gap:var(--space-1);font-size:var(--fs-2xs);font-weight:var(--fw-bold);color:var(--text-subtle);text-transform:uppercase;letter-spacing:var(--tracking-caps);white-space:nowrap;display:inline-flex}.lab-langrow-label .material-icons{color:var(--accent-text);font-size:14px!important}.lab-langrow-chips{gap:var(--space-1);flex-wrap:nowrap;display:flex}.lab-chip{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);height:28px;padding:0 var(--space-3)0 var(--space-1);font:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast);background:0 0;border:1px solid #0000;display:inline-flex}.lab-chip:hover{background:var(--surface-hover);color:var(--text-primary)}.lab-chip:active{transform:translateY(1px)}.lab-chip.is-on{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-text)}.lab-chip.is-on .lab-chip-mono{background:var(--brand-accent);color:var(--on-accent)}.lab-chip-mono{font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:var(--fw-bold);background:var(--surface-muted);color:var(--text-muted);border-radius:var(--radius-pill);min-width:24px;height:20px;padding-inline:var(--space-1);letter-spacing:var(--tracking-wide);transition:background var(--motion-fast),color var(--motion-fast);justify-content:center;align-items:center;display:inline-flex}.lab-monaco{background:var(--surface);flex:auto;min-height:0}:root[data-theme=dark] .lab-monaco{background:var(--surface-soft)}.lab-runbar{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3)var(--space-4);border-top:1px solid var(--border-soft);background:var(--surface-soft);display:flex}.lab-run{justify-content:center;align-items:center;gap:var(--space-2);height:40px;padding-inline:var(--space-5);background:var(--brand-accent);color:var(--on-accent);border-radius:var(--radius-md);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:var(--tracking-snug);cursor:pointer;box-shadow:var(--shadow-1);transition:background var(--motion-fast),box-shadow var(--motion-fast),transform var(--dur-instant)var(--ease-out);border:0;display:inline-flex}.lab-run:hover:not(:disabled){background:var(--brand-accent-dark);box-shadow:var(--shadow-2)}.lab-run:active:not(:disabled){transform:translateY(1px)}.lab-run:disabled{cursor:wait}.lab-run.is-running{background:var(--brand-accent-dark);box-shadow:none}.lab-kbd{font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:var(--fw-bold);padding:2px var(--space-2);border-radius:var(--radius-xs);background:var(--on-accent);border:1px solid var(--on-accent);color:var(--on-accent);margin-left:var(--space-1)}@supports (color:color-mix(in lab, red, red)){.lab-kbd{background:color-mix(in srgb,var(--on-accent)16%,transparent);border:1px solid color-mix(in srgb,var(--on-accent)26%,transparent)}}.lab-spin{border:2px solid;border-right-color:#0000;border-radius:50%;width:1em;height:1em;animation:.62s linear infinite lab-spin;display:inline-block}.lab-spin-lg{width:22px;height:22px}@keyframes lab-spin{to{transform:rotate(360deg)}}.lab-status{align-items:center;gap:var(--space-2);height:22px;padding-inline:var(--space-2);border-radius:var(--radius-pill);font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wide);white-space:nowrap;border:1px solid #0000;display:inline-flex}.lab-status i{background:currentColor;border-radius:50%;width:6px;height:6px}.lab-status-idle{background:var(--surface-muted);color:var(--text-muted)}.lab-status-running{background:var(--warning-surface);color:var(--warning);border-color:var(--warning-border)}.lab-status-ok{background:var(--success-surface);color:var(--success);border-color:var(--success-border)}.lab-status-fail{background:var(--danger-surface);color:var(--danger);border-color:var(--danger-border)}.lab-status-running i{animation:lab-pulse 1s infinite var(--ease-in-out)}@keyframes lab-pulse{0%,to{opacity:1}50%{opacity:.35}}.lab-out{--term-fg:#ffffffe0;--term-dim:#ffffff85;--term-hairline:#ffffff1a;--term-well:#ffffff12;--term-ok:var(--success-solid);--term-err:var(--danger-solid);min-height:0;padding:var(--space-4)var(--space-5);overscroll-behavior:contain;scrollbar-width:thin;background:var(--footer-bg);color:var(--term-fg);flex:auto;overflow:auto}@supports (color:color-mix(in lab, red, red)){.lab-out{--term-ok:color-mix(in srgb,var(--success-solid)58%,#fff);--term-err:color-mix(in srgb,var(--danger-solid)48%,#fff)}}.lab-out-empty{text-align:center;height:100%;color:var(--term-dim);padding:var(--space-6);flex-direction:column;justify-content:center;align-items:center;display:flex}.lab-out-empty-icon{color:var(--term-dim);margin-bottom:var(--space-3)}.lab-out-empty h3{margin:0 0 var(--space-2);font-size:var(--fs-base);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-snug);color:var(--term-fg)}.lab-out-empty p{max-width:40ch;font-size:var(--fs-sm);line-height:var(--lh-relaxed);margin:0}.lab-out-empty strong{color:var(--term-fg);font-weight:var(--fw-semibold)}.lab-out-empty kbd{font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:var(--fw-bold);padding:1px var(--space-2);border-radius:var(--radius-xs);background:var(--term-well);border:1px solid var(--term-hairline);color:var(--term-fg)}.lab-out-running{align-items:center;gap:var(--space-4);color:var(--term-dim);display:flex}.lab-out-running strong{color:var(--term-fg);font-size:var(--fs-sm);font-weight:var(--fw-semibold);display:block}.lab-out-running p{margin:var(--space-1)0 0;font-size:var(--fs-xs)}.lab-out-pre{font-family:var(--font-mono);font-size:var(--fs-sm);white-space:pre-wrap;word-break:break-word;margin:0;line-height:1.7}.lab-out-stdout{color:var(--term-fg)}.lab-out-stderr{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--term-hairline);color:var(--term-err)}.lab-out-stderr-head{align-items:center;gap:var(--space-1);font-size:var(--fs-2xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--term-err);margin-bottom:var(--space-2);display:inline-flex}.lab-out-stderr-head .material-icons{font-size:14px!important}.lab-out-stderr .lab-out-pre{color:var(--term-err)}.lab-out-quiet{align-items:flex-start;gap:var(--space-2);color:var(--term-ok);font-size:var(--fs-sm);line-height:var(--lh-relaxed);display:inline-flex}.lab-out-quiet .material-icons{color:var(--term-ok);margin-top:2px;font-size:18px!important}.lab-out-quiet code{font-family:var(--font-mono);background:var(--term-well);border:1px solid var(--term-hairline);border-radius:var(--radius-xs);padding:1px var(--space-1);color:var(--term-fg);font-size:.9em}.lab-out-foot{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-top:1px solid var(--border-soft);background:var(--surface-soft);font-size:var(--fs-xs);color:var(--text-muted);display:flex}.lab-card-output.state-idle{border-color:var(--border-soft)}.lab-card-output.state-ok{border-color:var(--success-border)}.lab-card-output.state-fail{border-color:var(--danger-border)}.lab-card-output.state-running{border-color:var(--warning-border)}.lab-loading{justify-content:center;align-items:center;gap:var(--space-3);min-height:40vh;color:var(--text-muted);font-size:var(--fs-sm);flex:auto;display:flex}.lab-loading .ui-spinner{color:var(--accent-text)}:root[data-theme=dark] body{background:var(--surface)}:root[data-theme=dark] .w3-panel-note{color:#cfe4ff;border-left-color:var(--brand-secondary);background:#1d2a4f}:root[data-theme=dark] .w3-panel-tip{color:#9ce8d9;border-left-color:var(--brand-accent);background:#16352f}:root[data-theme=dark] .w3-panel-warning{color:#ffd99c;background:#3a2b13;border-left-color:#f0ad4e}:root[data-theme=dark] .w3-btn,:root[data-theme=dark] .w3-btn:hover{color:#0f1426}:root[data-theme=dark] .w3-btn-primary{color:#fff}:root[data-theme=dark] .content-description code{color:var(--brand-accent);background:#2dd4bf1f}:root[data-theme=dark] .content-description pre{background:var(--surface-code);border-color:var(--border-soft);color:var(--text-primary)}:root[data-theme=dark] :is(.content-description pre,.w3-code) code{color:#e6edf3}:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.comment,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.prolog,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.doctype,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.cdata{color:#8b949e}:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.punctuation{color:#c9d1d9}:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.property,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.tag,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.boolean,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.number,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.constant,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.symbol{color:#79c0ff}:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.selector,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.attr-name,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.string,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.char,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.builtin,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.inserted{color:#a5d6ff}:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.operator,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.entity,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.url,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.variable{color:#ffa657}:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.atrule,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.attr-value,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.keyword{color:#ff7b72}:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.function,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.class-name{color:#d2a8ff}:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.regex,:root[data-theme=dark] :is(.content-description pre,.w3-code) .token.important{color:#ffa657}:root[data-theme=dark] .w3-code{background:var(--surface-code);border-color:var(--border-soft);color:var(--text-primary)}:root[data-theme=dark] .w3-example,:root[data-theme=dark] .sb-top{background:var(--surface-soft)}:root[data-theme=dark] .sb-search{background:var(--surface);border-color:var(--border-soft)}:root[data-theme=dark] .sb-row.is-active{background:var(--accent-soft)}:root[data-theme=dark] .chat-msg-user .chat-bubble{--bubble-fg:var(--on-accent);background:var(--brand-primary);border-color:var(--brand-primary)}:root[data-theme=dark] .chat-msg-assistant .chat-bubble{--code-chip-bg:var(--brand-accent);--code-chip-fg:var(--brand-accent)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=dark] .chat-msg-assistant .chat-bubble{--code-chip-bg:color-mix(in srgb,var(--brand-accent)14%,transparent)}}:root[data-theme=dark] .chat-fab{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--on-accent)}:root[data-theme=dark] .chat-fab:hover{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark)}:root[data-theme=dark] .head-nav{background:var(--surface);border-bottom-color:var(--border-soft)}:root[data-theme=dark] .head-nav input{background:var(--surface-soft);border-color:var(--border-soft);color:var(--text-primary)}:root[data-theme=dark] .head-nav input::placeholder{color:var(--text-subtle)}:root[data-theme=dark] .w3-example .w3-code,:root[data-theme=dark] .w3-code{background:var(--surface-code)!important}:root[data-theme=dark] select,:root[data-theme=dark] input,:root[data-theme=dark] textarea{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.theme-toggle{border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-muted);cursor:pointer;transition:background var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}.theme-toggle:hover{background:var(--chrome-track);color:var(--text-primary)}.theme-toggle:focus-visible{box-shadow:var(--focus-ring)}.theme-toggle .material-icons{transition:transform var(--dur-slow)var(--ease-emphasis),opacity var(--motion-fast);grid-area:1/1;font-size:18px}.theme-toggle-icons{place-items:center;display:grid}.theme-toggle-icons>.material-icons[data-hidden=true]{opacity:0;transform:rotate(-60deg)scale(.6)}:root[data-theme=dark] .theme-toggle .material-icons{transform:none}:root[data-theme=dark] .theme-toggle-icons>.material-icons[data-hidden=true]{opacity:0;transform:rotate(60deg)scale(.6)}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
