.cv{display:flex;flex-direction:column;gap:14px}.cv__toolbar{display:flex;align-items:center;gap:12px}.cv__count{font-family:var(--mono);font-size:11px;color:var(--ink-4);letter-spacing:.04em}.cv__toolbar-spacer{flex:1}.cv__view-toggle{border:1px solid var(--rule);border-radius:9999px;background:var(--surface);padding:2px;gap:0}.cv__view-toggle,.cv__view-toggle-btn{display:inline-flex;align-items:center}.cv__view-toggle-btn{gap:5px;padding:5px 11px;font-family:var(--mono);font-size:11px;color:var(--ink-4);border:0;background:transparent;border-radius:9999px;cursor:pointer;transition:background .12s ease,color .12s ease;text-transform:lowercase}.cv__view-toggle-btn:hover{color:var(--ink-2)}.cv__view-toggle-btn[data-active=true]{background:var(--ink);color:var(--bg)}.cv__filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cv__search{flex:0 0 240px;padding:6px 10px;border:1px solid var(--rule);border-radius:9999px;background:var(--bg);font-family:var(--mono);font-size:12px;color:var(--ink)}.cv__search:focus{outline:2px solid color-mix(in oklch,var(--blue) 35%,transparent);outline-offset:1px;border-color:var(--blue)}.cv__filter-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.cv__filter-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--rule);border-radius:9999px;font-family:var(--mono);font-size:11px;color:var(--ink-3);background:var(--surface)}.cv__filter-chip strong{color:var(--ink-2);font-weight:600}.cv__filter-chip__x{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:0;border-radius:9999px;background:transparent;color:var(--ink-4);cursor:pointer}.cv__filter-chip__x:hover{background:var(--rule);color:var(--ink)}.cv__filter-chip--clear{cursor:pointer;color:var(--ink-4)}.cv__filter-chip--clear:hover{color:var(--blue);border-color:var(--blue)}.cv__filter-popover{font-family:var(--sans)}.cv__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:48px 24px;min-height:280px;border:1px dashed var(--rule);border-radius:14px;background:var(--bg)}.cv__empty-icon{color:var(--ink-4);display:inline-flex}.cv__empty-title{font:600 14px var(--mono);color:var(--ink);margin-bottom:6px}.cv__empty-body{font-size:13px;color:var(--ink-3);max-width:40ch;margin:0 auto 12px}.cv__empty-cta{margin-top:4px}.cv__state-title{font-family:var(--sans);font-size:17px;font-weight:700;color:var(--ink)}.cv__state-body{font-family:var(--sans);font-size:13px;line-height:1.6;color:var(--ink-3);max-width:46ch}.cv__state-cta{display:inline-flex;align-items:center;gap:6px;margin-top:4px;padding:6px 16px;border-radius:9999px;background:var(--blue);color:#fff;border:1px solid var(--blue);font:13px var(--mono);letter-spacing:.04em;text-transform:lowercase;cursor:pointer;transition:background .12s ease,box-shadow .12s ease}.cv__state-cta:hover{background:color-mix(in oklch,var(--blue) 90%,#000);box-shadow:var(--shadow-sm)}.cv__state-cta--secondary{background:var(--bg);color:var(--ink);border-color:var(--rule)}.cv__state-cta--secondary:hover{background:var(--bg);border-color:var(--blue);color:var(--blue)}.cv__loading{border:1px solid var(--rule);border-radius:12px;background:var(--bg);overflow:hidden}.cv__skel-row{display:flex;align-items:center;gap:12px;padding:13px 16px;border-top:1px solid var(--rule)}.cv__skel-row:first-child{border-top:0}.cv__count-skel,.cv__skel-bar,.cv__skel-pill{background:var(--surface-hi);animation:cv-pulse-soft 1.6s cubic-bezier(.4,0,.6,1) infinite}.cv__skel-bar{height:14px;border-radius:6px}.cv__skel-bar--name{width:220px}.cv__skel-bar--sm{width:88px;margin-left:auto}.cv__skel-bar--sm~.cv__skel-bar--sm{margin-left:0}.cv__skel-pill{height:14px;width:64px;border-radius:9999px}.cv__count-skel{display:inline-block;width:72px;height:11px;border-radius:6px;vertical-align:middle}@keyframes cv-pulse-soft{0%,to{opacity:1}50%{opacity:.6}}.cv__error{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:40px 24px;min-height:240px;border:1px solid color-mix(in oklch,var(--danger,#dc2626) 40%,transparent);border-radius:12px;background:color-mix(in oklch,var(--danger,#DC2626) 6%,transparent)}.cv__error-icon{color:var(--danger,#DC2626)}.cv__list{border:1px solid var(--rule);border-radius:12px;background:var(--bg);overflow:hidden}.cv__th-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:center;gap:12px;padding:9px 16px;border-bottom:1px solid var(--rule);background:var(--surface);font:10px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-4)}.cv__th{display:inline-flex;align-items:center;gap:4px;min-width:0}.cv__th--actions,.cv__th--chev{flex:0 0 28px}.cv__th__sort{display:inline-flex;align-items:center;gap:4px;background:transparent;border:0;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;padding:0}.cv__tr{display:flex;align-items:center;border-top:1px solid var(--rule);transition:background .1s ease;position:relative}.cv__tr:hover{background:var(--surface)}.cv__tr__link{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:center;gap:12px;padding:12px 16px;flex:1 1 auto;min-width:0;color:inherit;text-decoration:none}.cv__tr__link--inert{cursor:default}.cv__tr__chev{flex:0 0 14px;color:var(--ink-5)}.cv__td,.cv__tr__chev{display:inline-flex;align-items:center}.cv__td{min-width:0}.cv__tr__actions{flex:0 0 auto;padding-right:8px}.cv__cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.cv__cards--compact{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.cv__actions-overlay{position:absolute;top:10px;right:10px;z-index:2}.cv__actions-overlay--kanban{top:8px;right:8px}.cv__actions-overlay--calendar{top:2px;right:2px}.cv__kanban{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;min-height:320px}.cv__kanban-col{flex:0 0 280px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--rule);border-radius:12px;overflow:hidden}.cv__kanban-col-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-bottom:1px solid var(--rule);background:var(--bg)}.cv__kanban-col-count{font:10px var(--mono);color:var(--ink-4);letter-spacing:.04em}.cv__kanban-col-body{display:flex;flex-direction:column;gap:8px;padding:10px;flex:1}.cv__kanban-card{background:var(--bg);border:1px solid var(--rule);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;transition:border-color .12s ease,box-shadow .12s ease;cursor:pointer}.cv__kanban-card:hover{border-color:var(--blue);box-shadow:var(--shadow-sm)}.cv__kanban-card-title{font:600 13px var(--mono);color:var(--ink);letter-spacing:-.005em}.cv__kanban-card-status{font-size:10px}.cv__kanban-card-foot{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font:10px var(--mono);color:var(--ink-4)}.cv__kanban-col-empty{padding:16px 8px;text-align:center;font:11px var(--mono);color:var(--ink-5)}.cv__kanban-empty{padding:32px;text-align:center;color:var(--ink-4)}.cv__calendar{display:flex;flex-direction:column;gap:8px;border:1px solid var(--rule);border-radius:12px;background:var(--bg);padding:12px}.cv__calendar-nav{display:flex;align-items:center;gap:8px}.cv__calendar-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid var(--rule);border-radius:6px;background:var(--bg);color:var(--ink-3);cursor:pointer;transition:border-color .12s ease,color .12s ease}.cv__calendar-nav-btn:hover{border-color:var(--blue);color:var(--blue)}.cv__calendar-nav-label{font:600 13px var(--mono);color:var(--ink);letter-spacing:-.005em;flex:1}.cv__calendar-today{padding:4px 10px;border:1px solid var(--rule);border-radius:9999px;background:var(--bg);font:11px var(--mono);color:var(--ink-3);cursor:pointer;transition:border-color .12s ease,color .12s ease}.cv__calendar-today:hover{border-color:var(--blue);color:var(--blue)}.cv__calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;font:10px var(--mono);letter-spacing:.06em;color:var(--ink-4);text-transform:uppercase;padding:0 4px}.cv__calendar-weekday{text-align:center}.cv__calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(96px,auto);gap:4px}.cv__calendar-cell{background:var(--surface);border:1px solid var(--rule);border-radius:8px;padding:6px 8px;display:flex;flex-direction:column;gap:4px;min-width:0}.cv__calendar-cell--off-month{background:transparent;opacity:.45}.cv__calendar-cell-date{font:11px var(--mono);color:var(--ink-4);letter-spacing:.02em}.cv__calendar-cell-events{display:flex;flex-direction:column;gap:2px;min-width:0}.cv__calendar-event{display:flex;align-items:center;gap:4px;padding:3px 6px;border-radius:6px;background:var(--bg);border:1px solid var(--rule);font:10px var(--mono);color:var(--ink-2);overflow:hidden;min-width:0;cursor:pointer;transition:border-color .12s ease}.cv__calendar-event:hover{border-color:var(--blue)}.cv__calendar-event-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.cv__calendar-event-progress,.cv__calendar-event-status{flex-shrink:0}.cv__calendar-more{font:10px var(--mono);color:var(--ink-4);letter-spacing:.04em;padding:2px 6px}.cv__calendar-empty{padding:32px;text-align:center;color:var(--ink-4)}.app__rail{width:240px;background:var(--bg);border-right:1px solid var(--rule);position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.app__mobile-trigger,.app__scrim{display:none}@media (max-width:767px){.app__rail{position:fixed;top:0;left:0;width:280px;max-width:86vw;height:100vh;z-index:50;transform:translateX(-100%);transition:transform .22s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 24px rgba(0,0,0,.18)}.app__shell--drawer-open .app__rail{transform:translateX(0)}.app__mobile-trigger{position:fixed;top:8px;left:8px;z-index:60;width:40px;height:40px;border-radius:9999px;background:var(--surface);border:1px solid var(--rule);display:inline-flex;align-items:center;justify-content:center;color:var(--ink);cursor:pointer;transition:background .12s ease,border-color .12s ease}.app__mobile-trigger:hover{background:var(--surface-hi)}.app__mobile-trigger:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.app__shell--drawer-open .app__scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:40;cursor:pointer}.topbar{padding-left:56px}}.rail__brand{display:flex;align-items:center;gap:10px;padding:14px 16px 8px}.rail__brand .mark{font-family:var(--mono);font-weight:700;font-size:18px;color:var(--ink);letter-spacing:-.02em}.rail__brand .mark-blue{color:var(--blue)}.godview{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:9999px;border:1px solid var(--rule);background:var(--bg);font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-4);transition:all .12s ease}.godview:hover{border-color:var(--ink-3);color:var(--ink-2)}.godview .godview__dot{width:5px;height:5px;border-radius:50%;background:var(--ink-5)}.godview--on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.godview--on .godview__dot{background:var(--blue);box-shadow:0 0 6px var(--blue)}.godview__state{opacity:.6}.rail__search{margin:0 12px 10px;display:flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--rule);border-radius:9999px;background:var(--bg);font-family:var(--mono);font-size:11px;color:var(--ink-4);transition:all .12s ease;cursor:pointer}.rail__search:hover{border-color:var(--ink-4);color:var(--ink-2)}.rail__search span{flex:1;text-align:left;text-transform:lowercase}.rail__search kbd{font-family:var(--mono);font-size:10px;padding:1px 5px;border:1px solid var(--rule);border-radius:4px;background:var(--surface)}.rail__scope{padding:0 12px 12px;position:relative}.rail__scope-btn{width:100%;display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--rule);border-radius:9999px;font-family:var(--mono);font-size:11px;color:var(--ink-2);transition:all .12s ease;background:var(--bg)}.rail__scope-btn:hover{border-color:var(--ink-4)}.rail__scope-btn .dot{width:8px;height:8px;border-radius:50%;background:var(--blue);flex-shrink:0}.rail__scope-btn .name{flex:1;text-align:left;text-transform:lowercase}.rail__scope-menu{position:absolute;top:calc(100% + 4px);left:12px;right:12px;background:var(--bg);border:1px solid var(--rule);border-radius:12px;box-shadow:var(--shadow-lg,0 10px 30px rgba(0,0,0,.08));padding:6px;z-index:20;display:flex;flex-direction:column;gap:1px}.rail__scope-opt{width:100%;display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;font-family:var(--mono);font-size:12px;color:var(--ink-2);background:transparent;transition:background .1s ease;cursor:pointer}.rail__scope-opt:hover{background:var(--surface)}.rail__scope-opt .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.rail__scope-opt .lbl{flex:1;text-align:left;text-transform:lowercase}.rail__scope-opt .meta{font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-4)}.rail__scope-rule{height:1px;background:var(--rule);margin:4px 2px}.rail__scroll{flex:1;overflow-y:auto;padding:4px 8px 12px}.rail__pinned,.rail__scroll{display:flex;flex-direction:column}.rail__pinned{padding:4px 0 10px;margin-bottom:8px;border-bottom:1px solid var(--rule)}.rail__bottom,.rail__top{display:flex;flex-direction:column}.rail__rule{height:1px;background:var(--rule);margin:12px}.rail__rule--soft{background:color-mix(in oklch,var(--rule) 50%,transparent);margin:6px 14px}.rail__group{margin-bottom:16px}.rail__group-label{padding:6px 14px;font-family:var(--mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-5);display:flex;align-items:center;gap:4px;background:transparent;border:0;width:100%;text-align:left}.rail__group-label__name{flex:0 0 auto}.rail__group-hint{font-family:var(--mono);font-size:9px;font-weight:400;color:var(--ink-5);margin-left:6px;text-transform:none;letter-spacing:.04em}.rail__group--unlabeled{margin-bottom:4px}.rail__group--unlabeled>.rail__group-label{display:none}.rail__group--collapsible>.rail__group-label{cursor:pointer}.rail__group--collapsible>.rail__group-label svg{margin-left:auto;opacity:.5;transition:transform .15s ease}.rail__group--collapsed>.rail__group-label svg{transform:rotate(-90deg)}.rail__item{width:100%;display:flex;align-items:center;gap:10px;padding:7px 14px;border-radius:8px;font-family:var(--mono);font-size:13px;letter-spacing:.02em;color:var(--ink-3);text-transform:lowercase;transition:all .12s ease;background:transparent;border:0;text-align:left;cursor:pointer}.rail__item:hover{background:var(--surface);color:var(--ink-2)}.rail__item[data-active=true]{background:var(--blue-wash);color:var(--blue);font-weight:500}.rail__item svg{width:14px;height:14px;flex-shrink:0;opacity:.85}.rail__item .lbl{flex:1;text-align:left}.rail__item .count{font-family:var(--mono);font-size:10px;padding:1px 7px;border-radius:9999px;background:var(--surface);color:var(--ink-4)}.rail__item[data-active=true] .count{background:rgb(0 0 255/.12);color:var(--blue)}.rail__item--pinned{font-weight:500}.rail__item--indent{padding-left:30px}.rail__item--indent svg{opacity:.5}.rail__item--ghost{color:var(--ink-4)}.rail__item--ghost:hover{background:var(--surface);color:var(--ink-2)}.count--soft{background:transparent!important;color:var(--ink-5)!important;border:1px solid var(--rule)}.rail__foot{border-top:1px solid var(--rule);padding:10px 12px;display:flex;flex-direction:column;gap:8px}.rail__ask{display:flex;align-items:center;gap:8px;padding:9px 14px;border-radius:9999px;background:var(--ink);color:var(--bg);font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-transform:lowercase;transition:all .12s ease;cursor:pointer;border:0;width:100%;text-align:left}.rail__ask:hover{background:var(--blue)}.rail__ask svg{flex-shrink:0}.rail__account{display:flex;align-items:stretch;align-self:stretch;width:100%;gap:10px;padding:0}.rail__account .av{width:28px;height:28px;border-radius:9999px;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-family:var(--mono);font-size:11px;font-weight:600}.rail__account .meta{flex:1;min-width:0}.rail__account .meta .name{font-size:13px;color:var(--ink-2);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rail__account .meta .role{font-family:var(--mono);font-size:10px;color:var(--ink-4);letter-spacing:.04em;text-transform:uppercase}.rail__model{border:1px solid var(--rule);border-radius:10px;background:var(--bg);padding:10px 12px;flex-direction:column;gap:4px;font-size:11px;margin-bottom:4px}.rail__model,.rail__model__head{display:flex;font-family:var(--mono)}.rail__model__head{width:100%;background:transparent;border:0;padding:0;align-items:center;gap:8px;cursor:pointer;color:var(--ink)}.rail__model__dot{width:8px;height:8px;border-radius:9999px;background:var(--ink-4);flex-shrink:0}.rail__model[data-mode=api] .rail__model__dot{background:var(--blue);animation:railModelPulse 1.6s ease-in-out infinite}.rail__model[data-mode=cowork] .rail__model__dot{background:var(--success,#10B981);animation:railModelPulse 1.6s ease-in-out infinite}.rail__model[data-mode=code] .rail__model__dot{background:oklch(.62 .18 295);animation:railModelPulse 1.6s ease-in-out infinite}.rail__model[data-mode=codex] .rail__model__dot{background:var(--warning,#F59E0B);animation:railModelPulse 1.6s ease-in-out infinite}@keyframes railModelPulse{0%,to{opacity:1}50%{opacity:.35}}.rail__model__mode{font-weight:600;font-size:11px;letter-spacing:.04em;color:var(--ink);text-transform:lowercase}.rail__model__calls{color:var(--ink-4);font-size:10px}.rail__model__head svg{margin-left:auto;opacity:.5;transition:transform .15s}.rail__model[data-tray=open] .rail__model__head svg{transform:rotate(180deg)}.rail__model__detail{color:var(--ink-4);font-size:10px;line-height:1.4}.rail__model__spend{color:var(--ink-3);font-size:10px;display:flex;align-items:center;gap:6px}.rail__model__spend .sep{opacity:.4}.rail__model__tray{margin-top:8px;padding-top:8px;border-top:1px dashed var(--rule);display:flex;flex-direction:column;gap:6px}.rail__model__tray-head{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-4)}.rail__model__tray-stop{background:transparent;border:0;font:9px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--danger,#DC2626);cursor:pointer}.rail__model__call{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;background:var(--surface)}.rail__model__call-main{flex:1;min-width:0}.rail__model__call-agent{font-size:10px;color:var(--ink-2);font-weight:600}.rail__model__call-job{font-size:9px;color:var(--ink-4);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail__model__call-right{display:flex;align-items:center;gap:4px}.rail__model__call-runtime{font-size:9px;color:var(--ink-4)}.rail__model__call-stop{width:18px;height:18px;border:1px solid var(--rule);border-radius:4px;background:var(--bg);color:var(--ink-4);font-size:11px;line-height:1;cursor:pointer}.rail__model__call-stop:hover{color:var(--danger,#DC2626);border-color:var(--danger,#DC2626)}.rail__model__empty{color:var(--ink-4);font-size:10px;text-align:center;padding:4px 0}.rail__model__tray-foot{color:var(--ink-5);font-size:9px;text-align:center;padding-top:4px;display:block;text-decoration:none}.rail__model__tray-foot:hover{color:var(--ink-3)}.rail__model__cost{margin-left:auto;font-size:10px;color:var(--ink-4);letter-spacing:.02em}.rail__model__head .rail__model__cost+svg{margin-left:6px}.rail__model__runtime-option{width:100%;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;background:transparent;border:0;font-family:var(--mono);font-size:11px;color:var(--ink-3);text-align:left;cursor:pointer;text-decoration:none;transition:background .1s ease,color .1s ease}.rail__model__runtime-option:hover{background:var(--surface);color:var(--ink-2)}.rail__model__runtime-option[data-active=true]{background:var(--blue-wash,rgba(0,0,255,.08));color:var(--ink)}.rail__model__runtime-option:disabled{opacity:.5;cursor:not-allowed}.rail__model__runtime-option--ghost{color:var(--ink-4)}.rail__model__runtime-option--ghost:hover{color:var(--ink-2)}.rail__model__runtime-dot{width:8px;height:8px;border-radius:9999px;border:1px solid var(--rule);background:transparent;flex-shrink:0}.rail__model__runtime-dot[data-active=true]{background:var(--blue);border-color:var(--blue)}.rail__model__runtime-label{flex:1;text-transform:lowercase;letter-spacing:.02em}.rail__model__runtime-meta{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-5)}.rail__model__session{font-size:10px;color:var(--ink-3);padding:2px 8px 4px}.rail__model__session-money{letter-spacing:.02em}.rail__model__error{font-size:10px;color:var(--danger,#DC2626);padding:4px 8px 0}.topbar{height:48px;padding:0 24px;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--rule);background:rgba(244,242,236,.93);backdrop-filter:blur(12px);position:sticky;top:0;z-index:5}.topbar__ask{width:28px;height:28px;border-radius:9999px;background:var(--ink);color:var(--bg);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .12s ease;border:0;cursor:pointer}.topbar__ask:hover{background:var(--blue)}.topbar__crumbs{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-4);display:flex;align-items:center;gap:6px;flex:1;min-width:0}.topbar__crumbs strong{color:var(--ink);font-weight:500}.topbar__crumbs .sep{color:var(--ink-5)}.topbar__crumbs a{color:inherit;text-decoration:none;transition:color .1s ease}.topbar__crumbs a:hover{color:var(--ink-2)}.topbar__cmdk{display:flex;align-items:center;gap:8px;padding:4px 12px;border:1px solid var(--rule);border-radius:9999px;font-family:var(--mono);font-size:11px;color:var(--ink-4);transition:all .12s ease;background:var(--bg);cursor:pointer;text-decoration:none}.topbar__cmdk:hover{border-color:var(--ink-4);color:var(--ink-3)}.topbar__cmdk kbd{font-family:var(--mono);font-size:10px;padding:1px 5px;border:1px solid var(--rule);border-radius:4px;background:var(--surface)}.section__head{display:flex;align-items:baseline;gap:12px;padding-bottom:12px;margin-bottom:16px;border-bottom:1px dashed var(--rule)}.section__head h2{font:600 13px var(--mono);color:var(--ink);letter-spacing:.02em;text-transform:lowercase;margin:0}.section__head .sub{font:11px var(--mono);color:var(--ink-4);letter-spacing:.02em}.section__head .spacer{margin-left:auto}.pkg-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:9999px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--rule);color:var(--ink-3);background:var(--bg)}.pkg-pill__dot{width:6px;height:6px;border-radius:9999px;background:var(--ink-4);flex-shrink:0}.pkg-pill--success{color:var(--success);border-color:color-mix(in oklch,var(--success) 50%,var(--rule))}.pkg-pill--success .pkg-pill__dot{background:var(--success)}.pkg-pill--danger{color:var(--danger);border-color:color-mix(in oklch,var(--danger) 50%,var(--rule))}.pkg-pill--danger .pkg-pill__dot{background:var(--danger)}.pkg-pill--warning{color:var(--warning);border-color:color-mix(in oklch,var(--warning) 50%,var(--rule))}.pkg-pill--warning .pkg-pill__dot{background:var(--warning)}.pkg-pill--ghost{color:var(--ink-5)}.composition-band{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:28px;align-items:stretch;padding:20px 0 28px;border-bottom:1px solid var(--rule);margin-bottom:28px}@media (max-width:1080px){.composition-band{grid-template-columns:1fr}}.composition-band__lead{display:flex;flex-direction:column;gap:14px;min-width:0}.composition-band__tags{display:flex;flex-wrap:wrap;gap:6px}.composition-band__tag{font-family:var(--mono);font-size:10px;padding:3px 8px;border-radius:4px;background:var(--surface);color:var(--ink-3)}.composition-band__brief{font-size:14px;color:var(--ink-2);line-height:1.55;text-wrap:pretty;max-width:64ch}.composition-band__brief strong{color:var(--ink);font-family:var(--mono);font-size:13px}.composition-band__meta{display:flex;flex-wrap:wrap;gap:14px;font-family:var(--mono);font-size:11px;color:var(--ink-3);margin-top:auto}.composition-band__meta strong{color:var(--ink);font-weight:600}.composition-band__meta .sep{color:var(--ink-5)}.composition-band__kpis{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--rule);border-radius:16px;overflow:hidden;background:var(--bg)}.composition-kpi{padding:16px 18px;display:flex;flex-direction:column;gap:4px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}.composition-kpi:nth-child(2n){border-right:0}.composition-kpi:nth-last-child(-n+2){border-bottom:0}.composition-kpi__lbl{font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-4)}.composition-kpi__v{font:600 22px var(--mono);color:var(--ink);letter-spacing:-.01em;line-height:1.1}.composition-kpi__trend{font:400 11px var(--mono);color:var(--ink-3);letter-spacing:.02em}.composition-kpi__trend--up{color:var(--success)}.composition-kpi__trend--down{color:var(--danger)}.composition-pipe{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:12px;position:relative}@media (max-width:1080px){.composition-pipe{grid-template-columns:1fr}}.composition-phase{display:flex;flex-direction:column;gap:10px;padding:14px 12px 16px;border:1px solid var(--rule);border-radius:14px;background:var(--surface);position:relative;min-width:0}.composition-phase__head{display:flex;align-items:baseline;gap:8px;padding:0 2px 8px;border-bottom:1px dashed var(--rule)}.composition-phase__name{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}.composition-phase__n{font-family:var(--mono);font-size:10px;color:var(--ink-4);margin-left:auto}.composition-phase__hint{font-size:11px;color:var(--ink-4);line-height:1.4;padding:0 2px}.composition-phase__add{display:inline-flex;justify-content:center;align-items:center;gap:4px;padding:8px;border:1px dashed var(--rule);border-radius:9px;background:transparent;font-family:var(--mono);font-size:11px;color:var(--ink-4);cursor:pointer}.composition-phase__add:hover{border-color:var(--blue);color:var(--blue);border-style:solid}.composition-card{display:flex;flex-direction:column;gap:6px;padding:12px 12px 14px;border:1px solid var(--rule);border-radius:10px;background:var(--bg);cursor:pointer;transition:all .12s ease;min-width:0;text-decoration:none}.composition-card:hover{border-color:var(--blue);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.composition-card__head{display:flex;align-items:center;gap:6px;min-width:0}.composition-card__role,.composition-card__step{font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:.08em;color:var(--ink-4);padding:1px 6px;border-radius:3px;background:var(--surface-hi,var(--surface));flex-shrink:0}.composition-card__role{text-transform:uppercase}.composition-card__role--primary{color:var(--blue);background:var(--blue-wash)}.composition-card__name{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--ink);letter-spacing:-.005em;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composition-card__desc{font-size:11px;color:var(--ink-3);line-height:1.45;text-wrap:pretty}.composition-card__foot{display:flex;align-items:center;gap:10px;margin-top:4px;padding-top:8px;border-top:1px dashed var(--rule);font-family:var(--mono);font-size:10px;color:var(--ink-4)}.composition-card__foot strong{color:var(--ink-2);font-weight:600}.composition-card__foot .sep{color:var(--ink-5)}.composition-card--reference .composition-card__name{white-space:normal}.composition-ingredients{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:start;padding:14px 0;border-top:1px solid var(--rule)}.composition-ingredients:first-of-type{border-top:0}.composition-ingredients__lbl{font-family:var(--mono);font-size:11px;font-weight:500;color:var(--ink-3);padding-top:4px;letter-spacing:.02em}.composition-ingredients__items{display:flex;flex-wrap:wrap;gap:6px}.composition-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:9999px;background:var(--bg);border:1px solid var(--rule);font-family:var(--mono);font-size:11px;color:var(--ink-2);text-decoration:none}.composition-chip i{width:8px;height:8px;border-radius:2px;flex-shrink:0}.composition-chip__n{font-size:9px;color:var(--ink-4);margin-left:2px;padding-left:6px;border-left:1px solid var(--rule)}.composition-chip:hover{border-color:var(--blue);color:var(--ink)}.composition-chip--missing{color:var(--ink-4);border-style:dashed;background:transparent}.composition-usage{border:1px solid var(--rule);border-radius:14px;background:var(--bg);overflow:hidden}.composition-usage__row{display:grid;grid-template-columns:16px minmax(0,1.4fr) minmax(0,1.2fr) 120px 120px 80px;gap:14px;align-items:center;padding:12px 16px;border-top:1px solid var(--rule);transition:background .1s ease;text-decoration:none;color:inherit}.composition-usage__row:first-child{border-top:0;background:var(--surface)}.composition-usage__row:not(.composition-usage__row--head):hover{background:var(--surface);cursor:pointer}.composition-usage__row--head{font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-4)}.composition-usage__sw{width:12px;height:12px;border-radius:3px}.composition-usage__name{font-size:13px;color:var(--ink);font-weight:500}.composition-usage__sub{font:11px var(--mono);color:var(--ink-4);margin-top:2px}.composition-usage__progress{display:flex;flex-direction:column;gap:4px}.composition-usage__bar{height:4px;background:var(--surface-hi,var(--surface));border-radius:9999px;overflow:hidden;position:relative}.composition-usage__bar>i{display:block;height:100%;background:var(--blue);border-radius:inherit}.composition-usage__count{font:10px var(--mono);color:var(--ink-4)}@media (max-width:1080px){.composition-usage__row{grid-template-columns:16px minmax(0,1.4fr) 1fr 100px}.composition-usage__row>:nth-child(4),.composition-usage__row>:nth-child(5){display:none}}.composition-usage--referenced-by .composition-usage__row{grid-template-columns:16px minmax(0,1.4fr) minmax(0,1fr) 100px 80px}@media (max-width:1080px){.composition-usage--referenced-by .composition-usage__row{grid-template-columns:16px minmax(0,1.4fr) 1fr}.composition-usage--referenced-by .composition-usage__row>:nth-child(4),.composition-usage--referenced-by .composition-usage__row>:nth-child(5){display:none}}.composition-foot{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}@media (max-width:1080px){.composition-foot{grid-template-columns:1fr}}.composition-foot__card{padding:18px;border:1px solid var(--rule);border-radius:14px;background:var(--bg);display:flex;flex-direction:column;gap:10px}.composition-foot__head{display:flex;align-items:baseline;gap:10px;padding-bottom:8px;border-bottom:1px dashed var(--rule)}.composition-foot__head h3{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--ink);text-transform:lowercase;margin:0}.composition-foot__head .sub{font-family:var(--mono);font-size:10px;color:var(--ink-4);margin-left:auto}.composition-version{display:grid;grid-template-columns:60px 1fr auto;gap:10px;align-items:center;padding:8px 0;border-top:1px dashed var(--rule);font-size:12px}.composition-version:first-of-type{border-top:0}.composition-version__v{font:600 12px var(--mono);color:var(--ink)}.composition-version__msg{color:var(--ink-2)}.composition-version__msg .meta{font:10px var(--mono);color:var(--ink-4);margin-top:2px}.composition-io-row{display:grid;grid-template-columns:90px 1fr;gap:12px;padding:10px 0;border-top:1px dashed var(--rule);align-items:baseline}.composition-io-row:first-of-type{border-top:0}.composition-io-row__k{font-family:var(--mono);font-size:11px;color:var(--ink-3);letter-spacing:.02em}.composition-io-row__v{font-size:13px;color:var(--ink);line-height:1.5}.composition-io-row__v code{font:11px var(--mono);padding:1px 5px;border-radius:3px;background:var(--surface);color:var(--ink-2)}.phase-timeline{position:relative}.phase-timeline--empty{padding:24px;border:1px dashed var(--rule);border-radius:14px;background:var(--bg);color:var(--ink-4);font-size:13px}.phase-timeline__scroll{overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}.phase-timeline__row{display:flex;gap:10px;min-width:-moz-max-content;min-width:max-content;align-items:flex-start}.phase-timeline__col{flex:1 1 0;min-width:160px;display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--rule);border-radius:14px;background:var(--surface)}.phase-timeline__col--unphased{background:var(--bg);border-style:dashed}.phase-timeline__col-head{display:flex;align-items:baseline;gap:8px;padding:0 2px 6px;border-bottom:1px dashed var(--rule)}.phase-timeline__step{font:500 10px var(--mono);letter-spacing:.08em;color:var(--ink-4);text-transform:uppercase}.phase-timeline__phase-name{font:500 12px var(--sans);color:var(--ink);flex:1;text-transform:lowercase;letter-spacing:.01em}.phase-timeline__count{font:500 11px var(--mono);color:var(--ink-3);padding:1px 6px;border-radius:9999px;background:var(--bg)}.phase-timeline__pills{display:flex;flex-direction:column;gap:6px}.phase-timeline__pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:9999px;border:1px solid var(--rule);background:var(--bg);color:var(--ink);font:500 12px var(--sans);text-decoration:none;transition:border-color .12s ease,color .12s ease,background .12s ease}.phase-timeline__pill:hover{border-color:var(--blue);color:var(--blue)}.phase-timeline__pill--secondary{opacity:.55;border-style:dashed}.phase-timeline__pill--unphased{border-style:dashed;color:var(--ink-3)}.phase-timeline__pill-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.phase-timeline__pill-mark{font:400 10px var(--mono);color:var(--ink-4)}.article{font-size:15px;line-height:1.6}.article,.article h1{font-family:var(--sans);color:var(--ink)}.article h1{font-size:28px;font-weight:600;line-height:1.25;margin:32px 0 12px}.article>h1:first-child{margin-top:0}.article h2{font-family:var(--sans);font-size:22px;font-weight:600;line-height:1.3;color:var(--ink);margin:28px 0 10px}.article>h2:first-child{margin-top:0}.article h3{font-family:var(--sans);font-size:18px;font-weight:600;line-height:1.35;color:var(--ink);margin:24px 0 8px}.article h4{font-family:var(--mono);font-size:15px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin:20px 0 6px}.article p{font-family:var(--sans);font-size:15px;line-height:1.6;color:var(--ink);margin:0 0 12px}.article strong{font-weight:600;color:var(--ink)}.article em{font-style:italic;color:inherit}.article a{color:var(--blue);text-decoration:underline}.article a:hover{text-decoration:none}.article ol,.article ul{font-family:var(--sans);font-size:15px;line-height:1.6;color:var(--ink);padding-left:24px;margin:0 0 12px}.article ul{list-style:disc}.article ol{list-style:decimal}.article li{margin-bottom:4px}.article li>p{margin-bottom:0}.article li>ol,.article li>ul{margin-top:4px;margin-bottom:0}.article code{background:var(--surface);padding:1px 5px;border-radius:3px}.article code,.article pre{font-family:var(--mono);font-size:13px;color:var(--ink)}.article pre{line-height:1.5;background:var(--surface-hi);padding:14px 16px;border-radius:8px;overflow-x:auto;margin:0 0 16px}.article pre code{background:transparent;padding:0;border-radius:0;font-size:inherit}.article blockquote{border-left:3px solid var(--rule-hi);padding:4px 0 4px 16px;color:var(--ink-2);margin:0 0 16px}.article blockquote p{color:var(--ink-2)}.article blockquote p:last-child{margin-bottom:0}.article table{width:100%;border-collapse:collapse;font-size:14px;margin:0 0 16px;border:1px solid var(--rule)}.article thead{background:var(--surface);border-bottom:1px solid var(--rule-hi)}.article th{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}.article td,.article th{text-align:left;padding:10px 12px;border-right:1px solid var(--rule);vertical-align:top}.article td{border-bottom:1px solid var(--rule);color:var(--ink)}.article td:last-child,.article th:last-child{border-right:0}.article tr:last-child td{border-bottom:0}.article hr{border:0;border-top:1px solid var(--rule);margin:32px 0}.article img{max-width:100%;height:auto;border:1px solid var(--rule);border-radius:4px;margin:0 0 12px}