.qw{--qw-paper:#fffaf0;--qw-paper-2:#f6ead2;--qw-ink-text:#2e2a24;--qw-dim:#5e5448;--qw-line:#5a463247;--qw-good:#2f7d3a;--qw-bad:#b0382a;--qw-note:#1f6f8b;--qw-ink:#d4653f;--qw-text:calc(.88rem * var(--pk-text-scale,1));--qw-sans:"Avenir Next", "Segoe UI", system-ui, -apple-system, sans-serif;--qw-hand:"Marker Felt", "Bradley Hand", "Segoe Print", "Comic Sans MS", cursive;--qw-top:var(--pk-fx-top,72px);font-size:calc(100% * var(--pk-text-scale,1));padding:var(--qw-top) max(10px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));color:var(--qw-ink-text);font-family:var(--qw-sans);-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden;container:qw/size}.qw[data-large=true]{--qw-text:max(1.06rem, calc(.88rem * var(--pk-text-scale,1)))}.qw[data-contrast=true]{--qw-paper:#fff;--qw-paper-2:#fff;--qw-dim:#1a1a1a;--qw-line:#1a1a1a}.qw-stage{flex-direction:column;gap:clamp(5px,1.1cqmin,10px);width:min(100%,62rem);height:100%;min-height:0;margin:0 auto;display:flex}.qw-head{border:1.5px solid var(--qw-line);border-left:6px solid var(--qw-ink);background:var(--qw-paper);border-radius:6px;flex:none;grid-template-columns:1fr auto;grid-template-areas:"route meters""hood meters";column-gap:10px;padding:6px 14px;display:grid;box-shadow:2px 3px #5a46322e}.qw-head__route{font:700 calc(.68rem * var(--pk-text-scale,1)) / 1.2 var(--qw-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--qw-dim);grid-area:route;margin:0}.qw-head__hood{font:700 calc(clamp(1.05rem, 3.4cqmin, 1.4rem) * var(--pk-text-scale,1)) / 1.15 var(--qw-hand);color:var(--qw-ink);grid-area:hood;margin:0}.qw-head__meters{flex-wrap:wrap;grid-area:meters;place-content:center flex-end;gap:4px 6px;max-width:16rem;display:flex}.qw-chip{border:1px solid var(--qw-line);background:var(--qw-paper-2);font:700 calc(.7rem * var(--pk-text-scale,1)) / 1.5 var(--qw-sans);color:var(--qw-ink-text);border-radius:999px;margin:0;padding:1px 8px}.qw-work{flex-direction:column;flex:1;gap:clamp(5px,1.1cqmin,10px);min-height:0;display:flex}@container qw (width>=40rem) and (aspect-ratio>=6/5){.qw-work{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}}.qw-receipts{background:repeating-linear-gradient(180deg, var(--qw-paper) 0 1.55em, #1f6f8b1f 1.55em calc(1.55em + 1px));border-radius:4px;flex:0 auto;min-height:0;max-height:40cqh;padding:8px 12px;overflow-y:auto;box-shadow:2px 3px #5a46322e}@container qw (width>=40rem) and (aspect-ratio>=6/5){.qw-receipts{max-height:none}}.qw-receipts__title,.qw-route__title{font:700 calc(.66rem * var(--pk-text-scale,1)) / 1.2 var(--qw-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--qw-dim);margin:0 0 4px}.qw-receipts__list{gap:5px;margin:0;padding:0;list-style:none;display:grid}.qw-receipt{border-left:3px solid var(--qw-ink);gap:1px;padding-left:10px;display:grid}.qw-receipt__from{font:italic 600 calc(var(--qw-text) * .76) / 1.2 var(--qw-sans);color:var(--qw-dim)}.qw-receipt__text{font:600 var(--qw-text) / 1.35 var(--qw-sans)}.qw[data-marks=true] .qw-receipt[data-holds=true]{border-left-color:var(--qw-good)}.qw[data-marks=true] .qw-receipt[data-holds=true] .qw-receipt__text:after{content:" ✓";color:var(--qw-good)}.qw[data-marks=true] .qw-receipt[data-holds=false]{border-left-color:var(--qw-bad)}.qw-route{border:1.5px solid var(--qw-line);background:var(--qw-paper);border-radius:6px;flex-direction:column;flex:1;gap:6px;min-height:0;padding:8px 12px 9px;display:flex;box-shadow:2px 3px #5a46322e}.qw-route__list{flex:1;grid-auto-rows:minmax(44px,1fr);gap:4px;min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.qw-route__item{min-height:0;display:flex}.qw-stop{border:1.5px solid var(--qw-line);background:var(--qw-paper-2);min-height:44px;color:var(--qw-ink-text);font:700 var(--qw-text) / 1.2 var(--qw-sans);text-align:left;cursor:pointer;border-radius:8px;flex:1;align-items:center;gap:10px;padding:2px 12px 2px 6px;transition:transform .12s,background-color .12s;display:flex}.qw-stop:hover:not(:disabled){background:#fff3dc}.qw-stop[aria-pressed=true]{border-color:var(--qw-ink);box-shadow:0 0 0 3px var(--qw-ink);background:#fff;transform:translate(6px)}.qw-stop[data-fixed]{border-style:dashed;border-color:var(--qw-note);opacity:.85}.qw-stop:focus-visible,.qw-btn:focus-visible,.qw-spot:focus-visible{outline-offset:2px;outline:3px solid #1f3b8b}.qw-stop:disabled{cursor:default}.qw-stop__n{background:var(--qw-ink);color:#fff;width:1.7em;height:1.7em;font:800 .8em / 1 var(--qw-sans);border-radius:50%;flex:none;place-items:center;display:grid}.qw-stop__name{flex:1}.qw-stop__sign{flex:none;width:22px;height:22px;position:relative}.qw-stop__sign:before,.qw-stop__sign:after{content:"";position:absolute}.qw-stop[data-sign=bridge] .qw-stop__sign:before{border:3px solid #8a6a4a;border-bottom:0;border-radius:12px 12px 0 0;inset:6px 0 4px}.qw-stop[data-sign=fountain] .qw-stop__sign:before{background:#2f8fb0;border-radius:0 0 8px 8px;height:7px;bottom:2px;left:2px;right:2px}.qw-stop[data-sign=fountain] .qw-stop__sign:after{background:#79c3c4;border-radius:2px;width:4px;height:12px;top:2px;left:9px}.qw-stop[data-sign=tower] .qw-stop__sign:before{clip-path:polygon(50% 0,100% 30%,100% 100%,0 100%,0 30%);background:#b0476f;width:8px;height:22px;top:0;left:7px}.qw-stop[data-sign=market] .qw-stop__sign:before{background:repeating-linear-gradient(90deg,#d4653f 0 4px,#fff 4px 8px);border-radius:4px 4px 0 0;inset:2px 0 10px}.qw-stop[data-sign=market] .qw-stop__sign:after{background:#c9922a;height:8px;bottom:2px;left:3px;right:3px}.qw-stop[data-sign=tree] .qw-stop__sign:before{background:#4f9a52;border-radius:50%;height:16px;top:0;left:2px;right:2px}.qw-stop[data-sign=tree] .qw-stop__sign:after{background:#8a6a4a;width:4px;height:8px;bottom:0;left:9px}.qw-stop[data-sign=ferry] .qw-stop__sign:before{background:#2f8fb0;border-radius:0 0 10px 10px;height:7px;bottom:4px;left:0;right:0}.qw-stop[data-sign=ferry] .qw-stop__sign:after{background:#fff;border:1.5px solid #2f8fb0;width:8px;height:7px;bottom:11px;left:7px}.qw-stop[data-sign=bakery] .qw-stop__sign:before{background:#e0a85a;border-radius:50% 50% 40% 40%;inset:5px 1px 3px;box-shadow:inset 0 -3px #b07a3a}.qw-stop[data-sign=statue] .qw-stop__sign:before{background:#7a7a7a;border-radius:50%;width:8px;height:8px;top:0;left:7px}.qw-stop[data-sign=statue] .qw-stop__sign:after{clip-path:polygon(20% 0,80% 0,100% 100%,0 100%);background:#7a7a7a;width:14px;height:13px;top:9px;left:4px}.qw-stop[data-sign=museum] .qw-stop__sign:before{clip-path:polygon(50% 0,100% 30%,100% 100%,0 100%,0 30%);background:repeating-linear-gradient(90deg,#7a6fc4 0 3px,#0000 3px 6px);inset:0 0 4px}.qw-stop[data-sign=museum] .qw-stop__sign:after{background:#7a6fc4;height:4px;bottom:0;left:0;right:0}.qw-stop[data-sign=tram] .qw-stop__sign:before{background:#b0476f;border-radius:5px;inset:4px 1px;box-shadow:inset 4px 3px 0 -1px #fff,inset -4px 3px 0 -1px #fff}.qw-stop[data-sign=garden] .qw-stop__sign:before{background:#e0574f;border-radius:50%;width:9px;height:9px;top:3px;left:1px;box-shadow:10px 3px #f2c14e,4px 9px #c96fa0}.qw-stop[data-sign=kiosk] .qw-stop__sign:before{clip-path:polygon(0 30%,50% 0,100% 30%,90% 30%,90% 100%,10% 100%,10% 30%);background:#2aa39a;inset:2px 2px 0}.qw-actions{grid-template-columns:1fr 1.5fr;gap:8px;display:grid}.qw-btn{border:1.5px solid var(--qw-line);background:var(--qw-paper-2);min-height:44px;color:var(--qw-ink-text);font:700 calc(.88rem * var(--pk-text-scale,1)) / 1.1 var(--qw-sans);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:6px 14px;display:inline-flex}.qw-btn:disabled{opacity:.5;cursor:default}.qw-btn--check,.qw-btn--on{background:var(--qw-ink);color:#fff;text-shadow:0 1px #00000040;border-color:#0000}.qw-btn--check{background:#a8452a}.qw-status{min-height:1.3em;font:600 calc(.8rem * var(--pk-text-scale,1)) / 1.3 var(--qw-sans);text-align:center;color:var(--qw-dim);margin:0}.qw-status[data-tone=good]{color:var(--qw-good)}.qw-status[data-tone=bad]{color:var(--qw-bad)}.qw-status[data-tone=note]{color:var(--qw-note)}.qw-card{z-index:5;left:50%;top:calc(var(--qw-top) + 50% - var(--qw-top) / 2);width:min(100% - 20px,36rem);max-height:calc(100% - var(--qw-top) - 12px);border:1.5px solid var(--qw-line);background:var(--qw-paper);text-align:center;border-radius:6px;padding:14px 16px 16px;position:absolute;overflow-y:auto;transform:translate(-50%,-50%)rotate(-.4deg);box-shadow:4px 6px #5a463240,0 18px 40px #3c281440}.qw-card[hidden]{display:none}.qw-card__title{font:700 calc(clamp(1.15rem, 4.2cqmin, 1.6rem) * var(--pk-text-scale,1)) / 1.15 var(--qw-hand);color:#a8452a;margin:0 0 4px}.qw-card__line,.qw-card__points{font:500 calc(.88rem * var(--pk-text-scale,1)) / 1.4 var(--qw-sans);color:var(--qw-ink-text);margin:4px 0}.qw-card__points{font-weight:700}.qw-stopcard[data-result=stamp] .qw-card__title{color:var(--qw-good)}.qw-stopcard[data-result=lost] .qw-card__title{color:var(--qw-bad)}.qw-btn--on{min-width:12rem;margin-top:8px}.qw-map__grid{gap:6px;margin-top:8px;display:grid}.qw-map__row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.qw-map__row--end{grid-template-columns:1fr}.qw-spot{min-height:34px;font:600 calc(.7rem * var(--pk-text-scale,1)) / 1.2 var(--qw-sans);color:var(--qw-dim);background:#f6ead299;border:1.5px dashed #5a46324d;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;padding:3px 6px;display:flex}.qw-map__row[data-state=ahead] .qw-spot{opacity:.6}.qw-spot[data-taken=true]{border-style:solid;border-color:var(--qw-ink);color:var(--qw-ink-text);background:#fff}.qw-spot[data-taken=false]{opacity:.45}.qw-spot[data-result=stamp]:after{content:"● stamped";color:var(--qw-good);font-weight:800}.qw-spot[data-kind=cafe]{border-radius:999px}button.qw-spot{border:2px solid var(--qw-ink);min-height:62px;color:var(--qw-ink-text);cursor:pointer;background:#fff}button.qw-spot[data-kind=detour]{box-shadow:3px 3px 0 var(--qw-ink)}button.qw-spot:hover{background:#fff3dc}.qw-spot__name{font:800 calc(.86rem * var(--pk-text-scale,1)) / 1.2 var(--qw-sans);color:var(--qw-ink)}.qw-spot__kind{font:700 calc(.68rem * var(--pk-text-scale,1)) / 1.2 var(--qw-sans);color:var(--qw-dim)}.qw-spot--office{border-color:#7a5a3a}.qw-banner{z-index:6;left:50%;top:calc(var(--qw-top) + 8px);background:var(--qw-paper);font:700 calc(clamp(1rem, 4cqmin, 1.5rem) * var(--pk-text-scale,1)) / 1.2 var(--qw-hand);color:#a8452a;opacity:0;pointer-events:none;border:2px solid #a8452a;border-radius:6px;margin:0;padding:6px 18px;transition:opacity .3s;position:absolute;transform:translate(-50%)rotate(-2deg)}.qw-banner[data-on=true]{opacity:1}@container qw (height<=38rem){.qw-head{padding:4px 10px}.qw-receipts{max-height:32cqh;padding:5px 10px}.qw-receipts__title,.qw-route__title,.qw-receipt__from{display:none}.qw-route{padding:6px 8px}.qw-route__list{grid-auto-rows:minmax(40px,1fr)}.qw-stop{min-height:40px}button.qw-spot{min-height:52px}}@container qw (height<=26rem){.qw-work{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.qw-receipts{max-height:none}}.qw[data-cover] .qw-status{visibility:hidden}@media (prefers-reduced-motion:reduce){.qw-stop,.qw-banner{transition:none}}
