@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap");@import url("https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600&family=Geist+Mono:wght@400;500&display=swap");body{margin:0;-webkit-font-smoothing:antialiased}.app,body{background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:14px;line-height:20px;letter-spacing:.01em}:where(body,.app) a{color:var(--highlight);text-decoration:none}:where(body,.app) a:hover{color:var(--highlight-hover)}:where(body,.app) :focus-visible{outline:2px solid var(--focus);outline-offset:2px}.mono{letter-spacing:0}.lbl,.mono{font-family:var(--font-mono)}.lbl{font-size:12px;line-height:16px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.h1{font-size:28px;line-height:32px;font-weight:500;letter-spacing:-.28px}.h1,.h2{margin:0;color:var(--text-strong)}.h2{font-size:16px;line-height:24px;font-weight:600}.subtle{margin:0}.meta,.subtle{font-size:13px;line-height:18px;color:var(--text-muted)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.shell{display:flex;flex-wrap:wrap;min-height:100vh}.side{flex:1 1 var(--size-sidebar);background:var(--surface-sunken);border-right:1px solid var(--border)}.main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column}.page{padding:var(--space-48) var(--space-80) var(--space-80);box-sizing:border-box}.wrap{max-width:var(--size-content);margin:0 auto;display:flex;flex-direction:column;gap:var(--space-24)}.page-head{align-items:flex-end;justify-content:space-between;gap:var(--space-16)}.cols,.page-head{display:flex;flex-wrap:wrap}.cols{gap:var(--space-24);align-items:flex-start}.col-main{flex:2 1 560px;flex-direction:column;gap:var(--space-32)}.col-main,.col-side{min-width:0;display:flex}.col-side{flex:1 1 300px;gap:var(--space-16)}.col-side,.section{flex-direction:column}.section{display:flex;gap:var(--space-12)}.section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--space-8) var(--space-12)}.topbar{display:flex;align-items:stretch;height:var(--size-topbar);border-bottom:1px solid var(--border);box-sizing:border-box;background:var(--surface)}.crumbs{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:var(--space-8);padding:0 var(--space-16);font-size:13px;line-height:18px}.crumbs,.crumbs a{color:var(--text-muted)}.crumbs .here,.crumbs a:hover{color:var(--text-strong)}.crumbs svg{width:16px;height:16px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.tb{display:flex;align-items:center;gap:var(--space-8);height:var(--size-topbar);padding:0 var(--space-16);border:0;border-left:1px solid var(--border);background:transparent;color:var(--text);font-family:var(--font-sans);font-size:13px;cursor:pointer;box-sizing:border-box}.tb:hover{background:var(--surface-hover);color:var(--text-strong)}.tb svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.kbd{font-family:var(--font-mono);font-size:12px;line-height:12px;color:var(--text-muted);background:var(--surface-hover);padding:3px 4px}.avatar{width:22px;height:22px;border-radius:var(--radius-full);background:var(--peach);color:var(--on-peach);font-size:11px;font-weight:500;display:flex;align-items:center;justify-content:center}.nav{width:100%;background:var(--surface-sunken);flex-direction:column}.nav,.nav-workspace{box-sizing:border-box;display:flex}.nav-workspace{height:var(--size-topbar);border-bottom:1px solid var(--border)}.nav-workspace,.nav-workspace a{align-items:center;padding:0 var(--space-8)}.nav-workspace a{display:flex;gap:var(--space-8);height:var(--size-control);color:var(--text-secondary);font-size:14px}.nav-workspace a:hover{background:var(--surface-hover);color:var(--text-strong)}.nav-mark{flex:0 0 auto;width:20px;height:20px;border-radius:var(--radius-full);background:var(--lime);color:var(--on-lime);font-size:11px;font-weight:500;display:flex;align-items:center;justify-content:center}.nav-groups{padding:var(--space-12) var(--space-8);gap:var(--space-24)}.nav-group,.nav-groups{display:flex;flex-direction:column}.nav-group{gap:var(--space-2)}.nav-group>.lbl{margin:0 0 var(--space-8);padding:0 var(--space-8)}.nav-item{display:flex;align-items:center;gap:10px;height:var(--size-nav-item);padding:0 var(--space-8);color:var(--text);font-size:14px}.nav-item svg{width:16px;height:16px;flex:0 0 auto;fill:none;stroke:var(--text-muted);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.nav-item span:first-of-type{flex:1 1 auto;min-width:0}.nav-item:hover{background:var(--surface-hover);color:var(--text-strong)}.nav-item.on,.nav-item.on:hover{background:var(--highlight-soft);color:var(--highlight)}.nav-item.on svg{stroke:currentColor}.nav-num{font-family:var(--font-mono);font-size:12px;color:var(--text-muted)}.nav-item.on .nav-num{color:currentColor}.nav-count{background:var(--warning-soft);color:var(--warning);padding:0 6px;font-size:12px;font-weight:500;line-height:18px}.nav-foot{margin-top:auto;padding:var(--space-8);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:var(--space-2);font-size:13px;color:var(--text-secondary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--size-control);padding:0 var(--space-12);border-radius:var(--radius-none);font-family:var(--font-sans);font-size:13px;font-weight:500;line-height:1;cursor:pointer;white-space:nowrap;box-sizing:border-box}.btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.btn-pri{background:var(--action);color:var(--on-action);border:1px solid var(--action)}.btn-pri:hover{background:var(--action-hover);color:var(--on-action)}.btn-sec{background:transparent;border:1px solid var(--border-control)}.btn-sec,.btn-sec:hover{color:var(--text-strong)}.btn-sec:hover{background:var(--surface-hover)}.btn-ghost{background:transparent;color:var(--highlight);border:1px solid transparent;padding:0 var(--space-4)}.btn-ghost:hover{color:var(--highlight-hover)}.btn:disabled{background:var(--surface-hover);border-color:var(--surface-hover);color:var(--text-faint);cursor:not-allowed}.badge{display:inline-flex;align-items:center;gap:6px;height:var(--size-badge);padding:0 var(--space-8);border-radius:var(--radius-none);font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1;letter-spacing:.02em;white-space:nowrap;box-sizing:border-box;background:var(--neutral-soft);color:var(--text)}.badge svg{width:12px;height:12px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.b-draft{background:var(--highlight-soft);color:var(--highlight)}.b-ready{background:var(--success-soft);color:var(--success)}.b-signed{background:var(--success);color:var(--success-soft)}.b-na{background:transparent;color:var(--text);box-shadow:inset 0 0 0 1px var(--border-strong)}.b-check{background:var(--warning-soft);color:var(--warning)}.b-error{background:var(--critical-soft);color:var(--critical)}.b-id{background:transparent;color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border-strong);font-family:var(--font-mono);letter-spacing:0}.tag-fact,.tag-plan{display:inline-block;padding:0 6px;font-size:12px;line-height:18px;color:var(--text-muted)}.tag-plan{border:1px dashed var(--border-strong)}.tag-fact{border:1px solid var(--border-strong)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-none);box-sizing:border-box}.ch{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-8) var(--space-12);padding:var(--space-12) var(--space-16);border-bottom:1px solid var(--border)}.ch h2,.ch h3{margin:0;font-weight:600;color:var(--text-strong)}.ch h2,.ch h3,.li{font-size:14px;line-height:20px}.li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8) var(--space-16);padding:var(--space-12) var(--space-16);border-top:1px solid var(--border)}.ch+.kv,.ch+.li,.li:first-child{border-top:0}.li-warn{background:var(--warning-soft);color:var(--warning)}.kv{display:flex;justify-content:space-between;align-items:center;gap:var(--space-12);padding:var(--space-8) var(--space-16);border-top:1px solid var(--border);font-size:14px}.kv>:first-child{color:var(--text-muted)}.card-link{display:flex;flex-direction:column;gap:var(--space-8);padding:var(--space-16);background:var(--surface);border:1px solid var(--border-strong);color:var(--text);box-sizing:border-box}.card-link:hover{border-color:var(--highlight);color:var(--text)}.stat-n{font-size:24px;line-height:28px;font-weight:500;letter-spacing:.16px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-strong)}.stat-n small{font-size:14px;font-weight:400;color:var(--text-muted)}.dashed{display:flex;align-items:center;justify-content:center;gap:var(--space-8);min-height:56px;border:1px dashed var(--border-strong);background:transparent;color:var(--text);font-size:14px;box-sizing:border-box}.dashed:hover{border-color:var(--highlight);color:var(--text-strong)}.dashed svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round}.trow{display:grid;column-gap:var(--space-16);align-items:center;padding:10px var(--space-16);border-top:1px solid var(--border);font-size:14px;line-height:20px}.trow.head{border-top:0;padding-top:var(--space-8);padding-bottom:var(--space-8);font-family:var(--font-mono);font-size:12px;line-height:16px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.trow.head,.trow.item:hover{background:var(--surface-sunken)}.trow .n{text-align:right;font-family:var(--font-mono);letter-spacing:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.group{display:flex;justify-content:space-between;align-items:center;gap:var(--space-16);padding:var(--space-8) var(--space-16);border-top:1px solid var(--border);background:var(--surface-sunken)}.t-dd{grid-template-columns:44px minmax(240px,1fr) 120px 84px 220px 112px 112px 88px}.t-parts{grid-template-columns:minmax(200px,1.4fr) 132px minmax(150px,1fr) 80px 110px 124px}.t-sheet{grid-template-columns:48px minmax(200px,1fr) 88px minmax(170px,1fr) 100px}.t-years{grid-template-columns:minmax(220px,1.3fr) repeat(3,minmax(120px,1fr))}.inp{height:var(--size-control);padding:0 10px}.inp,.ta{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-none);background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:14px}.ta{width:100%;padding:10px var(--space-12);line-height:22px;resize:vertical}.inp::placeholder,.ta::placeholder{color:var(--text-muted)}.inp[aria-invalid=true],.ta[aria-invalid=true]{border-color:var(--critical)}.fl{display:flex;flex-direction:column;gap:6px}.fl>label,.flabel{font-size:13px;line-height:18px;font-weight:500;color:var(--text-strong)}.help{color:var(--text-muted)}.err,.help{margin:0;font-size:13px;line-height:18px}.err{color:var(--critical)}.ck{display:flex;gap:10px;align-items:center;min-height:var(--size-control);font-size:14px}.ck input{width:14px;height:14px;accent-color:var(--action)}.form-foot{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:var(--space-12);padding:var(--space-16);border-top:1px solid var(--border);background:var(--surface-sunken)}.banner{display:flex;align-items:center;gap:10px;padding:10px var(--space-16);background:var(--highlight-soft);color:var(--highlight);font-size:13px}.tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--border)}.tab{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 2px;margin:0 20px -1px 0;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font-family:var(--font-sans);font-size:14px;cursor:pointer}.tab.on,.tab:hover{color:var(--text-strong)}.tab.on{border-bottom-color:var(--action)}.seg-wrap{display:flex;flex-wrap:wrap;border:1px solid var(--border-strong)}.seg{height:30px;padding:0 var(--space-12);border:0;border-left:1px solid var(--border-strong);background:transparent;color:var(--text-secondary);font-family:var(--font-sans);font-size:13px;cursor:pointer}.seg:first-child{border-left:0}.seg:hover{background:var(--surface-hover)}.seg.on{background:var(--action);color:var(--on-action)}.menu{position:absolute;right:0;top:44px;z-index:5;box-sizing:border-box;width:300px;padding:var(--space-4) 0;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-menu)}.menu,.mi{display:flex;flex-direction:column}.mi{gap:2px;padding:var(--space-8) var(--space-16);color:var(--text)}.mi:hover{background:var(--surface-hover);color:var(--text-strong)}.menu-sep{height:1px;margin:var(--space-4) 0;background:var(--border)}.step{display:flex;gap:var(--space-16);padding:var(--space-16) 20px}.step+.step{border-top:1px solid var(--border)}.step h2,.step h3{margin:0;font-size:16px;line-height:24px;font-weight:600;color:var(--text-strong)}.num{flex:0 0 auto;width:24px;height:24px;border-radius:var(--radius-full);box-shadow:inset 0 0 0 1px var(--border-strong);color:var(--text-muted);font-family:var(--font-mono);font-size:12px;display:flex;align-items:center;justify-content:center}del{background:var(--critical-soft);color:var(--critical);text-decoration:line-through}del,ins{padding:0 2px}ins{background:var(--success-soft);color:var(--success);text-decoration:underline;text-underline-offset:3px}.ic{width:16px;height:16px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}@media (prefers-reduced-motion:no-preference){.btn,.card-link,.dashed,.mi,.nav-item,.seg,.tab,.tb,.trow.item{transition:background-color .1s ease,border-color .1s ease,color .1s ease}}:root{color-scheme:light;--surface:#ffffff;--surface-sunken:#fafafa;--surface-hover:#f0f0f0;--border:#e3e3e3;--border-strong:#c7c7c7;--border-control:rgba(0,0,0,0.2);--text-strong:#141414;--text:#272727;--text-secondary:#4d4d4d;--text-muted:#6b6b6b;--text-faint:#8f8f8f;--action:#0d0d0d;--action-hover:#272727;--on-action:#ffffff;--highlight:#8a05ff;--highlight-hover:#48008c;--highlight-soft:#f4f0ff;--success:#006d4c;--success-soft:#dffeed;--warning:#6f4116;--warning-soft:#f5dfcc;--critical:#af1d27;--critical-soft:#fce9ea;--neutral-soft:var(--surface-hover);--lime:#c6fb9d;--on-lime:#193503;--peach:#f5dfcc;--on-peach:#351e09;--focus:rgba(0,0,0,0.9);--space-2:2px;--space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-24:24px;--space-32:32px;--space-48:48px;--space-64:64px;--space-80:80px;--radius-none:0px;--radius-full:9999px;--shadow-menu:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -4px rgba(0,0,0,0.1);--shadow-raised:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -2px rgba(0,0,0,0.1);--shadow-modal:0 0 2px 2px rgb(204,204,204);--size-control:32px;--size-control-touch:44px;--size-badge:22px;--size-nav-item:28px;--size-topbar:40px;--size-sidebar:230px;--size-content:1120px;--font-sans:"Geist","Inter",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;--font-mono:"Geist Mono","JetBrains Mono",ui-monospace,Menlo,monospace}.platform{max-width:720px;margin:0 auto;padding:32px 16px 64px}.platform ul.card{list-style:none;margin:0;padding:0}.platform .li:not(.fl){justify-content:space-between}.platform .mono{overflow-wrap:anywhere}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px}.platform form.card.fl{padding:16px}.platform .li.fl{align-items:stretch}.platform .section{margin-top:28px}.platform .section>.h2{margin-bottom:8px}