/* Official 2026 poster artwork and a blue/yellow exhibition palette. */
:root{color:#172f50;background:#f1f6fc;--blue:#006da8;--navy:#173862;--yellow:#ffbd3e}
header{border-bottom:3px solid var(--yellow);height:80px;background:white}.header-logo{width:180px;height:auto;display:block}
header .lang{border-color:#cfdeeb;color:#294e73}.lang[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}
button{border-color:#c8d8e8}button:hover{background:#eaf4ff}button:focus-visible,summary:focus-visible{outline-color:#0076b6}
h1{color:var(--navy)}h1 span,.help,.intro,.selected,details,footer,.choice small{color:#50647c}
#page-language{max-width:980px;display:grid;grid-template-columns:1fr 1fr;margin:36px auto;padding:0;background:white;border:1px solid #d4e2ef;border-radius:20px;overflow:hidden;box-shadow:0 16px 44px #1738620b}
.poster-art{min-height:510px;background:#193b6c url('assets/poster-tractor.webp') center center/cover no-repeat}
.welcome-content{padding:38px 30px;align-self:center}.welcome-logo{display:block;width:100%;max-width:360px;height:auto;margin:0 auto 12px}.event-date{font-size:16px;font-weight:700;color:#334e72;text-align:center;line-height:1.7;margin:12px 0 28px}.event-date span{display:block;font-size:14px;letter-spacing:1.2px;color:#66768b}
#language-title{font-size:25px}#language-title span{font-size:19px;font-weight:400}.choices{gap:12px}.choice{border:1px solid #cadae8;border-radius:12px;color:var(--navy);background:white;position:relative}.choice:hover{border-color:var(--blue);background:#eff7ff}.choice small{font-size:16px}
#page-language .choices{grid-template-columns:1fr 1fr;margin-top:22px}#page-language .choice{padding:18px;min-height:94px;gap:6px;font-size:22px}#page-language .choice:first-child{background:var(--blue);border-color:var(--blue);color:white}#page-language .choice:first-child small{color:#e1f4ff}#page-language .choice:first-child:hover{background:#005c90}
#page-feature{padding-top:48px}.feature{padding:24px 26px 24px 30px;border-left:5px solid var(--blue);box-shadow:0 4px 14px #17386205}.feature[data-mode=nearby]{border-left-color:var(--yellow)}.feature[data-mode=all]{border-left-color:#40aadd}
.back,.secondary{color:var(--blue);border-color:#b7cfe3}.primary{background:var(--blue)}.primary:hover{background:#005984}.primary:disabled{background:#dce5ef;color:#67778b}
input{border-color:#adc4da;color:#173862}input:focus{outline-color:#bedffc;border-color:var(--blue)}.results{border-color:#c2d5e7;box-shadow:0 8px 24px #17386220}.results li[aria-selected=true],.results li:hover{background:#eaf4ff}.results small{color:#526a83}
.sample-note{background:#fff8e8;border-left-color:var(--yellow);color:#745321}.map-panel.expanded{background:#f1f6fc}#map-wrap{border-color:#c4d5e5}.booth-label{fill:#29415b}.booth-rect{fill:#edf2f7;stroke:#aabccd}.booth-start{fill:#ceeaff;stroke:#0076b6}.route{stroke:#0076b6}.line{border-top-color:#0076b6}.green{background:#0076b6}dialog{border-color:#b7cde1}dialog::backdrop{background:#122b4eb3}
@media(max-width:800px){header{height:72px}.header-logo{width:157px}#page-language{display:block;margin:18px 16px;border-radius:16px}.poster-art{min-height:0;height:clamp(155px,25dvh,225px);background-position:center 43%}.welcome-content{padding:18px 22px 24px}.welcome-logo{max-width:245px}.event-date{font-size:14px;margin:6px 0 18px}.event-date span{display:inline;margin-left:8px;font-size:12px;letter-spacing:.3px}#language-title{font-size:23px}#language-title span{font-size:18px}#page-language .choices{margin-top:18px}#page-language .choice{padding:15px;min-height:86px;font-size:21px}#page-feature{padding-top:32px}}
@media(min-width:801px){#page-language .poster-art{border-right:4px solid var(--yellow)}}

/* Keep the product suggestions above the submit button in normal flow. */
#product-list{position:static;margin-top:6px}


/* Strong product matches override the base booth fill. */
.booth-rect.booth-match{fill:#ffaad0;stroke:#b90952;stroke-width:.85}.matched-booth .booth-label{fill:#651235;font-weight:700}.match{background:#cf1763}.match-markers [role=button]{cursor:pointer}
.matched-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.company-result{display:flex;flex-direction:column;gap:6px;border-left:5px solid #cf1763;padding:16px 18px}.company-ko{font-weight:700;font-size:18px}.company-en{font-size:14px;color:#52647b;overflow-wrap:anywhere}.company-location{font-size:15px;color:#006da8;font-weight:700}.company-result:disabled{opacity:.65;border-left-color:#9aaabc}.chosen-destination{background:#e3f2ff;border-left:4px solid #0076b6;padding:16px;line-height:1.6;font-weight:700}.result-notes{display:none}
.company-marker{display:inline-grid;place-items:center;background:#cf1763;color:white;border-radius:50%;width:26px;height:26px;font-size:14px;font-weight:700}

.booth-rect.booth-end{fill:#ffe3cf;stroke:#df3c0b;stroke-width:2px;vector-effect:non-scaling-stroke}.booth-rect.booth-start{fill:#ceeaff;stroke:#0076b6;stroke-width:2px;vector-effect:non-scaling-stroke}
/* Screen-sized route details keep booth names readable at every zoom level. */
.route{stroke-width:3px;vector-effect:non-scaling-stroke;pointer-events:none}.route-halo{stroke-width:5px;vector-effect:non-scaling-stroke;pointer-events:none}.route-endpoint{stroke:white;stroke-width:2px;vector-effect:non-scaling-stroke;pointer-events:none}
.route-start-key{background:#0076b6}.route-end-key{background:#df3c0b}
.building-outline path{vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}.facility-label{font-weight:600}.facility-symbol{pointer-events:none}
