.rx{--rx-accent:var(--rx-theme-accent, #1f5ea8);--rx-on-accent:var(--rx-theme-on-accent, #fff);--rx-have:var(--rx-theme-have, #2b8a57);--rx-bg:var(--rx-theme-bg, Canvas);--rx-raised:var(--rx-theme-raised, color-mix(in srgb, currentColor 4%, transparent));--rx-line:color-mix(in srgb, currentColor 14%, transparent);--rx-line-strong:color-mix(in srgb, currentColor 28%, transparent);--rx-muted:color-mix(in srgb, currentColor 66%, transparent);--rx-accent-soft:color-mix(in srgb, var(--rx-accent) 12%, transparent);--rx-have-soft:color-mix(in srgb, var(--rx-have) 12%, transparent);--rx-radius:var(--rx-theme-radius, 8px);--rx-mono:var(--rx-theme-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);--rx-top:var(--rx-theme-sticky-top, 0px);container-type:inline-size;display:block;font:inherit;color:inherit;line-height:1.45;text-align:left}.rx *,.rx *::before,.rx *::after{box-sizing:border-box}.rx .rx-view{display:flex;flex-direction:column;gap:1.25rem}.rx h2,.rx h3,.rx h4,.rx p,.rx ol,.rx ul,.rx dl,.rx dd,.rx dt,.rx li{margin:0;padding:0}.rx ol,.rx ul{list-style:none}.rx li::before,.rx li::marker{content:none}.rx h2,.rx h3,.rx h4{line-height:1.2;text-wrap:balance;border:0}.rx button{font:inherit;color:inherit;background:0 0;border:0;margin:0;padding:0;cursor:pointer;text-align:inherit;line-height:inherit;letter-spacing:inherit;text-transform:none;box-shadow:none;border-radius:0;width:auto;min-height:0}.rx button:disabled{cursor:not-allowed;opacity:.4}.rx :focus-visible{outline:2px solid var(--rx-accent);outline-offset:2px}.rx input,.rx textarea{font:inherit;color:inherit}.rx .rx-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.rx .rx-num{font-variant-numeric:tabular-nums}.rx .rx-hint{color:var(--rx-muted);font-size:.875em}.rx .rx-error{color:#c0392b}.rx .rx-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.rx .rx-btn{display:inline-flex;align-items:center;gap:.4em;padding:.55em 1em;border:1px solid var(--rx-line-strong);border-radius:var(--rx-radius);font-weight:600;font-size:.95em;white-space:nowrap;background:var(--rx-bg)}.rx .rx-btn:hover:not(:disabled){border-color:initial}.rx .rx-btn.rx-primary{background:var(--rx-accent);border-color:var(--rx-accent);color:var(--rx-on-accent)}.rx .rx-btn.rx-primary:hover:not(:disabled){filter:brightness(1.08)}.rx .rx-btn.rx-small{padding:.35em .75em;font-size:.85em}.rx .rx-link{color:var(--rx-accent);font-weight:600;font-size:.875em;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}.rx .rx-link.rx-danger{color:#c0392b}.rx .rx-steps{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.5rem;border-bottom:1px solid var(--rx-line);padding-bottom:.75rem}.rx .rx-steps ol{display:flex;flex-wrap:wrap;gap:.25rem}.rx .rx-stepbtn{display:flex;align-items:center;gap:.6rem;padding:.45rem .85rem .45rem .5rem;border-radius:var(--rx-radius)}.rx .rx-stepbtn:hover{background:var(--rx-raised)}.rx .rx-stepnum{display:inline-grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;border:1.5px solid var(--rx-line-strong);font-weight:700;font-size:.85em;font-variant-numeric:tabular-nums}.rx .rx-stepbtn[aria-current=step] .rx-stepnum{background:var(--rx-accent);border-color:var(--rx-accent);color:var(--rx-on-accent)}.rx .rx-steptext{display:flex;flex-direction:column;line-height:1.2}.rx .rx-steplabel{font-weight:700}.rx .rx-stepmeta{font-size:.8em;color:var(--rx-muted);font-variant-numeric:tabular-nums}.rx .rx-navtools{display:flex;gap:1rem}.rx .rx-intro{display:flex;flex-direction:column;gap:.35rem;max-width:65ch}.rx .rx-h{font-size:1.5em;font-weight:700}.rx .rx-panel{display:flex;flex-direction:column;gap:.85rem}.rx .rx-panel-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem 1rem}.rx .rx-panel-head h3{font-size:1.05em;font-weight:700}.rx .rx-sheet{border:1px solid var(--rx-line-strong);border-radius:var(--rx-radius);padding:1rem;background:var(--rx-raised)}.rx .rx-textarea{width:100%;padding:.6rem;border:1px solid var(--rx-line-strong);border-radius:6px;background:var(--rx-bg);font-family:var(--rx-mono);font-size:.8em;word-break:break-all}.rx .rx-objgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr));gap:.5rem}.rx .rx-obj{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.65rem;padding:.75rem .85rem;border:1px solid var(--rx-line);border-radius:var(--rx-radius);background:var(--rx-raised)}.rx .rx-obj:hover:not(:disabled){border-color:var(--rx-line-strong)}.rx .rx-obj[aria-pressed=true]{border-color:var(--rx-accent);background:var(--rx-accent-soft)}.rx .rx-obj-name{font-weight:600}.rx .rx-obj-count{color:var(--rx-muted);font-size:.85em;font-variant-numeric:tabular-nums}.rx .rx-check{width:1.1rem;height:1.1rem;border:1.5px solid var(--rx-line-strong);border-radius:4px;position:relative}.rx [aria-pressed=true]>.rx-check{background:var(--rx-accent);border-color:var(--rx-accent)}.rx [aria-pressed=true]>.rx-check::after{content:"";position:absolute;left:.32rem;top:.1rem;width:.3rem;height:.58rem;border:solid var(--rx-on-accent);border-width:0 2px 2px 0;transform:rotate(45deg)}.rx .rx-chips{display:flex;flex-wrap:wrap;gap:.4rem}.rx .rx-chip{padding:.35rem .75rem;border:1px solid var(--rx-line-strong);border-radius:999px;font-size:.9em}.rx .rx-chip:hover:not(:disabled){border-color:initial}.rx .rx-chip[aria-pressed=true]{background:var(--rx-accent);border-color:var(--rx-accent);color:var(--rx-on-accent)}.rx .rx-chip-count{opacity:.7;font-variant-numeric:tabular-nums;margin-left:.2em}.rx .rx-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:.85rem 0;border-top:1px solid var(--rx-line)}.rx .rx-sticky-bottom{position:sticky;bottom:0;background:var(--rx-bg);z-index:3;padding-inline:0}.rx .rx-bar-summary{display:flex;flex-direction:column;gap:.5rem;min-width:0}.rx .rx-levelmix{display:flex;flex-wrap:wrap;gap:.25rem 1rem;font-size:.8em}.rx .rx-levelmix li{display:flex;align-items:center;gap:.35rem}.rx .rx-levelbar{width:2.5rem;height:.35rem;background:var(--rx-line);border-radius:2px;overflow:hidden}.rx .rx-levelbar i{display:block;height:100%;background:var(--rx-accent)}.rx .rx-levelname{color:var(--rx-muted)}.rx .rx-stair{display:inline-flex;align-items:flex-end;gap:2px;height:.85em;flex:none}.rx .rx-stair i{width:3px;background:var(--rx-line-strong);border-radius:1px}.rx .rx-stair i.on{background:var(--rx-accent)}.rx .rx-toolbar{display:flex;flex-direction:column;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--rx-line)}.rx .rx-sticky-top{position:sticky;top:var(--rx-top);background:var(--rx-bg);z-index:3}.rx .rx-toolrow{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem}.rx .rx-progress{display:flex;align-items:center;gap:.75rem}.rx .rx-progress-bar{flex:1;display:flex;height:.45rem;background:var(--rx-line);border-radius:999px;overflow:hidden;max-width:28rem}.rx .rx-progress-bar i{display:block;height:100%}.rx .rx-progress-bar .have{background:var(--rx-have)}.rx .rx-progress-bar .need{background:var(--rx-accent)}.rx .rx-progress-bar .na{background:var(--rx-line-strong)}.rx .rx-progress-text{font-size:.875em;font-variant-numeric:tabular-nums;white-space:nowrap}.rx .rx-seg{display:inline-flex;flex-wrap:wrap;align-items:center;border:1px solid var(--rx-line-strong);border-radius:var(--rx-radius);overflow:hidden}.rx .rx-seg>button{padding:.4rem .7rem;font-size:.85em;font-weight:600;border-left:1px solid var(--rx-line)}.rx .rx-seg>button:first-of-type{border-left:0}.rx .rx-seg>button:hover{background:var(--rx-raised)}.rx .rx-seg>button[aria-pressed=true]{background:var(--rx-accent);color:var(--rx-on-accent)}.rx .rx-seg-label{padding:.4rem .7rem;font-size:.8em;color:var(--rx-muted);border-right:1px solid var(--rx-line)}.rx .rx-seg .rx-num{opacity:.75;font-weight:500}.rx .rx-search{flex:1 1 14rem;min-width:0}.rx .rx-search input{width:100%;padding:.45rem .7rem;border:1px solid var(--rx-line-strong);border-radius:var(--rx-radius);background:var(--rx-bg)}.rx .rx-layer{display:flex;flex-direction:column;gap:.75rem}.rx .rx-layer-title{font-size:1.15em;font-weight:700;display:flex;align-items:baseline;gap:.6rem;padding-top:.5rem}.rx .rx-layer-title .rx-hint{font-weight:400;text-transform:uppercase;letter-spacing:.06em;font-size:.7em}.rx .rx-cap{border:1px solid var(--rx-line);border-radius:var(--rx-radius);overflow:hidden}.rx .rx-cap-head{display:grid;grid-template-columns:1fr auto;gap:.4rem 1rem;align-items:center;padding:.7rem .9rem;background:var(--rx-raised);border-bottom:1px solid var(--rx-line)}.rx .rx-cap-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .75rem;min-width:0}.rx .rx-cap-title h4{font-size:1em;font-weight:700}.rx .rx-cap-count{font-size:.85em;color:var(--rx-muted)}.rx .rx-bulk{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.25rem .85rem;align-items:baseline}.rx .rx-prompt{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;justify-content:space-between;padding:.65rem .9rem;background:var(--rx-have-soft);border-bottom:1px solid var(--rx-line);font-size:.9em}.rx .rx-ladder{display:flex;flex-direction:column}.rx .rx-item{display:grid;grid-template-columns:minmax(0,1fr)auto;align-items:center;gap:.4rem .75rem;padding:.5rem .9rem;border-top:1px solid var(--rx-line)}.rx .rx-item:first-child{border-top:0}.rx .rx-item[data-status=na] .rx-item-name{color:var(--rx-muted);text-decoration:line-through;text-decoration-color:var(--rx-line-strong)}.rx .rx-item-main{display:flex;align-items:center;gap:.75rem;min-width:0;padding:.2rem 0}.rx .rx-level{display:inline-flex;align-items:center;gap:.4rem;width:9rem;flex:none;font-size:.74em;color:var(--rx-muted);text-transform:uppercase;letter-spacing:.05em}.rx .rx-item-name{font-weight:600;min-width:0}.rx .rx-match{font-size:.75em;color:var(--rx-accent);font-weight:700;white-space:nowrap}.rx .rx-chev{width:.5rem;height:.5rem;border:solid var(--rx-muted);border-width:0 1.5px 1.5px 0;transform:rotate(45deg);margin-left:.2rem;flex:none;transition:transform .15s}.rx [aria-expanded=true]>.rx-chev{transform:rotate(-135deg)}.rx .rx-statusseg>button{padding:.35rem .65rem;font-size:.8em;white-space:nowrap}.rx .rx-statusseg>.rx-s-have[aria-pressed=true]{background:var(--rx-have);color:#fff}.rx .rx-statusseg>.rx-s-need[aria-pressed=true]{background:var(--rx-accent);color:var(--rx-on-accent)}.rx .rx-statusseg>.rx-s-na[aria-pressed=true]{background:var(--rx-line-strong);color:inherit}.rx .rx-detail{grid-column:1/-1;display:flex;flex-direction:column;gap:.6rem;padding:.25rem 0 .5rem 9.75rem;max-width:calc(65ch + 9.75rem);font-size:.925em}.rx .rx-facts{display:flex;flex-direction:column;gap:.35rem;font-size:.9em}.rx .rx-facts>div{display:flex;gap:.75rem}.rx .rx-facts dt{width:5.5rem;flex:none;color:var(--rx-muted)}.rx .rx-facts dd{display:flex;flex-wrap:wrap;gap:.3rem}.rx .rx-tag{padding:.05rem .5rem;border-radius:999px;background:var(--rx-raised);border:1px solid var(--rx-line);font-size:.9em}.rx .rx-tag.on{border-color:var(--rx-accent);color:var(--rx-accent)}.rx .rx-empty{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;padding:2rem 1rem;border:1px dashed var(--rx-line-strong);border-radius:var(--rx-radius)}.rx .rx-stats{display:flex;flex-wrap:wrap;gap:.5rem}.rx .rx-stat{display:flex;flex-direction:column;gap:.1rem;padding:.7rem 1rem;border:1px solid var(--rx-line);border-radius:var(--rx-radius);min-width:8rem}.rx .rx-stat-num{font-size:1.6em;font-weight:700;line-height:1.1}.rx .rx-stat-label{font-size:.8em;color:var(--rx-muted)}.rx .rx-stat-need .rx-stat-num{color:var(--rx-accent)}.rx .rx-stat-have .rx-stat-num{color:var(--rx-have)}.rx .rx-stat-wide{flex:1 1 14rem;justify-content:center}.rx .rx-stat-level{display:flex;align-items:center;gap:.55rem;font-size:1.25em}.rx .rx-stat-level .rx-stair{height:1.1em}.rx .rx-stat-level .rx-stair i{width:5px}.rx .rx-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-left:auto}.rx .rx-toggle{display:inline-flex;align-items:center;gap:.45rem;font-size:.9em;cursor:pointer}.rx .rx-toggle input{accent-color:var(--rx-accent);width:1rem;height:1rem;margin:0}.rx .rx-grid-wrap{overflow-x:auto}.rx .rx-grid{display:grid;grid-template-columns:minmax(9rem,11rem)repeat(var(--rx-cols,5),minmax(8rem,1fr));border:1px solid var(--rx-line);border-radius:var(--rx-radius);min-width:min-content}.rx .rx-gh{display:flex;align-items:center;gap:.45rem;padding:.6rem .7rem;font-size:.75em;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--rx-line-strong);border-left:1px solid var(--rx-line);background:var(--rx-raised)}.rx .rx-corner{border-left:0;color:var(--rx-muted)}.rx .rx-rowhead{display:flex;flex-direction:column;gap:.35rem;padding:.8rem .7rem;border-top:1px solid var(--rx-line)}.rx .rx-cur{align-self:flex-start;font-size:.75em;font-weight:700;padding:.1rem .5rem;border-radius:999px;background:var(--rx-have-soft);color:var(--rx-have)}.rx .rx-cur-none{background:var(--rx-raised);color:var(--rx-muted);border:1px solid var(--rx-line)}.rx .rx-minibars{display:flex;gap:3px;height:1.4rem;align-items:stretch}.rx .rx-minibars i{flex:1;max-width:1rem;background:var(--rx-line);border-radius:2px;display:flex;align-items:flex-end;overflow:hidden}.rx .rx-minibars b{display:block;width:100%;background:var(--rx-have)}.rx .rx-cell{display:flex;flex-direction:column;gap:.4rem;padding:.6rem;border-top:1px solid var(--rx-line);border-left:1px solid var(--rx-line);min-width:0}.rx .rx-cell[data-reached=true]{background:color-mix(in srgb,var(--rx-have) 5%,transparent)}.rx .rx-card{border:1px solid color-mix(in srgb,var(--rx-accent) 45%,transparent);background:var(--rx-accent-soft);border-radius:6px;font-size:.85em}.rx .rx-card[data-status=have]{border:1px dashed var(--rx-line-strong);background:0 0;color:var(--rx-muted)}.rx .rx-card summary{display:flex;flex-direction:column;gap:.1rem;padding:.45rem .55rem;cursor:pointer;list-style:none}.rx .rx-card summary::-webkit-details-marker{display:none}.rx .rx-card-name{font-weight:600;line-height:1.25}.rx .rx-card[data-status=have] .rx-card-name::before{content:"✓ ";color:var(--rx-have)}.rx .rx-card-meta{font-size:.85em;color:var(--rx-muted)}.rx .rx-card p{padding:0 .55rem .55rem;font-size:.95em}.rx .rx-legend{max-width:75ch}.rx .rx-key{display:inline-block;width:.8rem;height:.8rem;border-radius:3px;vertical-align:-1px;margin-left:.35rem}.rx .rx-key.need{background:var(--rx-accent-soft);border:1px solid var(--rx-accent)}.rx .rx-key.have{border:1px dashed var(--rx-line-strong)}.rx .rx-roadmap-head{max-width:none}.rx .rx-toast{position:fixed;left:50%;bottom:calc(1.25rem + env(safe-area-inset-bottom,0px));transform:translate(-50%,1rem);padding:.6rem 1rem;border-radius:var(--rx-radius);background:CanvasText;color:Canvas;font-size:.9em;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:50;max-width:calc(100vw - 2rem)}.rx .rx-toast.show{opacity:1;transform:translate(-50%,0)}@container(max-width:720px){.rx .rx-item { grid-template-columns: 1fr; }
  .rx .rx-level { width: auto; }
  .rx .rx-item-main { flex-wrap: wrap; gap: .3rem .6rem; }
  .rx .rx-item-name { flex-basis: 100%; order: 2; }
  .rx .rx-chev { display: none; }
  .rx .rx-detail { padding-left: 0; }
  .rx .rx-statusseg { width: 100%; }
  .rx .rx-statusseg > button { flex: 1; text-align: center; }
  .rx .rx-actions { margin-left: 0; }
  .rx .rx-grid-wrap { overflow: visible; }
  .rx .rx-grid { display: block; min-width: 0; border: 0; }
  .rx .rx-gh { display: none; }
  .rx .rx-rowhead { border: 1px solid var(--rx-line); border-radius: var(--rx-radius) var(--rx-radius) 0 0; margin-top: 1rem; background: var(--rx-raised); }
  .rx .rx-minibars { max-width: 8rem; }
  .rx .rx-cell { border: 1px solid var(--rx-line); border-top: 0; }
  .rx .rx-cell:empty { display: none; }
  .rx .rx-cell::before { content: attr(data-level); font-size: .72em; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--rx-muted); }
}@media(prefers-reduced-motion:reduce){.rx .rx-toast,.rx .rx-chev{transition:none}}@media print{.rx .rx-noprint,.rx .rx-toast{display:none!important}.rx .rx-grid-wrap{overflow:visible}.rx .rx-grid{min-width:0;grid-template-columns:7.5rem repeat(var(--rx-cols,5),1fr);font-size:8.5pt}.rx .rx-card{break-inside:avoid}.rx .rx-rowhead,.rx .rx-cell{break-inside:avoid}.rx .rx-sticky-top,.rx .rx-sticky-bottom{position:static}.rx{-webkit-print-color-adjust:exact;print-color-adjust:exact}}