.oc>section{padding:0}.oc{--oc-kids: #3b5fc0;--oc-aim: #1f6f8b;--oc-mind: #7a4bb0;--oc-grass: #e3eed5;--oc-park: #f1f5ea;--oc-water: #a9d0e6;--oc-bld: #d6d3cc;--oc-road: #e9e5dd;--oc-foot: #c2c4ba;padding-top:clamp(1.6rem,4vw,3rem);padding-bottom:4rem}.oc-tabs{display:flex;gap:.3rem}.oc-tabs a{padding:.45rem .9rem;border-radius:var(--radius-pill);font-weight:600;color:var(--ink-soft);text-decoration:none;font-size:.95rem}.oc-tabs a[aria-current=page]{background:var(--ink);color:#fff}@media(max-width:640px){.oc-tabs a{padding:.4rem .6rem;font-size:.85rem}.panel-top .panel-user{display:none}}.oc-intro{max-width:52rem;margin-bottom:2rem}.oc-intro h1{font-size:clamp(2.2rem,1.4rem + 3vw,3.4rem);margin:.3rem 0 .8rem}.oc-intro h1 em{font-style:normal;color:var(--accent)}.oc-figs{list-style:none;padding:0;margin:1.4rem 0 0;display:flex;flex-wrap:wrap;gap:.8rem 2.2rem}.oc-figs li{display:grid}.oc-figs b{font-family:var(--font-display);font-size:1.7rem;line-height:1.1;font-variant-numeric:tabular-nums}.oc-figs span{color:var(--ink-soft);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}.oc-player{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.4rem;align-items:start}@media(max-width:900px){.oc-player{grid-template-columns:minmax(0,1fr)}}.oc-mapcard,.oc-stage{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:.8rem}.oc-stage{position:sticky;top:5rem;display:grid;gap:.55rem;padding:1.1rem 1.2rem}@media(max-width:900px){.oc-stage{position:static;order:-1}}.oc-map{width:100%;height:auto;max-height:82vh;display:block}.oc-map .park{fill:var(--oc-park);stroke:var(--accent);stroke-width:.8;stroke-dasharray:3 3;stroke-opacity:.45}.oc-map .grass{fill:var(--oc-grass)}.oc-map .allot{fill:#efe3c2}.oc-map .facility{fill:none;stroke:var(--oc-foot);stroke-width:.8}.oc-map .water{fill:var(--oc-water)}.oc-map .bld{fill:var(--oc-bld)}.oc-map .road{fill:none;stroke:var(--oc-road);stroke-width:7;stroke-linecap:round;stroke-linejoin:round}.oc-map .foot{fill:none;stroke:var(--oc-foot);stroke-width:1.2;stroke-linecap:round}.oc-map .rail{fill:none;stroke:var(--ink-soft);stroke-width:.8;stroke-dasharray:1.5 1.5}.oc-map .railm{fill:none;stroke:var(--ink-soft);stroke-width:2.2;stroke-dasharray:6 3}.oc-map .rt,.oc-map .rt-halo,.oc-map .rt-done{fill:none;stroke-linecap:round;stroke-linejoin:round}.oc-map .rt-halo{stroke:#ee552d29;stroke-width:10}.oc-map .rt{stroke:var(--accent);stroke-width:3.2;stroke-opacity:.55}.oc-map .rt-done{stroke:var(--accent-deep);stroke-width:3.6}.oc-map .rt-kids,.oc-map .rt-kids-done{fill:none;stroke-linecap:round;stroke-linejoin:round;display:none}.oc-map .rt-kids{stroke:var(--oc-kids);stroke-width:3.2;stroke-opacity:.55}.oc-map .rt-kids-done{stroke:var(--oc-kids);stroke-width:3.6}.oc-map.is-kids .rt-kids,.oc-map.is-kids .rt-kids-done{display:inline}.oc-map.is-kids .rt,.oc-map.is-kids .rt-halo,.oc-map.is-kids .rt-done,.oc-map.is-kids .arrow{opacity:.18}.oc-map .stn.off{opacity:.15}.oc-mode{display:flex;gap:.3rem;padding:0 0 .6rem;flex-wrap:wrap}.oc-mode button{font:600 .85rem var(--font-body);border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:var(--radius-pill);padding:.4rem .85rem;cursor:pointer}.oc-mode button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.oc-mode button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.oc-chip.kidsb{background:#e2e8f8;color:var(--oc-kids)}.oc-map .arrow{fill:var(--accent-deep)}.oc-map .lab{font:600 9px var(--font-body);fill:var(--ink-soft);paint-order:stroke;stroke:var(--bg);stroke-width:2.5px}.oc-map .vlab{font:700 10px var(--font-display);fill:var(--ink);paint-order:stroke;stroke:var(--bg);stroke-width:3px;text-transform:uppercase;letter-spacing:.03em}.oc-map .amen{font:700 5.5px var(--font-body);fill:var(--ink)}.oc-map .amen-dot{fill:#fff;stroke:var(--ink);stroke-width:.6}.oc-map .stn{cursor:pointer;outline:none}.oc-map .stn circle{fill:#fff;stroke:var(--accent);stroke-width:1.8;transition:r .15s}.oc-map .stn.punt circle{stroke:var(--oc-aim);stroke-width:2.4}.oc-map .stn.mente circle{stroke:var(--oc-mind);stroke-width:2.4}.oc-map .stn text{font:700 7.5px var(--font-display);fill:var(--ink);text-anchor:middle;dominant-baseline:central;pointer-events:none}.oc-map .stn.base circle{fill:var(--ink);stroke:var(--ink)}.oc-map .stn.base text{fill:#fff}.oc-map .stn.on circle{fill:var(--accent);stroke:var(--accent);r:9}.oc-map .stn.on text{fill:#fff}.oc-map .stn:focus-visible circle{stroke-width:3.5}.oc-map .runner circle{fill:var(--ink)}.oc-map .runner .runner-halo{fill:#1b1a182e}.oc-legend{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;font-size:.85rem;color:var(--ink-soft);padding:.5rem .3rem 0;align-items:center}.oc-legend .sw{display:inline-block;width:20px;height:4px;border-radius:2px;vertical-align:middle}.oc-legend .dt{display:inline-block;width:11px;height:11px;border-radius:50%;border:2.4px solid;vertical-align:middle}.oc-legend label{display:flex;gap:.35rem;align-items:center;cursor:pointer}.oc-stage-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.8rem;align-items:center}.oc-num{font-family:var(--font-display);font-weight:800;font-size:1.5rem;width:2.6rem;height:2.6rem;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff}.oc-stage h2{font-size:1.35rem;margin:0;line-height:1.15}.oc-meta{margin:0;color:var(--ink-soft);font-size:.85rem;font-variant-numeric:tabular-nums}.oc-chip{font-size:.72rem;font-weight:600;padding:.2rem .6rem;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-deep);white-space:nowrap}.oc-chip.sm{padding:.1rem .5rem}.punt .oc-chip,.oc-chip.punt{background:#dcecf2;color:var(--oc-aim)}.mente .oc-chip,.oc-chip.mente{background:#ece3f6;color:var(--oc-mind)}.oc-schema{width:100%;height:auto;background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--line);color:var(--ink)}.oc-schema,.oc-card svg{--sc-accent: var(--accent)}.oc-schema .sl,.oc-card svg .sl{stroke:currentColor;stroke-width:2;fill:none}.oc-schema .ln,.oc-card svg .ln{stroke:currentColor;stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round}.oc-schema .so,.oc-card svg .so{fill:#e9e1d4;stroke:currentColor;stroke-width:1.6}.oc-schema .ac,.oc-card svg .ac{stroke:var(--sc-accent);stroke-width:2.4;stroke-linecap:round}.oc-schema circle.ac,.oc-card svg circle.ac{fill:var(--sc-accent)}.oc-schema .ct,.oc-card svg .ct{stroke:var(--ink-soft);stroke-width:1.2;stroke-dasharray:4 3;fill:none}.oc-schema .tx,.oc-card svg .tx{font:600 11px var(--font-body);fill:var(--ink-soft);stroke:none}.oc-schema .fg,.oc-card svg .fg{stroke:var(--sc-accent);stroke-width:3.2;fill:none;stroke-linecap:round;stroke-linejoin:round}.oc-schema .fg circle,.oc-card svg .fg circle{fill:var(--sc-accent);stroke:none}.oc-where{margin:0;color:var(--ink-soft);font-size:.88rem}.oc-stage p{margin:0}.oc-mat{font-size:.9rem}.oc-controls{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.3rem}.oc-btn{font:600 .95rem var(--font-body);border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:var(--radius-pill);padding:.5rem .9rem;cursor:pointer}.oc-btn:hover{border-color:var(--ink-soft)}.oc-btn:focus-visible,.oc-speed button:focus-visible,.oc-filters button:focus-visible,.oc-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.oc-play{background:var(--accent-btn);color:#fff;border-color:transparent;min-width:8.5rem}.oc-play:hover{background:var(--accent-deep)}.oc-speed{display:flex;margin-left:auto;border:1px solid var(--line);border-radius:var(--radius-pill);overflow:hidden}.oc-speed button{font:600 .82rem var(--font-body);border:0;background:transparent;padding:.45rem .7rem;cursor:pointer;color:var(--ink-soft)}.oc-speed button[aria-pressed=true]{background:var(--ink);color:#fff}.oc-next{font-size:.85rem;color:var(--ink-soft);min-height:1.3em}.oc-prof{width:100%;height:auto;display:block}.oc-prof .pa{fill:#ee552d24}.oc-prof .pl{fill:none;stroke:var(--accent);stroke-width:1.6}.oc-prof .pt{stroke:var(--ink-soft);stroke-width:1}.oc-prof .pc{stroke:var(--ink);stroke-width:1.2}.oc-prof .px{font:500 9px var(--font-body);fill:var(--ink-soft)}#ocSeek{width:100%;accent-color:var(--accent)}.oc-list-sec{margin-top:3rem}.oc-list-head{display:flex;flex-wrap:wrap;gap:.8rem 1.5rem;align-items:end;justify-content:space-between;margin-bottom:1rem}.oc-list-head h2{margin:0;font-size:clamp(1.5rem,1.2rem + 1vw,2rem)}.oc-filters{display:flex;flex-wrap:wrap;gap:.35rem}.oc-filters button{font:600 .8rem var(--font-body);border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:var(--radius-pill);padding:.35rem .75rem;cursor:pointer}.oc-filters button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.oc-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:1rem}.oc-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:transform .2s var(--ease),box-shadow .2s;display:flex;flex-direction:column}.oc-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.oc-card svg{width:100%;height:auto;background:var(--bg);border-bottom:1px solid var(--line);color:var(--ink)}.oc-card.punt svg{--sc-accent: var(--oc-aim)}.oc-card.mente svg{--sc-accent: var(--oc-mind)}.oc-card-b{padding:.8rem .9rem 1rem;display:grid;gap:.3rem}.oc-card-b p{margin:0;font-size:.88rem}.oc-card h3{margin:0;font-size:1.05rem}.oc-card-k{color:var(--ink-soft);font-size:.8rem!important;font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:.3rem;flex-wrap:wrap}.oc-card-n{font-family:var(--font-display);font-weight:800;color:var(--ink)}.oc>.oc-cta{margin-top:3rem;display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center;justify-content:space-between;background:var(--dark);color:#fff;border-radius:var(--radius-lg);padding:clamp(1.4rem,3vw,2.2rem)}.oc-cta h2{margin:0 0 .3rem;color:#fff}.oc-cta p{margin:0;color:#ffffffbf;max-width:36rem}.oc-foot{margin-top:1.5rem;font-size:.82rem;color:var(--ink-soft);max-width:60rem}[hidden]{display:none!important}
