.sp-landing a.stub,.stub,a.stub{display:block;text-decoration:none}.stub{--line:var(--border);position:relative;background:var(--surface);border:1px solid var(--line);border-top:0;border-radius:0 0 var(--r-md) var(--r-md);box-shadow:var(--shadow-sheet);padding:var(--s-5) var(--s-5) var(--s-4);font-family:var(--font-mono);width:100%;max-width:420px;margin-top:8px}.sp-landing a.stub,.sp-page a.stub,.stub,a.stub{color:var(--ink)}.sp-page a.stub:hover,a.stub:hover{color:var(--ink);text-decoration:none}.stub:before{top:-7px;height:14px;background:radial-gradient(circle at 7px 7px,var(--bg) 4.5px,transparent 5.2px) repeat-x;background-size:14px 14px;border-top:1px solid var(--line);border-bottom:0;pointer-events:none}.stub:after,.stub:before{content:"";position:absolute;left:0;right:0}.stub:after{top:0;height:7px;background:var(--surface);z-index:-1}.stub.is-printing{animation:stub-print var(--dur-2) var(--ease-spring) both}@keyframes stub-print{0%{transform:translateY(14px);opacity:0}to{transform:translateY(0);opacity:1}}.stub-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);font-size:.75rem;color:var(--ink-faint);margin-bottom:var(--s-4)}.stub-head .settled{display:inline-flex;align-items:center;gap:6px;color:var(--ok);font-weight:600}.stub-head .settled .dot{width:6px;height:6px;border-radius:var(--r-pill);background:var(--ok)}.stub-landed{font-size:1.05rem;color:var(--ink-muted);margin:0}.stub-landed strong{color:var(--ink);font-weight:600}.stub-became{font-size:var(--fs-caption);color:var(--ink-faint);margin:var(--s-3) 0 2px}.stub-units{color:var(--ink);font-size:var(--fs-units);font-weight:600;letter-spacing:-.03em;line-height:1;margin:0;overflow-wrap:anywhere}.stub-units .sym{font-size:.4em;letter-spacing:0;color:var(--ink-muted);margin-left:.3em;font-weight:500}.stub.is-compact .stub-units{font-size:var(--fs-units-sm)}.stub-when{font-size:.75rem;color:var(--ink-faint);margin:var(--s-3) 0 0}.stub-where{font-size:.8125rem;color:var(--ink-muted);margin:2px 0 0}.stub-where .name{color:var(--ink)}.stub-rule{border:0;border-top:1px solid var(--line);margin:var(--s-4) 0}.stub-section{font-size:.75rem;color:var(--ink-faint);margin:0 0 var(--s-2)}.stub-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-4);font-size:.8125rem;margin:0;padding:3px 0}.stub-row .k{color:var(--ink-muted);white-space:nowrap}.stub-row .v{color:var(--ink);text-align:right;overflow-wrap:anywhere}.stub-row .v a{color:var(--accent);text-decoration:none}.stub-row .v a:hover{text-decoration:underline}.stub-row .v.is-ok{color:var(--ok)}.stub-foot,.stub-row .v.is-muted{color:var(--ink-faint)}.stub-foot{margin:var(--s-4) 0 0;font-size:.6875rem;line-height:1.5}.stub-foot a{color:var(--accent);text-decoration:none}.stub.is-empty .stub-units{color:var(--ink-faint);font-size:var(--fs-units-sm)}@media print{.stub{box-shadow:none;max-width:none}}.stub.is-ghost{border-style:dashed;border-color:var(--border-strong);box-shadow:none}.stub.is-ghost,.stub.is-ghost:after{background:var(--bg)}.stub.is-ghost .stub-head .pending{display:inline-flex;align-items:center;gap:6px;color:var(--warn);font-weight:600}.stub.is-ghost .stub-head .pending .dot{width:6px;height:6px;border-radius:var(--r-pill);background:var(--warn)}.stub.is-ghost .stub-units{color:var(--ink-faint)}.stub.is-example{box-shadow:var(--shadow-sheet)}.stub.is-example .stub-head span:first-child{color:var(--ink-muted);font-weight:600}.stub-stack{display:grid;gap:var(--s-4);max-width:480px}.stub-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--s-5) var(--s-4);align-items:start}.stub-wall .stub{max-width:none}.stub-printer{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);background:var(--surface-inverse);color:var(--ink-inverse-muted);border-radius:var(--r-md) var(--r-md) 0 0;padding:var(--s-3) var(--s-4);font-family:var(--font-mono);font-size:.75rem;letter-spacing:var(--tracking-mono);position:relative;z-index:1}.stub-printer .live{display:inline-flex;align-items:center;gap:6px;color:var(--ink-inverse)}.stub-printer .live .dot{width:6px;height:6px;border-radius:var(--r-pill);background:var(--ok)}.stub-printer:after{content:"";position:absolute;left:var(--s-4);right:var(--s-4);bottom:-2px;height:3px;background:var(--surface-inverse-raised);border-radius:2px}.stub-stack.is-printed{padding:0 var(--s-2);max-width:none}.stub-stack.is-printed .stub{max-width:none}