:root{color-scheme:light;--paper:#faf9f6;--ink:#182c31;--muted:#53676b;--focus:#254bf4;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR","Noto Sans JP",Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit}select,button{font:inherit}a,button,input,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pocket{width:min(100%,540px);margin:auto;padding:18px 20px 14px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}.wordmark{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;white-space:nowrap;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}.brand-symbol{display:block;flex-shrink:0;width:40px;height:40px}.brand-name{display:flex;flex-direction:column;gap:3px}.brand-here{font-size:1.375rem;font-weight:760;letter-spacing:-.055em;line-height:1}.brand-korea{font-size:.6875rem;font-weight:620;letter-spacing:.035em;line-height:1.15}.language-picker{min-width:0;border:1px solid #d9ddda;border-radius:22px}.language-picker select{max-width:min(160px,100%)}select{max-width:160px;min-height:42px;border:0;background:transparent;color:var(--ink);padding:7px 12px;font-size:.8125rem;cursor:pointer;border-radius:22px}
h1{margin:19px 0 8px;font-size:clamp(1.45rem,5.8vw,1.85rem);font-weight:730;letter-spacing:-.045em;line-height:1.16;text-wrap:balance}.essentials{display:grid;gap:8px}.card{--tone:#e8eef6;--edge:#d0dce6;background:var(--tone);border:1px solid var(--edge);border-radius:13px}.translate-card{--tone:#efedf6;--edge:#ddd9e9}.help-card{--tone:#e8efdf;--edge:#d2dec4}.essential{display:grid;grid-template-columns:23px minmax(0,1fr);gap:12px;padding:13px 15px;text-decoration:none;border-radius:12px;transition:background .15s}.task-number{font-size:.69rem;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:.04em;line-height:17px;color:var(--muted)}.destination{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.75rem;line-height:17px;color:var(--muted)}.arrow{font-size:1.1rem;line-height:14px;color:var(--ink)}.link-content h2{margin:4px 0 3px;font-size:1.125rem;letter-spacing:-.025em;line-height:1.2;font-weight:720}.link-content p{margin:0;font-size:.8125rem;line-height:1.4}.link-content .detail{color:var(--muted);font-size:.75rem;line-height:1.4;margin-top:2px}
.tips{margin-top:5px}.tips summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;gap:10px;cursor:pointer;list-style:none;font-size:.8125rem;color:var(--muted);padding:0 2px}.tips summary::-webkit-details-marker{display:none}.expand-mark{font-size:1.15rem;font-weight:300;transition:transform .15s}.tips[open] .expand-mark{transform:rotate(45deg)}.tips-content{padding:0 13px 8px;border:1px solid #dce1da;border-radius:12px}.tip{padding:14px 0 8px}.tip+.tip{border-top:1px solid #dce1da}.tip h3{margin:0 0 5px;font-size:.875rem;line-height:1.35}.tip p{margin:0;font-size:.8125rem;line-height:1.5;color:var(--muted)}.store-links{display:flex;gap:22px;flex-wrap:wrap}.store-links a,.tip-link{display:inline-flex;align-items:center;min-height:44px;font-size:.8125rem;text-underline-offset:3px;line-height:1.5}.tip-link{padding:4px 0}
footer{border-top:1px solid #dce1da;padding-top:3px;color:var(--muted)}.footer-line{display:flex;align-items:center;justify-content:space-between;gap:5px 12px;font-size:.6875rem;flex-wrap:wrap}.origin-link{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:3px;font-size:.75rem}footer p{font-size:.625rem;line-height:1.4;margin:0;max-width:430px}
@media(min-height:760px){.pocket{padding-top:clamp(20px,5svh,48px)}h1{margin-top:24px;margin-bottom:8px}.essential{padding-top:16px;padding-bottom:16px}}
@media(max-width:380px),(max-height:680px){.pocket{padding:10px 14px 10px}h1{margin:13px 0 6px;font-size:1.45rem}.essential{padding:11px 12px;gap:9px;grid-template-columns:20px minmax(0,1fr)}.essentials{gap:7px}.link-content h2{margin-top:3px}.tips{margin-top:2px}}
@media(hover:hover){.essential:hover{background:#ffffff50}.store-links a:hover,.origin-link:hover,.tip-link:hover{color:var(--focus)}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Thai marks need natural spacing and more vertical room. */
:lang(th){font-family:"Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif;letter-spacing:normal}html:lang(th) h1,html:lang(th) h2,html:lang(th) h3{letter-spacing:normal;line-height:1.4}

.connection-note{margin:14px 0 0;font-size:.75rem;line-height:1.5;color:var(--muted)}.tip p+p{margin-top:7px}

.bookmark-note{margin:0 0 14px;font-size:.8125rem;line-height:1.45;color:var(--muted);overflow-wrap:anywhere}

.booking-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.booking-link{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:69px;padding:12px;border:1px solid #d9dfd5;border-radius:12px;text-decoration:none;background:#f0f2eb}.booking-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;font-size:.875rem;line-height:1.3;font-weight:680}.booking-service{font-size:.6875rem;line-height:1.4;color:var(--muted);overflow-wrap:anywhere}.official-links{display:grid;margin-top:5px}.official-links a{border-bottom:1px solid #e2e5de}.arrival-note{margin:9px 0 5px;font-size:.75rem;line-height:1.5;color:var(--muted)}.emergency-links{display:flex;flex-wrap:wrap;gap:2px 18px}.emergency-links a{display:inline-flex;align-items:center;min-height:44px;font-size:.8125rem;font-weight:650;text-underline-offset:3px}.chat-link{display:flex;width:fit-content;font-weight:650}.tips+.tips{margin-top:0}
@media(hover:hover){.booking-link:hover{background:#e7ecdf}.emergency-links a:hover{color:var(--focus)}}

.food-map-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:10px 0 4px}.food-map-link{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;min-height:48px;padding:10px;border:1px solid #dce1da;border-radius:8px;text-decoration:none;font-size:.8125rem;line-height:1.45;background:#ffffff60}.food-map-link span:first-child{overflow-wrap:anywhere}.food-map-link span:last-child{flex-shrink:0;color:var(--muted)}
@media(hover:hover){.food-map-link:hover{background:#e7ecdf}}
@media(max-width:340px){.food-map-links{grid-template-columns:minmax(0,1fr)}}

.usage-options{margin-top:4px;font-size:.8125rem;color:var(--muted)}.usage-options summary{cursor:pointer;width:fit-content;min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:3px}.usage-options p,.stats-prompt p{font-size:.8125rem;line-height:1.55;margin:8px 0;max-width:none}.usage-options label{display:flex;align-items:center;gap:9px;min-height:44px;line-height:1.5}.usage-options input{width:18px;height:18px;flex-shrink:0;accent-color:var(--focus)}
.stats-prompt{margin-top:12px;padding:10px 12px;border:1px solid #dce1da;border-radius:12px}.stats-prompt p{margin:0 0 8px}.stats-actions{display:flex;flex-wrap:wrap;gap:8px}.stats-actions button{flex:1 1 150px;min-height:44px;min-width:0;border:1px solid #bfc8c4;border-radius:8px;background:transparent;color:var(--ink);padding:9px 12px;cursor:pointer;font-size:.8125rem;line-height:1.4;overflow-wrap:anywhere}.storage-clear{min-height:44px;border:0;background:transparent;color:inherit;padding:8px 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px;font-size:.8125rem;line-height:1.4}.storage-clear:disabled{opacity:.5;cursor:default}#stats-status{line-height:1.5}#stats-return-controls{margin:12px 0;padding:8px 0;border-block:1px solid #dce1da}
@media(hover:hover){.stats-actions button:hover{background:#e7ecdf}}

.explore-link{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px;margin:12px 0 6px;border:1px solid #bac8ca;border-radius:12px;text-decoration:none;background:#e9eff0}.explore-link strong{display:block;font-size:.9375rem;line-height:1.35}.explore-link small{display:block;margin-top:5px;font-size:.75rem;line-height:1.5;color:var(--muted)}.explore-link>span:last-child{font-size:1.25rem}@media(hover:hover){.explore-link:hover{background:#dce7e9}}
