@charset "UTF-8";:root{--bg: #0e0f12;--surface: #16181d;--surface-2: #1c1f26;--text: #e9eef6;--muted: #a3adbc;--neutral: #2a313c;--brand: #3e9ad9;--primary: oklch(68% .14 245);--accent: oklch(92% .14 100);--on-accent: oklch(20% .02 260);--warning: oklch(76% .17 55);--danger: oklch(58% .2 28);--success: oklch(70% .15 160);--info: oklch(82% .1 240);--link: var(--brand);--link-visited: var(--brand);--link-hover: color-mix(in oklab, var(--brand) 85%, white);--link-underline: color-mix(in oklab, var(--brand) 40%, transparent);--card-shadow: 0 1px 0 rgba(255, 255, 255, .04), 0 8px 24px rgba(0, 0, 0, .35);--radius: 10px;--pad-1: 12px;--pad-2: 16px;--pad-3: 20px;--gap-1: 8px;--gap-2: 12px;--gap-3: 16px;--chip-h: 28px;--chip-px: 10px;--chip-br: 9999px;--chip-fw: 700;--tag-h: 26px;--tag-px: 10px;--tag-br: 9999px;--container-w: 1200px;--container: var(--surface);--container-2: var(--surface-2);--line-weak: rgba(255, 255, 255, .06);--text-high: var(--text);--text-muted: var(--muted);--container-outline-weak: rgba(255, 255, 255, .06);--container-muted: color-mix(in oklab, var(--surface) 88%, transparent)}:root{--_bgAlpha: 18%}.bg-primary{--_bg: var(--primary);background:color-mix(in oklab,var(--_bg) var(--_bgAlpha),transparent)}.bg-accent{--_bg: var(--accent);background:color-mix(in oklab,var(--_bg) var(--_bgAlpha),transparent)}.bg-success{--_bg: var(--success);background:color-mix(in oklab,var(--_bg) var(--_bgAlpha),transparent)}.bg-warning{--_bg: var(--warning);background:color-mix(in oklab,var(--_bg) var(--_bgAlpha),transparent)}.bg-danger{--_bg: var(--danger);background:color-mix(in oklab,var(--_bg) var(--_bgAlpha),transparent)}.bg-info{--_bg: var(--info);background:color-mix(in oklab,var(--_bg) var(--_bgAlpha),transparent)}.bg-neutral{--_bg: var(--neutral);background:color-mix(in oklab,var(--_bg) var(--_bgAlpha),transparent)}.bg-surface{--_bg: var(--surface);background:color-mix(in oklab,var(--_bg) var(--_bgAlpha),transparent)}.bg-surface-2{--_bg: var(--surface-2);background:color-mix(in oklab,var(--_bg) var(--_bgAlpha),transparent)}.bg-primary,.bg-accent,.bg-success,.bg-warning,.bg-danger,.bg-info,.bg-neutral,.bg-surface,.bg-surface-2{border-radius:3px}.bg-opacity-5{--_bgAlpha: 5%}.bg-opacity-10{--_bgAlpha: 10%}.bg-opacity-15{--_bgAlpha: 15%}.bg-opacity-20{--_bgAlpha: 20%}.bg-opacity-30{--_bgAlpha: 30%}.bg-opacity-40,.bg-opacity-50{--_bgAlpha: 40%}.bg-opacity-60,.bg-opacity-70{--_bgAlpha: 60%}.bg-opacity-80{--_bgAlpha: 80%}.bg-opacity-100{--_bgAlpha: 100%}.bg-outline{box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--_bg) 28%,transparent)}.lg-btn{--btn-h: 36px;--btn-px: 14px;--btn-br: var(--radius);--btn-c: var(--muted);display:inline-flex;align-items:center;gap:8px;height:var(--btn-h);padding:0 var(--btn-px);border-radius:var(--btn-br);border:1px solid var(--container-outline-weak);background:var(--surface-2);color:var(--text-high);font-weight:700;font-size:.95rem;line-height:1;text-decoration:none;text-align:center;justify-content:center;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,color .15s ease,box-shadow .15s ease,transform .06s ease-in-out}.lg-btn:hover{border-color:color-mix(in oklab,var(--btn-c) 22%,var(--container-outline-weak))}.lg-btn:active{transform:translateY(1px)}.lg-btn:disabled,.lg-btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;pointer-events:none}.lg-btn .dot{width:8px;height:8px;border-radius:999px;background:currentColor}.lg-btn[data-variant=primary]{--btn-c: var(--primary)}.lg-btn[data-variant=accent]{--btn-c: var(--accent)}.lg-btn[data-variant=success]{--btn-c: var(--success)}.lg-btn[data-variant=danger]{--btn-c: var(--danger)}.lg-btn[data-variant=warning]{--btn-c: var(--warning)}.lg-btn[data-variant=neutral]{--btn-c: var(--muted)}.lg-btn--soft{background:color-mix(in oklab,var(--btn-c) 18%,transparent);border-color:color-mix(in oklab,var(--btn-c) 26%,transparent);color:var(--btn-c)}.lg-btn--soft:hover{background:color-mix(in oklab,var(--btn-c) 24%,transparent);border-color:color-mix(in oklab,var(--btn-c) 36%,transparent)}.lg-btn--solid{background:var(--btn-c);border-color:color-mix(in oklab,var(--btn-c) 40%,black);color:#fff}.lg-btn--solid[data-variant=accent]{color:var(--on-accent)}.lg-btn--solid:visited,.lg-btn--solid:hover{color:#fff}.lg-btn--solid:hover{background:color-mix(in oklab,var(--btn-c) 86%,white)}.lg-btn--outline{background:transparent;color:var(--btn-c);border-color:color-mix(in oklab,var(--btn-c) 50%,transparent)}.lg-btn--outline:hover{background:color-mix(in oklab,var(--btn-c) 14%,var(--surface));border-color:var(--btn-c)}.lg-btn.is-sm{--btn-h: 30px;--btn-px: 10px;font-size:.88rem}.lg-btn.is-lg{--btn-h: 42px;--btn-px: 18px;font-size:1rem}.chip{display:inline-flex;align-items:center;gap:8px;height:var(--chip-h);padding:0 var(--chip-px);border-radius:var(--chip-br);font-size:12px;font-weight:var(--chip-fw);letter-spacing:.02em;border:1px solid transparent;box-shadow:inset 0 1px #ffffff0a;white-space:nowrap}.chip.no-bg{border:none;padding:0;gap:0;height:auto;width:auto}.chip .dot{width:8px;height:8px;border-radius:999px;background:currentColor}.chip--neutral{color:#c7cfdb;background:#ffffff08;border-color:#ffffff0f}.chip--progress{color:var(--accent);background:color-mix(in oklab,var(--accent) 18%,transparent);border-color:color-mix(in oklab,var(--accent) 26%,transparent)}.chip--warning{color:var(--warning);background:color-mix(in oklab,var(--warning) 18%,transparent);border-color:color-mix(in oklab,var(--warning) 26%,transparent)}.chip--success{color:var(--success);background:color-mix(in oklab,var(--success) 18%,transparent);border-color:color-mix(in oklab,var(--success) 26%,transparent)}.chip--info{color:var(--info);background:color-mix(in oklab,var(--info) 18%,transparent);border-color:color-mix(in oklab,var(--info) 26%,transparent)}.chip--danger{color:var(--danger);background:color-mix(in oklab,var(--danger) 18%,transparent);border-color:color-mix(in oklab,var(--danger) 26%,transparent)}.chip--xs{height:22px;font-size:11px;gap:6px;padding:0 8px}.chip--xs .dot{width:6px;height:6px}@media (max-width: 420px){.chip{padding:.4rem .7rem;font-size:.85rem}}.lg-concepts{margin:0;padding:0}.lg-concept{display:grid;grid-template-columns:200px 1fr;gap:8px 16px;padding:var(--pad-2);align-items:start;border-top:1px solid var(--container-outline-weak)}.lg-concept:first-child{border-top:0}.lg-concept__term{margin:0;font-weight:600;letter-spacing:-.01em}.lg-concept__def{margin:0}.lg-impls{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 12px}.lg-impl{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:9999px;background:var(--surface-2);border:1px solid var(--container-outline-weak);font-size:12px;line-height:1;color:var(--text-high)}.lg-impl .dot{width:8px;height:8px;border-radius:999px;background:var(--muted)}.lg-impl[data-state=info] .dot{background:var(--info)}.lg-impl[data-state=warning] .dot{background:var(--warning)}.lg-impl[data-state=success] .dot{background:var(--success)}.lg-impl .name{font-weight:600}@media (max-width: 560px){.lg-concept{grid-template-columns:1fr}}.section-chips{display:flex;gap:.5rem;padding:.5rem .75rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;background:color-mix(in oklab,var(--surface) 88%,transparent);-webkit-backdrop-filter:saturate(110%) blur(6px);backdrop-filter:saturate(110%) blur(6px);border-bottom:1px dashed var(--container-outline-weak)}.section-chips .chip{scroll-snap-align:start;display:inline-flex;align-items:center;gap:.5rem;height:var(--chip-h);padding:.45rem .85rem;border-radius:9999px;border:1px solid var(--container-outline-weak);background:var(--container);color:var(--text-high);font-weight:600;font-size:.9rem;line-height:1;white-space:nowrap;transition:border-color .15s ease,background-color .15s ease,color .15s ease,box-shadow .15s ease,transform .06s ease-in-out}.section-chips .chip:hover{border-color:color-mix(in oklab,var(--primary) 32%,var(--container-outline-weak));cursor:pointer}.section-chips .chip:active{transform:translateY(1px)}.section-chips .chip:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.section-chips .chip__dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--container-outline-weak);flex:0 0 .5rem}.section-chips .chip__badge{font-weight:700;font-size:.75rem;padding:.15rem .4rem;border-radius:.5rem;background:var(--container-muted);border:1px solid var(--container-outline-weak)}.section-chips .chip__badge[data-state=done]{background:var(--success);border-color:var(--success)}.section-chips .chip[aria-selected=true]{background:color-mix(in oklab,var(--primary) 14%,var(--container));border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in oklab,var(--primary) 22%,transparent)}.section-chips .chip[aria-selected=true] .chip__dot{background:var(--primary)}@media (max-width: 420px){.section-chips .chip{padding:.4rem .7rem;font-size:.85rem}}.chip .icon{width:12px;height:12px;display:inline-block}.chip--locked,.section-chips .chip.chip--locked{color:var(--muted);background:color-mix(in oklab,var(--muted) 18%,transparent);border-color:color-mix(in oklab,var(--muted) 26%,transparent)}.section-chips .chip.chip--locked .chip__badge{background:color-mix(in oklab,var(--surface) 18%,transparent);border-color:color-mix(in oklab,var(--surface) 26%,transparent)}.lg-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.lg-list li{display:flex;align-items:flex-start;gap:10px;padding:4px 0}.lg-list .bullet{flex:0 0 8px;width:8px;height:8px;border-radius:999px;background:var(--container-outline-weak);margin-top:6px}.lg-list .content{min-width:0}.lg-list .content strong{font-weight:600;letter-spacing:-.01em}.lg-list .content .meta{display:block;color:var(--muted);font-size:13px}.lg-list[data-variant=accent] .bullet{background:var(--accent)}.lg-list[data-variant=success] .bullet{background:var(--success)}.lg-list[data-variant=review] .bullet{background:var(--review)}.lg-list[data-variant=danger] .bullet{background:var(--danger)}.lg-list.is-compact{gap:6px}.lg-list.is-compact li{padding:2px 0}.lg-list.is-compact .bullet{margin-top:5px}.lg-list-inline{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.lg-list-inline li{display:inline-flex;align-items:center;gap:8px;line-height:1.3}.lg-list-inline li:before{content:"";width:6px;height:6px;border-radius:999px;background:var(--container-outline-weak)}.lg-list-inline[data-variant=accent] li:before{background:var(--accent)}.lg-list-inline[data-variant=success] li:before{background:var(--success)}.lg-list-inline[data-variant=review] li:before{background:var(--review)}.lg-list-inline[data-variant=danger] li:before{background:var(--danger)}.lg-list-inline.is-sm{gap:8px 10px}.lg-list-inline.is-sm li{gap:6px}.lg-list-inline.is-sm li:before{width:5px;height:5px}.lg-list a,.lg-list-inline a{color:var(--text-high);text-decoration:none;border-radius:6px;padding:2px 4px}.lg-list a:hover,.lg-list-inline a:hover{background:color-mix(in oklab,var(--surface-2) 80%,transparent)}.todo-list{margin:8px 0 0;padding-left:1.25rem;display:grid;gap:6px}.todo-list li{padding:8px 0;border-bottom:1px dashed var(--container-outline-weak)}.todo-list li:last-child{border-bottom:0}.todo-list li::marker{color:var(--muted);font-weight:700}.todo-line{display:flex;align-items:center;gap:12px;justify-content:space-between}.todo-item.is-done .todo-title{color:var(--muted);text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:color-mix(in oklab,var(--success) 60%,var(--muted))}.todo-item.is-progress .progress{flex:0 0 160px}.todo-list--compact{margin:8px 0 0;padding-left:1.25rem;display:grid;gap:4px}.todo-list--compact>li{padding:6px 0;border-bottom:1px dashed var(--container-outline-weak)}.todo-list--compact>li:last-child{border-bottom:0}.todo-list--compact>li::marker{color:var(--muted);font-weight:700}.todo-line{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start}.todo-main{display:flex;flex-direction:column;gap:2px}.todo-title{font-weight:600}.todo-status{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.todo-percent{font-size:11px}.muted{color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.title{margin:0;font-weight:600;letter-spacing:-.01em}h1{font-family:Exo,Inter,system-ui,sans-serif;font-weight:700;font-size:24px;letter-spacing:-.02em;margin:0 0 4px}h2{font-family:Exo,Inter,system-ui,sans-serif;font-weight:600;letter-spacing:-.02em;font-size:18px;margin:0}h4{margin:0}p.muted{margin:0;color:var(--muted)}.lg-tag{height:var(--tag-h);padding:0 var(--tag-px);border-radius:var(--tag-br);font-size:12px;background:var(--surface-2);border:1px solid rgba(255,255,255,.06);color:var(--text)}.lg-tag[data-flavor=muted]{border-color:color-mix(in oklab,var(--muted) 26%,transparent)}.tag[data-flavor=muted] .flavor{background:var(--muted)}.lg-tag[data-flavor=info]{border-color:color-mix(in oklab,var(--info) 26%,transparent)}.tag[data-flavor=info] .flavor{background:var(--info)}.lg-tag[data-flavor=success]{border-color:color-mix(in oklab,var(--success) 26%,transparent)}.tag[data-flavor=success] .flavor{background:var(--success)}.lg-tag[data-flavor=warning]{border-color:color-mix(in oklab,var(--warning) 26%,transparent)}.tag[data-flavor=warning] .flavor{background:var(--warning)}.lg-tag[data-flavor=danger]{border-color:color-mix(in oklab,var(--danger) 26%,transparent)}.tag[data-flavor=danger] .flavor{background:var(--danger)}.tags-container{display:flex;flex-direction:column;gap:4px}.tags{display:flex;flex-wrap:wrap;gap:6px}.tag{display:inline-flex;align-items:center;gap:8px;height:var(--tag-h);padding:0 var(--tag-px);border-radius:var(--tag-br);font-size:12px;color:var(--text);background:var(--surface-2);border:1px solid rgba(255,255,255,.06)}.tag .flavor{width:10px;height:10px;border-radius:50%;background:var(--muted);box-shadow:0 0 0 2px #ffffff0f inset}.lg-pills{background:var(--surface-2);border:1px solid var(--container-outline-weak)}.lg-pill{color:var(--muted)}.lg-pill.is-active{background:color-mix(in oklab,var(--accent) 14%,var(--surface));border-color:var(--accent);color:var(--text)}.lg-cmeter{--tone: var(--accent);font-size:12px;font-weight:700;color:var(--text-high);padding:2px 8px;border-radius:9999px;border:1px solid var(--container-outline-weak);background:var(--surface-2);align-items:center;display:flex;gap:2px;line-height:1;vertical-align:middle}.lg-cmeter .icon{width:14px;height:14px;flex:0 0 14px;fill:var(--tone);filter:drop-shadow(0 0 .5px rgba(0,0,0,.4))}.linkable:hover{cursor:pointer}a,.link-back,.link{color:var(--link);text-decoration-line:underline;text-decoration-thickness:1.5px;text-underline-offset:.14em;text-decoration-color:var(--link-underline);text-decoration-skip-ink:auto;transition:color .15s ease,text-decoration-color .15s ease,opacity .15s ease}a:hover,.link-back:hover,.link:hover{cursor:pointer;color:var(--link-hover);text-decoration-color:var(--link-hover)}a:active,.link-back:active,.link:active{opacity:.9}a:visited,.link-back:visited,.link:visited{color:var(--link-visited);text-decoration-color:var(--link-underline)}a:focus-visible,.link-back:focus-visible,.link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px;text-decoration-color:var(--link)}.link--quiet{text-decoration:none}.link--quiet:hover{text-decoration-line:underline;text-decoration-color:var(--link-underline)}.link--muted{color:var(--muted);text-decoration-color:color-mix(in oklab,var(--muted) 40%,transparent)}.link--muted:hover{color:var(--text);text-decoration-color:var(--link-underline)}.link--contrast{color:color-mix(in oklab,var(--brand) 92%,white);text-decoration-color:color-mix(in oklab,var(--brand) 60%,transparent)}.link--contrast:hover{color:var(--brand);text-decoration-color:var(--brand)}.link--external:after{content:"\2197";font-size:.9em;margin-inline-start:.3em;opacity:.85}.link__icon,a>svg{width:1em;height:1em;vertical-align:-.12em;margin-inline-start:.3em}.stretched-link{position:relative;z-index:0}.stretched-link:after{content:"";position:absolute;inset:0;z-index:1}.alert{display:flex;align-items:flex-start;gap:var(--gap-2);padding:var(--pad-2);border-radius:var(--radius);border:1px solid var(--container-outline-weak);background:var(--surface-2);box-shadow:var(--card-shadow);font-size:14px}.alert__icon{flex:0 0 auto;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-weight:800;line-height:1}.alert__content{display:grid;gap:2px}.alert__title{font-weight:700}.alert__msg{color:var(--muted)}.alert--warning{border-color:color-mix(in oklab,var(--warning) 28%,var(--container-outline-weak));background:color-mix(in oklab,var(--warning) 12%,var(--surface))}.alert--warning .alert__icon{background:var(--warning);color:#000;box-shadow:0 0 0 2px color-mix(in oklab,var(--warning) 30%,transparent) inset}.alert--warning .alert__title{color:var(--warning)}.alert--warning a{color:var(--text);text-decoration:underline;text-decoration-color:color-mix(in oklab,var(--warning) 60%,white)}.alert--danger{border-color:color-mix(in oklab,var(--danger) 28%,var(--container-outline-weak));background:color-mix(in oklab,var(--danger) 12%,var(--surface))}.alert--danger .alert__icon{background:var(--danger);color:#000;box-shadow:0 0 0 2px color-mix(in oklab,var(--danger) 30%,transparent) inset}.alert--danger .alert__title{color:var(--danger)}.alert--danger a{color:var(--text);text-decoration:underline;text-decoration-color:color-mix(in oklab,var(--danger) 60%,white)}.alert--success{border-color:color-mix(in oklab,var(--success) 28%,var(--container-outline-weak));background:color-mix(in oklab,var(--success) 12%,var(--surface))}.alert--success .alert__icon{background:var(--success);color:#000;box-shadow:0 0 0 2px color-mix(in oklab,var(--danger) 30%,transparent) inset}.alert--success .alert__title{color:var(--success)}.alert--success a{color:var(--text);text-decoration:underline;text-decoration-color:color-mix(in oklab,var(--success) 60%,white)}.alert--info{border-color:color-mix(in oklab,var(--info) 28%,var(--container-outline-weak));background:color-mix(in oklab,var(--info) 12%,var(--surface))}.alert--info .alert__icon{background:var(--info);color:#000;box-shadow:0 0 0 2px color-mix(in oklab,var(--info) 30%,transparent) inset}.alert--info .alert__title{color:var(--info)}.alert--info.is-outline{background:var(--surface);border-color:color-mix(in oklab,var(--info) 34%,var(--container-outline-weak))}.lg-navbar{position:sticky;top:0;z-index:20;background:color-mix(in oklab,var(--surface) 86%,transparent);-webkit-backdrop-filter:saturate(110%) blur(6px);backdrop-filter:saturate(110%) blur(6px);border-bottom:1px dashed var(--container-outline-weak)}.lg-navbar__inner{max-width:1200px;margin:0 auto;padding:.5rem .75rem;display:flex;align-items:center;gap:.75rem}.lg-navbar__brand{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--text-high)}.lg-navbar__brand .lg-logo{display:inline-flex;align-items:center}.lg-navbar__brand .lg-logo svg,.lg-navbar__brand .lg-logo svg *{fill:var(--brand)!important;stroke:var(--brand)!important}.lg-navbar__brand .lg-logo img{display:block;height:28px;width:auto}.lg-navbar__brand .lg-wordmark{font-weight:800;letter-spacing:.12em;font-size:1rem;line-height:1;color:var(--brand)}.lg-navbar__spacer{margin-left:auto}.lg-user{position:relative}.lg-user__summary{list-style:none;display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--container-outline-weak);background:var(--container);padding:.25rem .35rem .25rem .25rem;border-radius:9999px;cursor:pointer;-webkit-user-select:none;user-select:none}.lg-user__summary:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.lg-user .lg-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:color-mix(in oklab,var(--brand) 18%,var(--container));border:1px solid color-mix(in oklab,var(--brand) 35%,var(--container-outline-weak));color:var(--text-high);line-height:1}.lg-user__menu{position:absolute;right:0;margin-top:.5rem;min-width:200px;padding:.4rem;background:var(--container);border:1px solid var(--container-outline-weak);border-radius:.75rem;box-shadow:0 6px 24px color-mix(in oklab,black 20%,transparent);display:none}.lg-user__menu li{list-style:none}.lg-user__menu a,.lg-user__menu button{width:100%;text-align:left;background:transparent;border:0;color:var(--text-high);font-weight:600;padding:.6rem;border-radius:.5rem;cursor:pointer}.lg-user__menu a:hover,.lg-user__menu button:hover{background:var(--container-muted)}.lg-user__menu a:focus-visible,.lg-user__menu button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.lg-user__menu li+li{border-top:1px dashed var(--container-outline-weak)}.lg-user__menu li+li a,.lg-user__menu li+li button{margin-top:.2rem}.lg-user[open] .lg-user__menu{display:block}@media (max-width: 420px){.lg-navbar__inner{padding:.45rem .6rem}.lg-navbar__brand .lg-wordmark{display:none}}.lg-stepper{background:var(--surface-2);border:1px solid var(--container-outline-weak);border-radius:var(--radius);box-shadow:var(--card-shadow)}.lg-stepper--compact{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:var(--gap-2)}.lg-stepper.no-bg{background:transparent;border:none;box-shadow:none}.lg-stepper__label{display:inline-flex;align-items:baseline;gap:6px;font-weight:600}.lg-stepper__current{font-weight:800;letter-spacing:.02em}.lg-stepper__bar{height:6px;border-radius:999px;background:var(--surface);overflow:hidden;position:relative}.lg-stepper__bar>span{display:block;height:100%;width:var(--p, 0%);background:linear-gradient(180deg,color-mix(in oklab,var(--primary) 75%,white),var(--primary));transition:width .16s ease}.lg-stepper--nav{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:var(--gap-2);padding:var(--pad-2)}.lg-steps{display:flex;justify-content:center;gap:8px;padding:0;margin:0;list-style:none}.lg-step a,.lg-step button{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;text-decoration:none;font-weight:700;border:1px solid var(--container-outline-weak);background:var(--surface);color:var(--text);box-shadow:inset 0 1px #ffffff0a;transition:background-color .12s ease,border-color .12s ease,color .12s ease,transform .06s ease-in-out}.lg-step a:hover,.lg-step button:hover{cursor:pointer;background:color-mix(in oklab,var(--primary) 10%,var(--surface));border-color:color-mix(in oklab,var(--primary) 24%,var(--container-outline-weak))}.lg-step a:active,.lg-step button:active{transform:translateY(1px)}.lg-step a:focus-visible,.lg-step button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lg-step.is-current a,.lg-step.is-current button{background:color-mix(in oklab,var(--primary) 18%,var(--surface));border-color:var(--primary);color:var(--text-high);box-shadow:0 0 0 3px color-mix(in oklab,var(--primary) 22%,transparent)}.lg-step.is-complete a,.lg-step.is-complete button{color:var(--muted);border-color:color-mix(in oklab,var(--text-muted) 26%,var(--container-outline-weak))}.lg-step[data-flavor=success] a,.lg-step[data-flavor=success] button{color:var(--success);border-color:color-mix(in oklab,var(--success) 26%,var(--container-outline-weak))}.lg-step[data-flavor=warning] a,.lg-step[data-flavor=warning] button{color:var(--warning);border-color:color-mix(in oklab,var(--warning) 26%,var(--container-outline-weak))}.lg-step[data-flavor=danger] a,.lg-step[data-flavor=danger] button{color:var(--danger);border-color:color-mix(in oklab,var(--danger) 26%,var(--container-outline-weak))}.sm-only{display:none}@media (max-width: 460px){.lg-steps{display:none}.sm-only{display:inline-flex;align-items:baseline;gap:6px;justify-self:end}.lg-stepper--nav{grid-template-columns:auto 1fr auto}}.lg-stepper--compact.has-nav{grid-template-columns:auto 1fr auto;align-items:center}.lg-stepper__body{display:grid;gap:10px}.lg-stepper__nav{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;border:1px solid var(--container-outline-weak);background:var(--surface);color:var(--text);text-decoration:none;font-weight:700;white-space:nowrap}.lg-stepper__nav:hover{background:color-mix(in oklab,var(--primary) 8%,var(--surface));border-color:color-mix(in oklab,var(--primary) 28%,var(--container-outline-weak))}.lg-stepper__nav:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lg-stepper__nav.is-disabled{opacity:.5;pointer-events:none}.hairline{border-top:1px solid rgba(255,255,255,.06);margin:6px 0 0}hr,.divider{border:0;height:1px;background:var(--container-outline-weak);margin:12px 0}.divider--strong{height:2px;background:var(--neutral)}.divider--soft{background:color-mix(in oklab,var(--surface-2) 70%,transparent)}.divider--compact{margin:6px 0}.block__divider{width:100%;background-color:var(--neutral);border:none;height:2px;margin:24px 0}.task-start{display:grid;gap:12px}.task-start__head{display:grid;gap:8px}.small{font-size:13px}.cmd-box{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--container-outline-weak);border-radius:var(--radius);padding:10px}.cmd{display:block;flex:1 1 auto;padding:8px 10px;border-radius:6px;white-space:nowrap;overflow-x:auto;scrollbar-width:thin;color:#fff}.cmd-box[data-flavor=primary]{border:1px solid var(--primary)}.lg-btn.is-copied{background:color-mix(in oklab,var(--success) 22%,var(--surface));border-color:color-mix(in oklab,var(--success) 44%,transparent);color:var(--text)}.task.is-locked{opacity:.75;cursor:not-allowed;pointer-events:none}.task.is-locked .title{color:var(--muted)}.article{margin-top:18px;display:flex;flex-direction:column;min-height:0;padding:var(--pad-2)}.article__actions{border-top:1px solid var(--container-outline-weak);padding-top:var(--pad-2);display:flex;justify-content:flex-end}.article-viewport{height:calc(100vh - var(--nav-h, 56px) - 24px);overflow:auto;min-height:0;overscroll-behavior:contain;scroll-behavior:smooth}.link-back{display:inline-block;color:var(--brand);text-decoration:none;font-weight:700;padding:6px 8px;border-radius:6px;border:1px dashed transparent}.link-back:hover{text-decoration:underline}.link-back:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.article__head{background:linear-gradient(var(--surface),var(--surface)) padding-box;border-bottom:1px solid var(--container-outline-weak);padding:10px 0 12px}.article__meta{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px}.markdown code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.markdown pre{background:var(--surface-2);border:1px solid var(--container-outline-weak);border-radius:8px;padding:12px;overflow:auto}.lg-callout{margin-top:8px;padding:10px 12px;border:1px solid var(--container-outline-weak);border-radius:8px;background:var(--surface-2);gap:4px;display:flex}.lg-callout--info{border-left:4px solid var(--info)}.lg-callout--warning{border-left:4px solid var(--warning)}.lg-callout--danger{border-left:4px solid var(--danger)}.lg-callout--success{border-left:4px solid var(--success)}.lg-spinner{--size: 24px;--stroke: 3;--indicator: var(--accent);--track: color-mix(in oklab, var(--text) 16%, transparent);display:inline-block;width:var(--size);height:var(--size)}.lg-spinner svg{width:100%;height:100%;transform-origin:50% 50%;animation:lg-rotate 1s linear infinite}.lg-spinner circle{fill:none;stroke-width:var(--stroke);stroke-linecap:round}.lg-spinner .track{stroke:var(--track)}.lg-spinner .arc{stroke:var(--indicator);stroke-dasharray:80 200;stroke-dashoffset:0;animation:lg-dash 1.5s ease-in-out infinite}.lg-spinner--sm{--size: 16px;--stroke: 2}.lg-spinner--md{--size: 24px}.lg-spinner--lg{--size: 40px;--stroke: 4}@keyframes lg-rotate{to{transform:rotate(360deg)}}@keyframes lg-dash{0%{stroke-dasharray:1 200;stroke-dashoffset:0}50%{stroke-dasharray:90 200;stroke-dashoffset:-40}to{stroke-dasharray:90 200;stroke-dashoffset:-124}}.lg-loading{position:relative}.lg-loading.h-lg{height:500px}.lg-loading__overlay{display:none;position:absolute;inset:0;border-radius:var(--radius);background:color-mix(in oklab,var(--bg) 60%,transparent);-webkit-backdrop-filter:blur(2px) saturate(105%);backdrop-filter:blur(2px) saturate(105%);display:grid;place-items:center;align-items:center;gap:10px;padding:var(--pad-3)}.lg-loading.is-loading .lg-loading__overlay{display:grid}.lg-loading__label{color:var(--muted);font-size:13px}button.is-loading{position:relative;pointer-events:none}button.is-loading .btn__label{opacity:0}button.is-loading .btn__spinner{position:absolute;inset:0;margin:auto}@media (prefers-reduced-motion: reduce){.lg-spinner svg{animation-duration:.001ms!important}.lg-spinner .arc{animation-duration:.001ms!important}}.ladder-container{display:flex;flex-direction:column;gap:4px;justify-content:center;align-items:center}.ladder-container__term{font-weight:600;letter-spacing:-.01em;color:var(--text)}.ladder{display:flex;flex-direction:row;gap:4px;margin:0;align-items:center}.step{width:10px;height:10px;border-radius:3px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--container-outline-weak)}.step[data-state=info]{background:var(--info)}.step[data-state=muted]{background:var(--muted)}.step[data-state=neutral]{background:var(--neutral)}.step[data-state=success]{background:var(--success)}.step[data-state=warning]{background:var(--warning)}.lg-hero{position:relative;isolation:isolate;background:radial-gradient(900px 400px at 0% -10%,color-mix(in oklab,var(--brand) 22%,transparent) 0%,transparent 65%),linear-gradient(to bottom,color-mix(in oklab,var(--surface-2) 88%,transparent),var(--surface));border-bottom:1px dashed var(--container-outline-weak)}.lg-hero__inner{max-width:1200px;padding:28px 18px 24px}.lg-hero__title{margin:0 0 6px;font-family:Exo,Inter,system-ui,sans-serif;font-weight:800;letter-spacing:-.01em;font-size:clamp(22px,3.4vw,30px);color:var(--text)}.lg-hero__desc{margin:0 0 12px;color:var(--muted);max-width:72ch}.lg-hero__meta{margin-top:8px;gap:8px}.lg-hero__bar{margin-top:12px;height:8px;border-radius:9999px;background:var(--surface-2);border:1px solid var(--container-outline-weak);overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.lg-hero__bar>span{display:block;height:100%;width:var(--p, 0%);background:linear-gradient(180deg,color-mix(in oklab,var(--accent) 75%,white),var(--accent))}.lg-hero__bar[data-flavor=success]>span{background:linear-gradient(180deg,color-mix(in oklab,var(--success) 75%,white),var(--success))}.lg-hero__actions{display:flex;gap:10px;margin-top:14px}.lg-hero .btn{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 12px;border-radius:8px;font-weight:700;text-decoration:none;border:1px solid var(--container-outline-weak);background:#ffffff08;color:var(--text)}.lg-hero .btn-primary{border-color:color-mix(in oklab,var(--primary) 30%,transparent);background:color-mix(in oklab,var(--primary) 18%,transparent)}.lg-hero .btn-outline{background:transparent}@media (max-width: 520px){.lg-hero__inner{padding:22px 14px 18px}.lg-hero__actions{flex-wrap:wrap}}.lg-hero.is-inset{background:color-mix(in oklab,var(--surface-2) 92%,transparent);border:1px solid var(--container-outline-weak);border-radius:var(--radius);box-shadow:var(--card-shadow)}.lg-hero-card{position:relative;background:var(--surface-2);border:1px solid var(--container-outline-weak);border-radius:calc(var(--radius) + 2px);box-shadow:var(--card-shadow);padding:var(--pad-3);display:grid;gap:12px}.lg-hero-card:before{content:"";position:absolute;inset:-1px auto -1px -1px;width:6px;border-radius:var(--radius) 0 0 var(--radius);background:var(--brand);opacity:.9}.lg-hero-card.is-topstripe:before{inset:-1px -1px auto;width:auto;height:4px;border-radius:var(--radius) var(--radius) 0 0}.lg-hero-card__head{display:grid;gap:8px}.lg-hero-card__title{margin:0;font-family:Exo,Inter,system-ui,sans-serif;font-weight:800;letter-spacing:-.01em;font-size:clamp(22px,3.4vw,28px);color:var(--text)}.lg-hero-card__desc{margin:0;color:var(--muted);max-width:72ch}.lg-hero-card__meta{gap:8px}.lg-hero-card__progress{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}.lg-hero-card__bar{height:8px;border-radius:9999px;background:var(--surface);border:1px solid var(--container-outline-weak);overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.lg-hero-card__bar>span{display:block;height:100%;width:var(--p, 0%);background:linear-gradient(180deg,color-mix(in oklab,var(--accent) 78%,white),var(--accent))}.lg-hero-card__count{color:var(--text);font-weight:700}.lg-hero-card__actions{display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 520px){.lg-hero-card{padding:var(--pad-2)}}.lg-hero-rail{--p: 0;position:relative;background:var(--surface-2);border:1px solid var(--container-outline-weak);border-radius:calc(var(--radius) + 2px);box-shadow:var(--card-shadow);padding:var(--pad-3) var(--pad-3) var(--pad-2) var(--pad-3);overflow:hidden}.lg-hero-rail:before{content:"";position:absolute;inset:-1px auto -1px -1px;width:12px;border-radius:var(--radius) 0 0 var(--radius);background:linear-gradient(var(--brand),var(--brand)),repeating-linear-gradient(to bottom,color-mix(in oklab,var(--bg) 0%,transparent) 0 10px,color-mix(in oklab,var(--bg) 35%,transparent) 10px 14px);background-blend-mode:multiply}.lg-hero-rail:after{content:"";position:absolute;left:6px;top:calc(8px + var(--p) * 1% * (100% - 16px));transform:translate(-50%,-50%);width:14px;height:14px;border-radius:9999px;background:var(--accent);box-shadow:0 0 0 2px var(--surface-2),0 0 0 3px color-mix(in oklab,var(--accent) 35%,transparent)}.lg-hero-rail__body{display:grid;gap:12px;padding-left:8px}.lg-hero-rail__head{display:grid;gap:8px}.lg-hero-rail__title{margin:0;font-family:Exo,Inter,system-ui,sans-serif;font-weight:800;letter-spacing:-.01em;font-size:clamp(22px,3.4vw,28px);color:var(--text)}.lg-hero-rail__desc{margin:0;color:var(--muted);max-width:72ch}.lg-hero-rail__meta{gap:8px}.lg-hero-rail__footer{display:flex;align-items:center;gap:12px;justify-content:space-between;padding-top:4px;border-top:1px dashed var(--container-outline-weak)}.lg-hero-rail__counts{color:var(--text);font-weight:700}.lg-hero-rail__actions{display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 520px){.lg-hero-rail{padding:var(--pad-2) var(--pad-2) var(--pad-2) var(--pad-2)}.lg-hero-rail__body{padding-left:6px}}.lg-hero-cmd{--p: 0;position:relative;background:var(--surface-2);border:1px solid var(--container-outline-weak);border-radius:calc(var(--radius) + 2px);box-shadow:var(--card-shadow);padding:var(--pad-3)}.lg-hero-cmd__band{position:relative;padding:var(--pad-2);border-radius:calc(var(--radius) + 1px);background:repeating-linear-gradient(to right,color-mix(in oklab,var(--surface) 96%,transparent) 0 10px,color-mix(in oklab,var(--surface) 92%,transparent) 10px 20px);border:1px dashed var(--container-outline-weak)}.lg-hero-cmd__head{display:grid;gap:6px}.lg-hero-cmd__title{margin:0;font-family:Exo,Inter,system-ui,sans-serif;font-weight:800;letter-spacing:-.01em;font-size:clamp(22px,3.4vw,28px);color:var(--text)}.lg-hero-cmd__desc{margin:0;color:var(--muted);max-width:72ch}.lg-hero-cmd__stats{margin-top:8px;gap:8px}.lg-hero-cmd__progress{position:absolute;left:var(--pad-3);right:var(--pad-3);bottom:calc(var(--pad-3) - 2px);height:2px;background:var(--surface);border-radius:2px;overflow:hidden}.lg-hero-cmd__progress>span{display:block;height:100%;width:var(--w, 0%);background:var(--accent)}.lg-hero-cmd__palette{margin-top:calc(var(--pad-3) - 6px);display:flex;gap:10px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--container-outline-weak);border-radius:10px;box-shadow:0 6px 24px #00000059;padding:10px}.btn.btn-soft{color:var(--text);background:color-mix(in oklab,var(--surface-2) 80%,transparent);border:1px solid var(--container-outline-weak);border-radius:8px;padding:8px 12px;font-weight:600}.btn.btn-soft:hover{background:color-mix(in oklab,var(--surface-2) 88%,transparent)}@media (max-width: 520px){.lg-hero-cmd,.lg-hero-cmd__band{padding:var(--pad-2)}.lg-hero-cmd__palette{gap:8px}}.lg-disclosure{margin:8px 0}.lg-disclosure__toggle{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;padding:4px 2px;border-radius:6px;color:var(--brand);font-weight:700;text-decoration:none;border:1px dashed transparent}.lg-disclosure__toggle::-webkit-details-marker{display:none}.lg-disclosure__toggle:hover{text-decoration:underline}.lg-disclosure__toggle:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.lg-disclosure .chev{width:14px;height:14px;flex:0 0 14px;transform:rotate(0);transition:transform .12s ease;opacity:.85}.lg-disclosure[open] .lg-disclosure__toggle .chev{transform:rotate(90deg)}.lg-disclosure__panel{display:none;margin-top:8px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--container-outline-weak);border-radius:8px;color:var(--text)}.lg-disclosure[open] .lg-disclosure__panel{display:grid;gap:8px}.lg-tooltip{cursor:help;position:relative;display:inline-block}.lg-tooltip__trigger{cursor:help}.lg-tooltip__bubble{position:absolute;z-index:40;width:max-content;min-width:220px;max-width:360px;padding:8px 10px;border-radius:8px;font-size:13px;line-height:1.35;color:var(--text);background:var(--surface-2);border:1px solid var(--container-outline-weak);box-shadow:var(--card-shadow);white-space:normal;overflow-wrap:break-word;word-break:normal;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .14s ease,transform .14s ease,visibility .14s linear;left:50%;bottom:calc(100% + 4px);transform:translate(-50%,4px)}.lg-tooltip__bubble p{margin:0 0 .4rem}.lg-tooltip__bubble :where(p:last-child){margin-bottom:0}.lg-tooltip__bubble ul,.lg-tooltip__bubble ol{margin:.25rem 0 0 1.1rem;padding:0}.lg-tooltip__bubble li{margin:.15rem 0}.lg-tooltip__bubble code{white-space:pre-wrap;font:12px/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;background:var(--surface);border:1px solid var(--container-outline-weak);border-radius:4px;padding:0 .25rem}.lg-tooltip__bubble strong{font-weight:700}.lg-tooltip:hover>.lg-tooltip__bubble,.lg-tooltip:focus-within>.lg-tooltip__bubble,.lg-tooltip[aria-expanded=true]>.lg-tooltip__bubble,.lg-tooltip[data-open=true]>.lg-tooltip__bubble{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)}.lg-tooltip:not([data-placement])>.lg-tooltip__bubble,.lg-tooltip[data-placement=top]>.lg-tooltip__bubble{left:50%;bottom:calc(100% + 4px);top:auto;transform:translate(-50%,4px)}.lg-tooltip:not([data-placement]):hover>.lg-tooltip__bubble,.lg-tooltip:not([data-placement]):focus-within>.lg-tooltip__bubble,.lg-tooltip:not([data-placement])[aria-expanded=true]>.lg-tooltip__bubble,.lg-tooltip:not([data-placement])[data-open=true]>.lg-tooltip__bubble,.lg-tooltip[data-placement=top]:hover>.lg-tooltip__bubble,.lg-tooltip[data-placement=top]:focus-within>.lg-tooltip__bubble,.lg-tooltip[data-placement=top][aria-expanded=true]>.lg-tooltip__bubble,.lg-tooltip[data-placement=top][data-open=true]>.lg-tooltip__bubble{transform:translate(-50%)}.lg-tooltip[data-placement=bottom]>.lg-tooltip__bubble{top:calc(100% + 4px);bottom:auto;left:50%;transform:translate(-50%,-4px)}.lg-tooltip[data-placement=bottom]:hover>.lg-tooltip__bubble,.lg-tooltip[data-placement=bottom]:focus-within>.lg-tooltip__bubble,.lg-tooltip[data-placement=bottom][aria-expanded=true]>.lg-tooltip__bubble,.lg-tooltip[data-placement=bottom][data-open=true]>.lg-tooltip__bubble{transform:translate(-50%)}.lg-tooltip[data-placement=left]>.lg-tooltip__bubble{right:calc(100% + 4px);left:auto;top:50%;bottom:auto;transform:translate(4px,-50%)}.lg-tooltip[data-placement=left]:hover>.lg-tooltip__bubble,.lg-tooltip[data-placement=left]:focus-within>.lg-tooltip__bubble,.lg-tooltip[data-placement=left][aria-expanded=true]>.lg-tooltip__bubble,.lg-tooltip[data-placement=left][data-open=true]>.lg-tooltip__bubble{transform:translateY(-50%)}.lg-tooltip[data-placement=right]>.lg-tooltip__bubble{left:calc(100% + 4px);right:auto;top:50%;bottom:auto;transform:translate(-4px,-50%)}.lg-tooltip[data-placement=right]:hover>.lg-tooltip__bubble,.lg-tooltip[data-placement=right]:focus-within>.lg-tooltip__bubble,.lg-tooltip[data-placement=right][aria-expanded=true]>.lg-tooltip__bubble,.lg-tooltip[data-placement=right][data-open=true]>.lg-tooltip__bubble{transform:translateY(-50%)}.lg-tooltip[data-variant=info]>.lg-tooltip__bubble{border-color:color-mix(in oklab,var(--primary) 40%,transparent)}.lg-tooltip[data-variant=success]>.lg-tooltip__bubble{border-color:color-mix(in oklab,var(--success) 40%,transparent)}.lg-tooltip[data-variant=warning]>.lg-tooltip__bubble{border-color:color-mix(in oklab,var(--warning, oklch(80% .13 70deg)) 40%,transparent)}.lg-tooltip[data-variant=danger]>.lg-tooltip__bubble{border-color:color-mix(in oklab,var(--danger) 40%,transparent)}.lg-tooltip[data-variant=accent]>.lg-tooltip__bubble{border-color:color-mix(in oklab,var(--accent) 40%,transparent)}.lg-tooltip:focus-within{outline:0}.lg-tooltip:focus-within>.lg-tooltip__trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.lg-tooltip[data-size=sm]>.lg-tooltip__bubble{min-width:160px;max-width:280px}.lg-tooltip[data-size=lg]>.lg-tooltip__bubble{min-width:280px;max-width:420px}[aria-disabled=true] .lg-tooltip__bubble{pointer-events:none}.kanban{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.kanban__col{display:grid;gap:10px;align-content:start}.kanban__head{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:6px;border-bottom:1px solid var(--container-outline-weak)}.kanban__list{display:grid;gap:10px}.task--row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px}.is-locked{opacity:.6;pointer-events:none}.kanban__col{position:relative;padding:8px;border-radius:var(--radius)}.kanban__col[data-tone=todo]{background:linear-gradient(180deg,color-mix(in oklab,var(--muted) 7%,transparent),transparent 36%);border-left:3px dashed var(--container-outline-weak)}.kanban__col[data-tone=wip]{background:linear-gradient(180deg,color-mix(in oklab,var(--accent) 12%,transparent),transparent 36%);border-left:3px solid color-mix(in oklab,var(--accent) 60%,transparent)}.kanban__col[data-tone=done]{background:linear-gradient(180deg,color-mix(in oklab,var(--success) 12%,transparent),transparent 36%);border-left:3px solid color-mix(in oklab,var(--success) 60%,transparent)}.lg-btn__count{margin-left:.5rem;padding:0 .45rem;border-radius:.5rem;font-weight:800;font-size:12px;line-height:22px;height:22px;display:inline-flex;align-items:center;background:var(--surface-2);border:1px solid var(--container-outline-weak)}.lg-commands summary{list-style:none}.lg-commands[open]>.lg-commands__panel{margin-top:10px}.lg-kbd{font:600 11px/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;padding:3px 6px;border:1px solid var(--container-outline-weak);border-radius:6px;background:var(--surface-2);color:var(--text);margin-left:6px;opacity:.85}.empty-state{display:grid;gap:12px;place-items:center;text-align:center;padding:20px;border-radius:var(--radius);background:var(--surface-2);border:1px dashed var(--container-outline-weak);box-shadow:var(--card-shadow)}.empty-state__icon{display:grid;place-items:center;width:56px;height:56px;border-radius:14px;background:color-mix(in oklab,var(--accent) 12%,transparent);border:1px solid color-mix(in oklab,var(--accent) 24%,transparent)}.empty-state__icon .icon{width:28px;height:28px;stroke:var(--accent);fill:none;stroke-width:2}.empty-state__body{display:grid;gap:8px}.empty-state .title{margin:0}.empty-inline{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius);background:var(--surface-2);border:1px dashed var(--container-outline-weak)}.empty-inline .icon{width:18px;height:18px;stroke:var(--muted);fill:none}.progress{height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.progress>span{display:block;height:100%;background:linear-gradient(180deg,color-mix(in oklab,var(--accent) 78%,white),var(--accent));width:var(--w, 50%)}.progress--completed{background:var(--success)}.progress--completed>span{background:var(--success)}.lg-ico{width:16px;height:16px;color:color-mix(in oklab,var(--text) 70%,var(--muted));opacity:.9;display:flex;align-items:center;justify-content:center;flex:0 0 16px}.markdown-body{color:var(--text-high);font:400 15px/1.65 Inter,system-ui,sans-serif;max-width:var(--container-w);margin:0 auto;padding:var(--pad-2)}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{font-family:Exo,Inter,system-ui,sans-serif;font-weight:700;line-height:1.3;margin:1.5em 0 .5em;color:var(--text)}.markdown-body h1{font-size:1.8rem;border-bottom:1px solid var(--container-outline-weak);padding-bottom:.3em}.markdown-body h2{font-size:1.4rem}.markdown-body h3{font-size:1.2rem;font-weight:600}.markdown-body h4,.markdown-body h5,.markdown-body h6{font-size:1rem;font-weight:600}.markdown-body p{margin:.75em 0;color:var(--text)}.markdown-body p.muted{color:var(--text-muted)}.markdown-body a{color:var(--link);text-decoration-line:underline;text-decoration-thickness:1.5px;text-underline-offset:.14em;text-decoration-color:var(--link-underline);transition:color .15s ease}.markdown-body a:hover{color:var(--link-hover)}.markdown-body a:visited{color:var(--link-visited)}.markdown-body ul,.markdown-body ol{margin:.75em 0;padding-left:1.4em}.markdown-body li{margin:.3em 0}.markdown-body ul ul,.markdown-body ol ol{margin:.4em 0}.markdown-body blockquote{border-left:4px solid var(--accent);margin:1em 0;padding:.5em 1em;color:var(--text-muted);background:var(--container-muted);border-radius:6px}.markdown-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;background:var(--surface-2);padding:.15em .35em;border-radius:4px;border:1px solid var(--container-outline-weak)}.markdown-body pre{margin:1em 0;padding:1em;border-radius:8px;background:var(--surface-2);border:1px solid var(--container-outline-weak);overflow:auto}.markdown-body pre code{background:transparent;padding:0;border:0;font-size:.95em;line-height:1.45}.markdown-body table{border-collapse:collapse;width:100%;margin:1.25em 0;font-size:.95rem}.markdown-body th,.markdown-body td{border:1px solid var(--container-outline-weak);padding:.6em .8em}.markdown-body th{background:var(--surface-2);font-weight:600;text-align:left}.markdown-body hr{border:0;height:1px;margin:2em 0;background:var(--container-outline-weak)}.markdown-body img{max-width:100%;height:auto;border-radius:var(--radius)}.lg-git-stepper{position:relative;display:flex;flex-direction:column;align-items:center;padding:20px 0;min-height:50px}.lg-git-stepper__tasks{min-height:16px;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;align-items:center;justify-content:start}.lg-git-stepper__task{display:grid;grid-auto-flow:column;grid-auto-columns:16px;align-items:center;justify-content:start}.lg-git-stepper__task--in-progress{background:var(--accent)}.lg-git-stepper__commits{display:grid;grid-auto-flow:column;grid-auto-columns:32px;align-items:center;justify-content:start}.lg-git-commit{display:flex;align-items:center;justify-content:center;position:relative}.lg-git-commit__circle{width:32px;height:32px;border-radius:50%;background:var(--surface-2);border:2px solid var(--container-outline-weak);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:var(--text);position:relative;z-index:3;flex-shrink:0}.lg-git-stepper__line{width:100%;height:100%;display:flex;flex-direction:column;align-self:center}.lg-git-stepper__line__top{height:50%;border-bottom:2px solid var(--container-outline-weak);display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:600;color:var(--text)}.lg-git-stepper__line__bottom{height:50%;border-top:2px solid var(--container-outline-weak);display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:600;color:var(--text)}.lg-git-stepper__line--completed .lg-git-stepper__line__top{border-bottom-color:var(--success)}.lg-git-stepper__line--completed .lg-git-stepper__line__bottom{border-top-color:var(--success)}.lg-git-stepper__line--in-progress .lg-git-stepper__line__top{border-bottom-color:var(--accent)}.lg-git-stepper__line--in-progress .lg-git-stepper__line__bottom{border-top-color:var(--accent)}.lg-git-commit.is-current .lg-git-commit__circle{background:var(--primary);border-color:var(--primary);color:#fff}.lg-git-commit.is-completed .lg-git-commit__circle{background:var(--success);border-color:var(--success);color:#fff}.lg-git-commit.is-future .lg-git-commit__circle{background:var(--surface);border-color:var(--container-outline-weak);color:var(--muted);opacity:.6}.lg-git-stepper__task-range{position:absolute;top:-10px;height:20px;border:2px solid var(--warning);border-radius:4px;z-index:1;background:transparent}.lg-git-stepper__task-range--in-progress{border-color:var(--warning)}.lg-git-stepper__task-range--completed{border-color:var(--success)}.lg-git-commit.is-review-requested .lg-git-commit__circle{background:var(--info);border-color:var(--info);color:#fff}.lg-git-commit.is-review-accepted .lg-git-commit__circle{background:var(--success);border-color:var(--success);color:#fff}.lg-git-commit.is-review-rejected .lg-git-commit__circle{background:var(--danger);border-color:var(--danger);color:#fff}.lg-git-commit.is-review-improvement .lg-git-commit__circle{background:var(--warning);border-color:var(--warning);color:#fff}@media (max-width: 768px){.lg-git-stepper{padding:16px 0;gap:6px;min-height:45px}.lg-git-stepper__commits{grid-auto-columns:28px;gap:6px}.lg-git-commit__circle{width:28px;height:28px;font-size:12px}.lg-git-stepper__line{width:6px;height:2px}}@media (max-width: 480px){.lg-git-stepper{padding:12px 0;gap:4px;min-height:40px}.lg-git-stepper__commits{grid-auto-columns:24px;gap:4px}.lg-git-commit__circle{width:24px;height:24px;font-size:11px}.lg-git-stepper__line{width:4px;height:2px}}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:400 15px/1.5 Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;min-height:100vh;grid-template-rows:1fr auto}app-root{height:100%;min-height:0;display:block}app-root>*:not(router-outlet){height:100%;min-height:0;display:grid;grid-template-rows:auto 1fr}.sticky-top{position:sticky;top:0;z-index:8}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.wrap{width:100%;margin:0 auto;padding:0 18px 48px;min-height:0;overflow:auto;overscroll-behavior:contain;scroll-behavior:smooth;display:flex;justify-content:center}.content{width:var(--container-w)}.btn-row{display:flex;flex-wrap:wrap;gap:10px}section{display:grid;gap:14px}.stack{display:grid;gap:14px}.stack.stack--center{align-items:center;place-items:center}.card{background:var(--surface);border:0;border-radius:var(--radius);box-shadow:var(--card-shadow);padding:var(--pad-2)}.card[data-flavor=accent]{background:var(--neutral);border:1px solid var(--text)}.row-container{display:flex;flex-direction:row;gap:10px}.learning{display:grid;gap:var(--gap-2)}.learning .head{display:flex;align-items:center;gap:var(--gap-2);justify-content:space-between}.lg-pattern{border:1px solid var(--container-outline-weak);border-radius:var(--radius);background:color-mix(in oklab,var(--surface) 40%,transparent);overflow:hidden;margin:0}.lg-pattern+.lg-pattern{margin-top:12px}.lg-pattern__head{display:flex;align-items:baseline;justify-content:space-between;padding:var(--pad-2);background:color-mix(in oklab,var(--surface-2) 60%,transparent);border-bottom:1px dashed var(--container-outline-weak)}.lg-pattern__title{margin:0;font-weight:700;letter-spacing:-.01em}.task{display:grid;gap:var(--gap-2);background:var(--surface);border-radius:var(--radius);box-shadow:var(--card-shadow);padding:var(--pad-2)}.task .top{display:flex;align-items:center;justify-content:space-between;gap:var(--gap-2)}.task .meta{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}.task .title{margin:0;font-weight:600}.task .desc{margin:0;color:var(--muted)}.task .foot{display:flex;justify-content:space-between;align-items:center;gap:var(--gap-2)}:where(button,a,[tabindex]):focus-visible{outline:2px solid color-mix(in oklab,var(--accent) 70%,white);outline-offset:3px;border-radius:6px}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.row{display:flex;gap:var(--gap-2);align-items:center}.lg-section{background:var(--surface-2);border:1px solid var(--container-outline-weak);border-radius:var(--radius);box-shadow:var(--card-shadow);padding:var(--pad-2)}.lg-card{background:var(--surface);border:0;border-radius:var(--radius);box-shadow:var(--card-shadow);padding:var(--pad-2)}.lg-card.is-compact,.lg-card.is-detailed{gap:var(--gap-2)}.lg-stripe{height:2px;background:var(--surface-2);border-radius:2px}.lg-demo-nav{background:color-mix(in oklab,var(--surface) 86%,transparent);border:1px dashed var(--container-outline-weak)}.auth-card,.auth-form{display:grid;gap:var(--gap-2)}.auth-form .field{display:grid;gap:6px}.auth-form .field label{font-weight:600;color:var(--text)}.auth-form .field input{width:100%;border-radius:var(--radius);border:1px solid var(--container-outline-weak);background:var(--surface-2);color:var(--text);padding:10px 12px;font:inherit}.auth-form .field input::placeholder{color:color-mix(in oklab,var(--muted) 80%,transparent)}.auth-form .field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in oklab,var(--primary) 24%,transparent);outline:none}.pattern-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 4px}.pattern-title{margin:0;font-weight:700;font-size:16px;letter-spacing:-.01em}.taxo{margin:6px 0 0}.taxo dt{margin-top:10px;font-weight:700;color:var(--text)}.taxo dd{margin:6px 0 0}.impl-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.impl{display:flex;align-items:center;gap:10px;justify-content:space-between}.impl .tag{min-width:0}.level--star{--tone: var(--accent);display:inline-flex;align-items:center;gap:6px;color:var(--text-high)}.level--star .icon{width:14px;height:14px;fill:var(--tone);filter:drop-shadow(0 0 .5px rgba(0,0,0,.4))}.level--star .n{font-size:12px;font-weight:800}.level--star[data-tone=primary]{--tone: var(--primary)}.level--star[data-tone=success]{--tone: var(--success)}@media (max-width: 520px){.impl{gap:8px}.pattern-head{align-items:start;flex-direction:column}}.scrollable-fill{display:flex;flex:1 1 auto;min-height:0}code[class*=language-],pre[class*=language-]{color:#f8f8f2;background:none;text-shadow:0 1px rgba(0,0,0,.3);font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background:#272822}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#8292a2}.token.punctuation{color:#f8f8f2}.token.namespace{opacity:.7}.token.property,.token.tag,.token.constant,.token.symbol,.token.deleted{color:#f92672}.token.boolean,.token.number{color:#ae81ff}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#a6e22e}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string,.token.variable{color:#f8f8f2}.token.atrule,.token.attr-value,.token.function,.token.class-name{color:#e6db74}.token.keyword{color:#66d9ef}.token.regex,.token.important{color:#fd971f}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}pre[class*=language-].line-numbers{position:relative;padding-left:3.8em;counter-reset:linenumber}pre[class*=language-].line-numbers>code{position:relative;white-space:inherit}.line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:0;font-size:100%;left:-3.8em;width:3em;letter-spacing:-1px;border-right:1px solid #999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.line-numbers-rows>span{display:block;counter-increment:linenumber}.line-numbers-rows>span:before{content:counter(linenumber);color:#999;display:block;padding-right:.8em;text-align:right}pre[data-line]{position:relative;padding:1em 0 1em 3em}.line-highlight{position:absolute;left:0;right:0;padding:inherit 0;margin-top:1em;background:#997a6614;background:linear-gradient(to right,#997a661a 70%,#997a6600);pointer-events:none;line-height:inherit;white-space:pre}@media print{.line-highlight{-webkit-print-color-adjust:exact;color-adjust:exact}}.line-highlight:before,.line-highlight[data-end]:after{content:attr(data-start);position:absolute;top:.4em;left:.6em;min-width:1em;padding:0 .5em;background-color:#997a6666;color:#f5f2f0;font:700 65%/1.5 sans-serif;text-align:center;vertical-align:.3em;border-radius:999px;text-shadow:none;box-shadow:0 1px #fff}.line-highlight[data-end]:after{content:attr(data-end);top:auto;bottom:.4em}.line-numbers .line-highlight:before,.line-numbers .line-highlight:after{content:none}pre[id].linkable-line-numbers span.line-numbers-rows{pointer-events:all}pre[id].linkable-line-numbers span.line-numbers-rows>span:before{cursor:pointer}pre[id].linkable-line-numbers span.line-numbers-rows>span:hover:before{background-color:#80808033}
