.oa-stats{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.oa-stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 16px;min-width:120px}.oa-stat b{display:block;font-family:var(--serif);font-size:30px;line-height:1.1;color:var(--ink)}.oa-stat span{font-size:13px;color:var(--ink2)}.oa-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));grid-gap:18px;gap:18px;margin-top:26px}.oa-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;display:flex;flex-direction:column;gap:10px;min-width:0}.oa-card h3{margin:0;font-size:20px;line-height:1.25}.oa-card p{margin:0;color:var(--ink2);font-size:15px}.oa-card a.oa-card-link{color:inherit;text-decoration:none}.oa-card a.oa-card-link:hover h3{color:var(--blue-ink)}.oa-n{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}.oa-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--ink3);margin-top:auto}.oa-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:3px 10px;font-size:12.5px;font-weight:600;border:1px solid var(--line);background:var(--paper2);color:var(--ink2);white-space:nowrap}.oa-pill.is-published{background:#e8f8f1;border-color:#bfe9d6;color:#0b7a55}.oa-pill.is-awaiting{background:#fff6e5;border-color:#f7dfae;color:#8a5a00}.oa-pill.is-planned{background:var(--paper2);color:var(--ink3)}.oa-pill.is-done{background:#e9efff;border-color:#c9d7ff;color:var(--blue-ink)}.oa-route-tracks{display:flex;flex-wrap:wrap;gap:6px}.oa-route-tracks a{font-size:13px;color:var(--blue-ink);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:3px 10px}.oa-list{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-gap:10px;gap:10px}.oa-list li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 18px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:6px 16px;gap:6px 16px;align-items:start}.oa-list li a{font-weight:600;color:var(--ink);text-decoration:none}.oa-list li a:hover{color:var(--blue-ink)}.oa-list .oa-obj{grid-column:1/-1;margin:0;padding-left:18px;color:var(--ink2);font-size:14px}.oa-two{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-gap:28px;gap:28px;align-items:start}@media (max-width:900px){.oa-two{grid-template-columns:minmax(0,1fr)}}.oa-box{background:var(--paper2);border:1px solid var(--line);border-radius:16px;padding:18px 20px}.oa-box h2,.oa-box h3{margin:0 0 8px;font-size:17px}.oa-box ul{margin:0;padding-left:18px;color:var(--ink2);font-size:15px}.oa-crumbs{font-size:14px;color:var(--ink3);display:flex;gap:8px;flex-wrap:wrap}.oa-crumbs a{color:var(--blue-ink);text-decoration:none}.oa-lesson{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);grid-gap:32px;gap:32px;align-items:start}@media (max-width:960px){.oa-lesson{grid-template-columns:minmax(0,1fr)}}.oa-body{font-size:17px;line-height:1.7;color:var(--ink);max-width:72ch}.oa-body p{margin:0 0 18px}.oa-body h2{font-size:22px;margin:28px 0 12px}.oa-cite{font-family:var(--mono);font-size:11.5px;vertical-align:super;margin-left:2px;color:var(--blue-ink);text-decoration:none;border:1px solid var(--line);border-radius:6px;padding:0 4px;background:var(--paper2)}.oa-cite:focus-visible,.oa-cite:hover{border-color:var(--blue)}.oa-example{border-left:3px solid var(--violet);padding-left:14px;color:var(--ink2)}.oa-callout{border-radius:14px;padding:14px 16px;margin:0 0 18px;font-size:15.5px;border:1px solid var(--line)}.oa-callout.blue{background:#eef3ff;border-color:#c9d7ff}.oa-callout.gold{background:#fff6e5;border-color:#f7dfae}.oa-callout.red{background:#fdecec;border-color:#f6c4c4}.oa-tool{display:inline-flex;margin:0 0 18px}.oa-check{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;margin:0 0 22px;box-shadow:var(--shadow)}.oa-check fieldset{border:0;margin:0;padding:0;min-width:0}.oa-check legend{font-weight:700;font-size:16px;margin-bottom:10px;padding:0}.oa-check label{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:10px;border:1px solid transparent;cursor:pointer;font-size:15.5px}.oa-check label:hover{background:var(--paper2)}.oa-check label.is-right{border-color:#bfe9d6;background:#e8f8f1}.oa-check label.is-wrong{border-color:#f6c4c4;background:#fdecec}.oa-check .oa-feedback{margin-top:10px;font-size:15px;color:var(--ink2)}.oa-check .oa-check-k{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);margin-bottom:6px}.oa-rail{position:-webkit-sticky;position:sticky;top:96px;display:grid;grid-gap:12px;gap:12px}@media (max-width:960px){.oa-rail{position:static}}.oa-receipt{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;font-size:14px;scroll-margin-top:96px}.oa-receipt:target{border-color:var(--blue);box-shadow:0 0 0 3px rgba(31,94,255,.15)}.oa-receipt h3{margin:0 0 4px;font-size:14px}.oa-receipt blockquote{margin:6px 0;padding-left:10px;border-left:3px solid var(--line);color:var(--ink2);font-size:13.5px;overflow-wrap:anywhere}.oa-receipt small{color:var(--ink3);display:block;overflow-wrap:anywhere}.oa-receipt a{color:var(--blue-ink)}.oa-done-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px}.oa-note{font-size:13.5px;color:var(--ink3);max-width:80ch}.oa-check input[type=radio]{-moz-appearance:auto;appearance:auto;-webkit-appearance:radio;accent-color:var(--blue);width:18px;height:18px;margin:2px 0 0;flex:none;background:none;border:0;box-shadow:none}.oa-receipt code{overflow-wrap:anywhere;word-break:break-word}.oa-levels{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));grid-gap:10px;gap:10px}.oa-levels li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:grid;grid-gap:4px;gap:4px;font-size:14.5px;color:var(--ink2)}.oa-levels b{color:var(--ink);font-size:15.5px}