:root{--bg: #0b0b0c;--surface: #141416;--surface-2: #1b1b1e;--line: #28282d;--line-strong: #38383f;--text: #f4f3ef;--text-2: #a4a4ac;--text-3: #70707a;--accent: #ff5a1f;--accent-soft: rgba(255, 90, 31, .12);--ok: #63bf7c;--bad: #e5484d;--mono: ui-monospace, "SF Mono", "Cascadia Mono", "JetBrains Mono", Menlo, Consolas, monospace;--sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Inter, Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15.5px;line-height:1.55;padding-bottom:calc(64px + env(safe-area-inset-bottom));-webkit-font-smoothing:antialiased}.wrap{max-width:860px;margin:0 auto;padding:20px 16px 40px}a{color:inherit}header.topbar{position:sticky;top:0;z-index:50;background:#0b0b0ce0;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.topbar-inner{max-width:860px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:baseline;gap:10px;min-width:0}.brand-mark{font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:.04em}.brand-mark em{font-style:normal;color:var(--accent)}.topbar h1{font-size:15px;margin:0;font-weight:650;letter-spacing:-.01em;white-space:nowrap}.topbar .sub{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin:1px 0 0;white-space:nowrap}.day-badge{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.1em;color:var(--accent);border:1px solid var(--line-strong);padding:6px 10px;border-radius:6px;white-space:nowrap;flex-shrink:0}nav.bottom{position:fixed;bottom:0;left:0;right:0;z-index:60;background:#0f0f11f5;backdrop-filter:blur(10px);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(6,1fr);padding:0 4px env(safe-area-inset-bottom)}nav.bottom a{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 0 8px;text-decoration:none;color:var(--text-3);font-size:10px;font-weight:600;letter-spacing:.02em}nav.bottom a .ic{width:20px;height:20px;display:block}nav.bottom a .ic svg{width:100%;height:100%;display:block}nav.bottom a.active{color:var(--text)}nav.bottom a.active:before{content:"";position:absolute;top:-1px;left:22%;right:22%;height:2px;background:var(--accent);border-radius:0 0 2px 2px}nav.bottom a.active .ic{color:var(--accent)}.sec-head{margin:30px 0 12px;padding-top:14px;border-top:1px solid var(--line)}.sec-head:first-child{margin-top:0;padding-top:0;border-top:0}.kicker{display:block;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);margin-bottom:4px}h2.section,.sec-head h2{font-size:19px;font-weight:700;letter-spacing:-.02em;margin:0}h3.sub{font-size:14.5px;font-weight:650;margin:16px 0 6px;letter-spacing:-.01em}p{margin:8px 0}.muted{color:var(--text-2)}.small{font-size:13px}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin:10px 0}.card.soft{background:transparent}.card.accent-line{border-left:2px solid var(--accent)}.chip{display:inline-block;padding:3px 8px;border-radius:5px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.02em;background:var(--surface-2);border:1px solid var(--line);color:var(--text-2);white-space:nowrap}.chip.booth{background:var(--accent-soft);border-color:#ff5a1f59;color:var(--accent);font-size:12px;white-space:normal;overflow-wrap:anywhere}.chip.hall{background:transparent;color:var(--text-2)}.chip.tag{background:transparent;font-weight:500}.chip.solid{background:var(--accent);border-color:var(--accent);color:#141416}.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:10px 0;border:1px solid var(--line);border-radius:10px}.tbl-wrap table.tbl{margin:0;min-width:560px}table.tbl{width:100%;border-collapse:collapse;font-size:13px}table.tbl th,table.tbl td{border-bottom:1px solid var(--line);padding:9px 11px;text-align:left;vertical-align:top}table.tbl tr:last-child td{border-bottom:0}table.tbl th{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);background:var(--surface-2)}.quote{border-left:2px solid var(--accent);background:var(--surface);padding:12px 14px;border-radius:0 8px 8px 0;margin:12px 0;color:var(--text);font-style:normal}.ok{color:var(--ok);font-weight:650}.no{color:var(--bad);font-weight:650}ul.clean{margin:6px 0;padding-left:18px}ul.clean li{margin:6px 0}ul.clean li::marker{color:var(--text-3)}ol.steps{margin:0;padding:0;list-style:none;counter-reset:step}ol.steps>li{counter-increment:step;position:relative;padding:10px 0 10px 40px;margin:0;border-bottom:1px solid var(--line)}ol.steps>li:last-child{border-bottom:0}ol.steps>li:before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:11px;font-family:var(--mono);font-size:12px;font-weight:700;color:var(--accent)}.mission-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin:32px 0 12px}.mission-head .kicker{margin-bottom:3px}.mission-head h2{margin:0;font-size:19px;font-weight:700;letter-spacing:-.02em}.count-pill{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--text-2);border:1px solid var(--line-strong);padding:5px 10px;border-radius:6px;white-space:nowrap}.target-card{display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--line);border-radius:10px;margin:8px 0;overflow:hidden}.tc-rail{flex-shrink:0;width:54px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;padding:14px 0}.prio{font-family:var(--mono);font-size:12px;font-weight:700;width:26px;height:26px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-strong);color:var(--text-3);background:var(--surface-2)}.prio-1{background:var(--accent);border-color:var(--accent);color:#141416}input.visit{width:26px;height:26px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.t-body{flex:1;min-width:0;padding:12px 14px}.target-card .t-top{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:6px}.target-card .t-name{font-weight:650;font-size:15px;letter-spacing:-.01em}.target-card .t-what{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-2)}.target-card .t-ask{margin-top:10px;padding-top:9px;border-top:1px solid var(--line);font-size:12.5px;color:var(--text-2)}.target-card .t-ask b{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);display:block;margin-bottom:2px}.target-card.done .t-body{opacity:.45}.target-card.done .t-name{text-decoration:line-through}.route-step{display:flex;gap:14px;padding:11px 0;border-bottom:1px solid var(--line)}.route-step:last-child{border-bottom:0}.route-step .time{min-width:96px;font-family:var(--mono);font-size:11.5px;font-weight:600;color:var(--accent);padding-top:2px;white-space:nowrap}.route-step .rs-body{flex:1;min-width:0}.searchbar{position:sticky;top:62px;z-index:40;background:var(--bg);padding:12px 0 8px}.searchbar input[type=search]{width:100%;padding:12px 14px;font-size:16px;background:var(--surface);color:var(--text);border:1px solid var(--line-strong);border-radius:8px;outline:none}.searchbar input[type=search]:focus{border-color:var(--accent)}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;align-items:center}.filter-row select{background:var(--surface);color:var(--text);border:1px solid var(--line-strong);border-radius:8px;padding:9px 10px;font-size:14px;max-width:46%;font-family:var(--mono)}.filter-row .result-count{margin-left:auto}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.chips button{background:transparent;color:var(--text-2);border:1px solid var(--line-strong);border-radius:6px;padding:8px 13px;font-size:12.5px;font-weight:600;cursor:pointer;font-family:var(--mono)}.chips button.on{background:var(--accent);color:#141416;border-color:var(--accent)}.ex-row{display:block;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin:8px 0}.ex-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:7px}.ex-row strong{font-size:14.5px;letter-spacing:-.01em}.ex-row .desc{color:var(--text-2);font-size:12.5px;margin-top:4px;overflow-wrap:anywhere}.cat-link{font-size:12px;white-space:nowrap;color:var(--accent);font-family:var(--mono);flex-shrink:0}.maps figure{margin:16px 0}.maps img{width:100%;height:auto;border-radius:10px;border:1px solid var(--line);display:block}.maps figcaption{font-size:13px;color:var(--text-2);padding:9px 2px 0}.maps figcaption b{color:var(--text);display:block;margin-bottom:2px}@media(max-width:420px){.wrap{padding:16px 12px 32px}h2.section,.sec-head h2{font-size:17.5px}.target-card .t-name{font-size:14px}table.tbl{font-size:12.5px}table.tbl th,table.tbl td{padding:8px}.route-step .time{min-width:88px}.topbar h1{font-size:14px}.topbar .sub{display:none}.day-badge{font-size:9.5px;padding:5px 8px}}@media print{nav.bottom,header.topbar,.no-print{display:none!important}body{background:#fff;color:#111;padding:0}.card,table.tbl th,table.tbl td{background:#fff;border-color:#bbb}.card{color:#111}.kicker,table.tbl th,.target-card .t-ask b{color:#555}}
