.city-adventure{--adventure-ink:#214d3f;--adventure-green:#287f5d;color:var(--adventure-ink);font-family:inherit;display:grid;gap:12px}.city-adventure h3,.city-adventure p{margin:0}.city-adventure svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.city-adventure-heading{padding:2px 3px 12px}.city-adventure-eyebrow{display:block;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#698477}.city-adventure h3{font-size:19px;line-height:1.25;margin-top:4px;font-weight:850}.city-adventure-heading p{font-size:12px;line-height:1.5;color:#657b70;margin-top:7px}.city-adventure-routes{display:grid;gap:8px}.city-adventure-route{appearance:none;display:flex;align-items:center;gap:11px;width:100%;border:1px solid #dfeae2;border-radius:17px;background:#fff;padding:13px;text-align:left;color:inherit;cursor:pointer;transition:background .16s,transform .16s,box-shadow .16s;box-shadow:0 3px 0 #e8eee7}.city-adventure-route:hover{transform:translateY(-2px);background:#f7fbf5;box-shadow:0 5px 0 #e8eee7}.city-adventure-route:focus-visible,.city-adventure button:focus-visible,.city-passport summary:focus-visible{outline:3px solid #9bcaa4;outline-offset:3px}.city-adventure-route-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;flex:0 0 auto;background:#eaf3e8;color:var(--adventure-color,#378763)}.city-adventure-route-copy{display:grid;gap:5px;flex:1;min-width:0}.city-adventure-route-copy strong{font-size:13px;line-height:1.3}.city-adventure-route-copy small{font-size:11px;font-weight:450;line-height:1.45;color:#718176}.city-adventure-route-arrow{font-size:28px;color:#7ba389}.city-adventure-stars{display:inline-flex;gap:3px;font-size:19px;color:#dba83f;line-height:1}.city-adventure-stars .is-empty{color:#d6dfd5}.city-adventure-active,.city-adventure-complete{border-radius:20px;background:linear-gradient(145deg,#fffdf6,#edf5e8);border:1px solid #dce7d5;padding:16px;box-shadow:0 4px 0 #e1eadb}.city-adventure-active-heading{display:flex;align-items:center;gap:10px}.city-adventure-active-heading h3{font-size:16px}.city-adventure-close{margin-left:auto;align-self:flex-start;flex:0 0 30px;width:30px;height:30px;border:0;border-radius:50%;background:#e6eddf;color:#6c7e70;font-size:22px;line-height:1;cursor:pointer}.city-adventure-target{display:flex;align-items:center;gap:10px;margin-top:18px;padding:12px;border-radius:14px;background:#fffef9}.city-adventure-point{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#38875d;color:#fff;font-weight:850;flex:0 0 auto}.city-adventure-target small{display:block;color:#7b8b7c;font-size:10px;margin-bottom:4px}.city-adventure-target strong{display:block;font-size:14px;line-height:1.3}.city-adventure-instruction{font-size:12px;line-height:1.5;padding-top:11px;min-height:36px;color:#5a725d}.city-adventure-stop-progress{height:5px;border-radius:8px;background:#dce8d8;overflow:hidden;margin-top:7px}.city-adventure-stop-progress span{display:block;height:100%;background:#6ca66e;width:0;transition:width .12s linear}.city-adventure-complete{text-align:center;padding:21px 17px}.city-adventure-medal{width:58px;height:58px;margin:0 auto 12px;display:grid;place-items:center;border-radius:50%;background:#f3dda0;color:#8d742f;border:5px solid #fff6d8;box-shadow:0 2px 0 #e4c97e}.city-adventure-complete .city-adventure-stars{margin:12px 0}.city-adventure-complete p{font-size:12px;line-height:1.5;color:#5f755f}.city-adventure-actions{display:grid;gap:8px;margin-top:15px}.city-adventure-actions button{font:inherit;font-size:12px;font-weight:750;min-height:40px;border:0;border-radius:12px;background:#327e56;color:#fff;cursor:pointer;padding:10px 15px}.city-adventure-actions button.is-quiet{background:#e0ebda;color:#486947}.city-passport{border:1px solid #e2e8df;border-radius:17px;background:#fffefa;overflow:hidden}.city-passport summary{display:flex;align-items:center;gap:9px;list-style:none;padding:13px;cursor:pointer}.city-passport summary::-webkit-details-marker{display:none}.city-passport-icon{color:#759179}.city-passport summary strong{display:block;font-size:12px}.city-passport summary small{display:block;font-size:10px;color:#7c8a7e;margin-top:4px}.city-passport-chevron{margin-left:auto;color:#839385}.city-passport[open] .city-passport-chevron{transform:rotate(180deg)}.city-passport-body{padding:0 13px 13px}.city-passport-stamps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.city-passport-stamp{display:grid;justify-items:center;align-content:start;gap:6px;border:1px dashed #d8e1d4;border-radius:12px;padding:11px 6px;color:#93a092;text-align:center;min-width:0}.city-passport-stamp>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#ecf0e7;font-size:18px}.city-passport-stamp strong{font-size:10px;line-height:1.35;overflow-wrap:anywhere}.city-passport-stamp small{font-size:9px}.city-passport-stamp.is-discovered{color:#48815b;border-style:solid;background:#f0f7eb}.city-passport-stamp.is-discovered>span{background:#d7eacb}.city-passport-note{font-size:10px;line-height:1.5;color:#8a9788;padding-top:10px}.city-passport-stamps>p{font-size:12px;color:#7c8b7c;grid-column:1/-1}@media(max-width:600px){.city-adventure h3{font-size:17px}.city-adventure-route{padding:11px}.city-adventure-active{padding:13px}.city-adventure-route-copy strong{font-size:12px}.city-passport-stamps{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.city-adventure *{transition:none!important}}

.city-taxi-colors{display:flex;gap:9px;align-items:center;flex-wrap:wrap;padding:18px 0}.city-taxi-colors>span{font-size:12px;font-weight:700;width:100%}.city-taxi-colors button{display:grid;justify-items:center;gap:5px;flex:1;min-width:80px;border:1px solid #d9e4d7;background:#f5f8ef;border-radius:14px;padding:10px;font:inherit;font-size:12px;color:#365548;cursor:pointer}.city-taxi-colors button[aria-pressed=true]{border:2px solid #43856a;background:#e9f3e6}.city-taxi-colors button:disabled{opacity:.48;cursor:default}.city-taxi-colors i{display:block;width:34px;height:18px;background:var(--paint);border-radius:9px;box-shadow:0 3px 0 #435b4e}.city-taxi-colors small{font-size:10px}.city-taxi-result{display:grid;gap:7px;padding:18px;border-radius:16px;background:#edf4df;color:#3b6547}.city-taxi-result strong{font-size:28px;color:#aa812c}.city-taxi-result span{font-size:13px}.city-taxi-result b{font-size:13px}.city-taxi-progress{display:grid;gap:5px;padding:13px;border-radius:13px;background:#f4f0d9;margin-top:12px}.city-taxi-progress b{font-size:14px}.city-taxi-progress span{font-size:12px;color:#586848}.city-taxi-progress small{font-size:11px;color:#7e8467}.city-taxi-orders .sim-job>strong{display:grid;gap:6px}.city-taxi-orders .sim-job>strong small{font-size:11px;font-weight:500}
.city-passport-stamp p{font-size:10px;line-height:1.4;color:#7b897b;min-height:42px}.city-passport-stamp .city-passport-district{color:#64856d;font-weight:700}.city-passport-stamp button{align-self:end;min-height:38px;width:100%;border:0;border-radius:9px;background:#e1edda;color:#3a7653;font:inherit;font-size:10px;font-weight:750;padding:7px 5px;cursor:pointer}.city-passport-stamp button:hover{background:#d4e7c9}.city-passport-stamp{grid-template-rows:auto auto auto 1fr auto auto}.city-passport-stamp strong{font-size:11px}@media(max-width:600px){.city-passport-stamps{grid-template-columns:repeat(2,minmax(0,1fr))}.city-passport-stamp button{min-height:44px}}
/* Driving shows one destination and one instruction; the story title is kept
   in the accessible label rather than repeated above a second destination box. */
.city-adventure.is-driving{gap:8px}.city-adventure.is-driving .city-adventure-active{padding:12px;border-radius:16px;box-shadow:0 2px 0 #e1eadb}.city-adventure.is-driving .city-adventure-route-icon{width:34px;height:34px;border-radius:11px}.city-adventure.is-driving .city-adventure-route-icon svg{width:22px;height:22px}.city-adventure-current-goal{min-width:0;flex:1}.city-adventure.is-driving h3{margin-top:3px;font-size:15px;line-height:1.3}.city-adventure.is-driving .city-adventure-eyebrow{font-size:9px}.city-adventure.is-driving .city-adventure-instruction{padding-top:9px;min-height:0;font-size:11px;line-height:1.4}.city-adventure-stop-progress[hidden]{display:none}.city-adventure.is-driving .city-passport summary{padding:9px 11px}.city-adventure.is-driving .city-passport summary small{margin-top:3px;font-size:9px}.city-adventure.is-driving .city-passport-icon svg{width:21px;height:21px}
