/* 機場選擇器；沿用 base.html 的設計 token */
.ap-wrap{position:relative;width:100%}
.ap-wrap > input{width:100%}
.ap-list{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px;list-style:none;
  max-height:min(320px,60vh);overflow-y:auto;background:var(--color-surface,#fff);color:var(--color-text,#18202c);
  border:1px solid var(--color-border,#d5dae1);border-radius:var(--r-md,10px);box-shadow:var(--shadow-3,0 8px 24px rgba(0,0,0,.18))}
.ap-list li{display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:var(--r-sm,6px);cursor:pointer;min-height:44px}
.ap-list li:hover,.ap-list li[aria-selected="true"]{background:var(--color-surface-2,#eef1f5)}
.ap-code{flex:none;font-weight:800;letter-spacing:.04em;font-variant-numeric:tabular-nums;min-width:3.2em;
  color:var(--color-primary,#1f4fd1)}
.ap-text{display:flex;flex-direction:column;min-width:0}
.ap-text b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ap-text small{color:var(--color-text-muted,#556070);font-size:var(--fs-xs,12px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ap-nearby{margin-top:6px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.ap-nearby__btn{min-height:36px}
.ap-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:var(--fs-sm,14px)}
.ap-msg{color:var(--color-text-muted,#556070);font-size:var(--fs-xs,12px)}
.ap-chip{font:inherit;font-size:var(--fs-sm,14px);padding:4px 10px;min-height:36px;border-radius:999px;cursor:pointer;
  background:var(--color-surface,#fff);color:var(--color-text,#18202c);border:1px solid var(--color-border,#d5dae1)}
.ap-chip small{color:var(--color-text-muted,#556070)}
.ap-chip:hover{border-color:var(--color-primary,#1f4fd1)}
.ap-chip.is-added{background:var(--color-primary,#1f4fd1);color:#fff;border-color:var(--color-primary,#1f4fd1)}
.ap-chip.is-added small{color:inherit;opacity:.85}
/* landing hero 有 overflow:hidden，選單打開時放行，避免被切掉 */
.hero-dark:has(.ap-list:not([hidden])),.card:has(.ap-list:not([hidden])){overflow:visible}
