.adv{--y1: #5cc0d2;--y2: #e2b33c;--y3: #ef8a5e;--y4: #97a0f0;--gold: #e2b850;--gold-soft: #2a2416;--accent-ink: #120508;--adv-arrow: #8a8a8a;font-weight:400}[data-theme=light] .adv{--y1: #1d7586;--y2: #a87a06;--y3: #bb4f27;--y4: #4a54a6;--gold: #9c7414;--gold-soft: #f6ecd2;--accent-ink: #ffffff;--adv-arrow: #77727c}.adv a:focus-visible,.adv button:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:3px}.adv h2{font-size:1.7rem;color:var(--text);border:0;padding:0;margin:0 0 .4rem;letter-spacing:-.015em}.adv h3{font-size:1rem}.adv .read{max-width:68ch}.adv .eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;color:var(--gold);margin-bottom:.4rem}.adv section{padding:40px 0 8px;border-top:1px solid var(--border-mid);scroll-margin-top:72px}.adv p{margin-bottom:.8rem}.adv ul{padding-left:1.2rem}.adv{position:relative}.adv-ribbon-wrap{position:absolute;top:0;right:-32px;width:170px;height:170px;overflow:hidden;pointer-events:none;z-index:2}.adv-ribbon{position:absolute;left:-24px;top:52px;width:260px;transform:rotate(45deg);text-align:center;background:var(--accent);color:var(--accent-ink);font-family:var(--mono);font-size:.66rem;font-weight:500;line-height:1;letter-spacing:.08em;text-transform:uppercase;padding:6px 0;box-shadow:0 2px 6px #0000002e}.adv .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (max-width: 760px){.adv-ribbon-wrap{right:-20px;width:130px;height:130px}.adv-ribbon{left:-32px;top:40px;width:220px;font-size:.55rem;letter-spacing:.04em;padding:5px 0}.adv .adv-nav{padding-right:96px}}.adv-banner{margin:28px 0 0;padding:12px 16px;border:1px solid var(--border-mid);border-left:4px solid var(--gold);background:var(--bg-card);font-size:.95rem}.adv-banner.draft{border-left-color:var(--accent)}.adv-nav{display:flex;flex-wrap:wrap;gap:4px 20px;padding:18px 0 0;font-family:var(--mono);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.adv-nav a{color:var(--text-muted)}.adv-nav a:hover{color:var(--accent);opacity:1}.adv .adv-hero{padding:28px 0 36px;max-width:68ch}.adv .adv-hero .tldr-head{font-family:var(--mono);font-size:.8rem;font-weight:500;letter-spacing:.12em;color:var(--gold);margin:1.4rem 0 .5rem}.adv .tldr{padding-left:1.2rem;display:grid;gap:.35rem}.adv .adv-hero .book-btn{display:inline-block;margin-top:1.4rem;padding:10px 28px}.adv .adv-hero h1{font-size:clamp(2rem,4.5vw,2.8rem);font-weight:700;letter-spacing:-.03em;line-height:1.05}.adv .btn{display:block;background:var(--accent);color:var(--accent-ink);font-weight:600;font-size:1.05rem;padding:10px 18px;border-radius:4px;text-align:center}.adv .btn:hover{opacity:.88}.adv .rule{background:var(--gold-soft);border-left:4px solid var(--gold);padding:14px 18px;margin-top:10px}.adv .rule strong{display:block;font-size:1.1rem;margin-bottom:2px}.adv ol.steps{list-style:none;padding:0;margin:20px 0;display:grid;gap:14px;counter-reset:s}.adv ol.steps li{display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:10px;counter-increment:s}.adv ol.steps li:before{content:counter(s);font-family:var(--mono);font-weight:500;color:var(--accent-ink);background:var(--accent);width:1.9rem;height:1.9rem;border-radius:50%;display:grid;place-items:center}.adv ol.steps .links{font-size:.9rem;display:flex;flex-wrap:wrap;gap:2px 14px}.adv .tbl{overflow-x:auto}.adv table{border-collapse:collapse;width:100%;font-size:.93rem;line-height:1.45}.adv th,.adv td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border-mid);vertical-align:top}.adv th{font-family:var(--mono);font-weight:500;font-size:.72rem;letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase}.adv td.num{font-variant-numeric:tabular-nums;white-space:nowrap}.adv .two{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;margin-top:16px;max-width:68ch}.adv .note{color:var(--text-muted);font-size:.88rem;margin-top:.6rem}.adv .tabs{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0 10px}.adv .tabs button{font-weight:500;font-size:.95rem;padding:6px 14px;border:1px solid var(--border-mid);background:var(--bg-card);color:var(--text);border-radius:4px}.adv .tabs button[aria-selected=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.adv .controls{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;font-size:.88rem;color:var(--text-muted);margin-bottom:10px}.adv .legend{display:flex;flex-wrap:wrap;gap:6px 14px}.adv .legend span{display:inline-flex;align-items:center;gap:6px}.adv .legend i{width:14px;height:14px;border-radius:3px;border:2px solid currentColor;display:inline-block}.adv .legend .dash{width:26px;height:0;border:0;border-top:2px dashed var(--text-muted);border-radius:0}.adv .legend .solid{width:26px;height:0;border:0;border-top:2px solid var(--text-muted);border-radius:0}.adv label.toggle{display:inline-flex;gap:6px;align-items:center;cursor:pointer;color:var(--text)}.adv .mapbox{background:var(--bg-card);border:1px solid var(--border-mid);border-radius:6px}.adv .map{position:relative;display:grid;grid-template-columns:6.2rem minmax(0,1fr);column-gap:14px;row-gap:38px;padding:18px 16px 22px}.adv .map svg.edges{position:absolute;inset:0;pointer-events:none;overflow:visible}.adv .rowhead{font-family:var(--mono);font-weight:500;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;line-height:1.3;padding:4px 0 4px 8px;border-left:3px solid currentColor;align-self:start}.adv .row{display:flex;flex-wrap:wrap;gap:14px 18px;align-items:flex-start;min-height:2rem}.adv .row .node{flex:0 0 150px}.adv .node{position:relative;z-index:1;background:color-mix(in srgb,var(--yc) 12%,var(--bg-card));border:2px solid var(--yc);border-radius:6px;padding:6px 8px;text-align:left;color:var(--text);font:inherit;line-height:1.3;width:100%;transition:opacity .15s}.adv .node .c{font-family:var(--mono);font-weight:500;font-size:.78rem;color:var(--yc)}.adv .node .t{display:block;font-size:.8rem;line-height:1.25}.adv .node .h{font-family:var(--mono);font-size:.68rem;color:var(--text-muted)}.adv .next{display:inline-block;font-family:var(--mono);font-weight:500;font-size:.6rem;letter-spacing:.02em;line-height:1.3;color:var(--text);background:var(--gold-soft);border:1px dashed var(--gold);border-radius:3px;padding:1px 5px}.adv .next.unofficial{background:transparent}.adv .node .next{display:block;width:fit-content;margin-top:4px;white-space:nowrap;font-size:.56rem;letter-spacing:0;padding:1px 4px}.adv .detail .desc{margin:.4rem 0;color:var(--text-muted)}.adv .node.group{border-style:dashed;background:var(--bg-card)}.adv .node.elective{border-style:dotted}.adv .map.focus .node{opacity:.28}.adv .map.focus .node.on{opacity:1}.adv .map.focus path[data-a]{opacity:.12}.adv .map.focus path[data-a].on{opacity:1}.adv .map.focus path[data-a].on:not(.head){stroke-width:2.4}.adv .detail{margin-top:12px;min-height:3.2em;background:var(--bg-card);border:1px solid var(--border-mid);border-left:4px solid var(--accent);padding:12px 16px;font-size:.92rem;line-height:1.5}.adv .detail b{font-family:var(--mono);font-weight:500}.adv .reqs{columns:2 300px;column-gap:28px;margin-top:18px}.adv .reqs div{break-inside:avoid;margin-bottom:14px}.adv .reqs h3{margin-bottom:4px}.adv .reqs ul{font-size:.9rem;line-height:1.5}.adv .cover{font-family:var(--mono);font-weight:500;font-size:.78rem;white-space:nowrap}.adv .yes{color:var(--y1)}.adv .part{color:var(--y2)}.adv .no{color:var(--text-muted)}.adv .new{font-family:var(--mono);font-weight:500;font-size:.66rem;letter-spacing:.08em;background:var(--accent);color:var(--accent-ink);padding:1px 6px;border-radius:3px;vertical-align:2px}.adv #help ul{line-height:1.9}.adv-foot{margin-top:32px;padding-top:14px;border-top:1px solid var(--border-mid);color:var(--text-muted);font-size:.82rem}@media (max-width: 760px){.adv .two{grid-template-columns:minmax(0,1fr)}.adv .map{grid-template-columns:minmax(0,1fr);row-gap:8px}.adv .row{margin-bottom:26px}.adv .row .node{flex-basis:calc(50% - 9px)}}@media (prefers-reduced-motion: reduce){.adv *{transition:none!important}}
