
.taxi-page{--text:#eeeef3;--text-muted:#aaaab5;--page-bg:#111116;--section-bg:#1b1b23;--border:#383841;--border-strong:#53535f;--accent:#ee647d;--accent-hover:#ff8298;--accent-on-dark:#ff8298;--accent-soft:#261a22;--accent-border:#7a3447;--taxi-border:#383841;--taxi-panel:#1b1b23;--taxi-muted:#aaaab5;color-scheme:dark;background:#111116;color:#eeeef3}
.taxi-page .site-header,.taxi-page .site-footer{background:#13131a;border-color:var(--taxi-border)}.taxi-page .article-header{max-width:920px}.taxi-page .article-header h1{font-size:clamp(30px,4vw,49px);line-height:1.15}.taxi-page .article-sub,.taxi-page .article-meta,.taxi-page .breadcrumb{color:var(--taxi-muted)}.taxi-page .main-nav a,.taxi-page .brand{color:#eeeef3}.taxi-page .quick-answer{background:#261a22;border-color:#7a3447}.taxi-page .quick-answer h2{color:#f5a3b4}.taxi-page .quick-answer p{color:#e7dfe5}.taxi-page .toc{background:var(--taxi-panel);border-color:var(--taxi-border)}.taxi-page .toc a{color:#c5c5d0}.taxi-page .toc a:hover{color:#ff8298}.taxi-page .prose a,.taxi-page .taxi-back{color:#ff8aa1}.taxi-page .callout{background:#1d202a;border-color:#596474}.taxi-page .callout p{margin:10px 0 0}.taxi-page .prose>h2{border-bottom:1px solid var(--taxi-border);padding-bottom:13px}.taxi-page .chip{background:#37212a;border-color:#663444;color:#fca4b6}.taxi-page .btn-secondary{background:#24242d;border-color:#454551;color:#e3e3eb}.taxi-citations{font-size:11px;white-space:normal}.taxi-citations a{margin-right:4px;text-decoration:none}.taxi-location-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:22px 0}.taxi-location{border:1px solid var(--taxi-border);border-radius:12px;background:var(--taxi-panel);padding:22px;scroll-margin-top:90px}.taxi-location h3{margin:8px 0 12px;font-size:22px}.taxi-location p{font-size:15px;line-height:1.65;margin:12px 0}.taxi-number{color:#f6849d;font-weight:700;font-size:13px;letter-spacing:.1em}.taxi-gate{color:#bbbcca}.taxi-video-link{font-size:13px;font-weight:600}.taxi-clue-nav{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.taxi-clue-nav a{border:1px solid #67424e;border-radius:24px;padding:6px 13px;font-size:13px;text-decoration:none}.taxi-puzzle{border-top:1px solid var(--taxi-border);padding:25px 0 9px;scroll-margin-top:90px}.taxi-puzzle h3{font-size:23px;margin:0 0 12px}.taxi-puzzle ol{padding-left:26px}.taxi-puzzle li{margin:14px 0}.taxi-observe{color:#e0d6bd;background:#24221d;border-left:3px solid #c79949;padding:12px 15px;font-size:15px}.taxi-puzzle-tip{color:#bcbcca;font-size:15px}.taxi-figure{margin:24px 0;background:#19191f;border:1px solid var(--taxi-border);border-radius:14px;overflow:hidden}.taxi-figure img{width:100%;height:auto;display:block}.taxi-figure figcaption{font-size:12px;padding:10px 16px;color:#acacb8}.taxi-checklist{border:1px solid var(--taxi-border);background:var(--taxi-panel);border-radius:12px;overflow:hidden;margin:22px 0}.taxi-progress{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;gap:12px;border-bottom:1px solid var(--taxi-border);font-size:15px}.taxi-progress button{font:inherit;font-size:12px;background:#292932;border:1px solid #4b4b59;color:#e5e5ed;padding:7px 10px;border-radius:6px;cursor:pointer}.taxi-checklist label{display:flex;align-items:center;gap:12px;padding:15px 20px;border-bottom:1px solid #2f2f3a;font-size:15px}.taxi-checklist label:last-child{border:0}.taxi-checklist input{width:18px;height:18px;accent-color:#ed6480;flex-shrink:0}.taxi-checklist span{flex:1}.taxi-checklist a{font-size:12px;white-space:nowrap}.taxi-checklist label:has(input:checked)>span{color:#a1c4ab}.taxi-reward-note{background:#282117;border:1px solid #78623e;border-radius:10px;padding:18px 21px;margin:24px 0}.taxi-reward-note h3{margin:0 0 12px;font-size:19px}.taxi-reward-note p{font-size:15px;margin:12px 0}.taxi-spoiler{border:1px solid var(--taxi-border);border-radius:8px;padding:15px 18px;margin:24px 0}.taxi-spoiler summary{cursor:pointer;font-size:15px}.taxi-spoiler p{font-size:15px;color:#bbbbc7}.taxi-source-list li{margin:14px 0;font-size:15px;scroll-margin-top:90px}.taxi-source-list span{display:block;color:#a6a6b3;font-size:12px}.taxi-back{display:block;margin-top:18px;font-size:13px}.taxi-page a:focus-visible,.taxi-page button:focus-visible,.taxi-page input:focus-visible,.taxi-page summary:focus-visible{outline:2px solid #ff97aa;outline-offset:4px}.taxi-page .footer-nav a{color:#ccccd6}
@media(max-width:760px){.taxi-location-grid{grid-template-columns:1fr}.taxi-location{padding:18px}.taxi-page .prose{font-size:16px}.taxi-puzzle h3{font-size:21px}.taxi-checklist label{padding:13px 14px;font-size:14px}.taxi-figure figcaption{font-size:11px}.taxi-page .article-header{padding-top:22px}.taxi-checklist a{font-size:11px}.taxi-progress{padding:13px 14px}}

.taxi-page .article-header h1{font-size:clamp(30px,3.5vw,44px)}
.taxi-page .taxi-clue-nav a{min-height:40px;display:flex;align-items:center}
.taxi-page .taxi-location h3{margin-top:0}.taxi-page .taxi-location p{font-size:16px}
.taxi-route-actions{display:flex;flex-wrap:wrap;gap:10px 16px;font-size:14px;line-height:1.8}
.taxi-puzzle-index{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 26px}
.taxi-puzzle-index a{display:flex;flex-direction:column;gap:5px;padding:14px 16px;background:#1b1b23;border:1px solid #383841;border-radius:10px;text-decoration:none;font-size:16px}
.taxi-puzzle-index span{font-size:13px;color:#b8b8c6}.taxi-puzzle-video{font-size:14px}
.taxi-route-plan{padding:20px;border:1px solid #514153;background:#201c27;border-radius:12px;margin:22px 0}
.taxi-route-plan ol{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:16px 0;padding-left:22px;font-size:14px}
.taxi-route-plan small{color:#bbbcca}.taxi-page .guide-video{scroll-margin-top:95px}
.taxi-page .video-player{min-height:200px}.taxi-page .video-selection{color:#ffc3cf;font-size:14px}
.taxi-page .guide-sources{padding:16px 18px;border:1px solid #383841;border-radius:10px}.taxi-page .guide-sources summary{cursor:pointer;font-weight:600}
.taxi-page .guide-lightbox{max-width:min(1100px,96vw)}
@media(max-width:760px){.taxi-puzzle-index{grid-template-columns:1fr}.taxi-route-plan ol{grid-template-columns:1fr 1fr}.taxi-route-actions{font-size:14px}.taxi-page .guide-video{scroll-margin-top:145px}.taxi-page .taxi-location{scroll-margin-top:145px}.taxi-page .taxi-puzzle{scroll-margin-top:145px}.taxi-page .article-header h1{font-size:30px}.taxi-page .taxi-checklist label{align-items:flex-start}.taxi-page .taxi-progress{flex-wrap:wrap}}
