/* The airport card (apcard.js, designer memo 2026-10-26 P1-P4): fixed head, five tabs, fixed footer; tokens only */
.skypop.apcard{max-width:min(392px,calc(100vw - 24px))!important}
.skypop.apcard .maplibregl-popup-content{padding:0;width:min(392px,calc(100vw - 24px));background:var(--surface);border-radius:12px;overflow:hidden}
.apc-pop{display:flex;height:min(900px,calc(100vh - 76px))}
.apc{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;color:var(--text-2)}   /* the window minus the top bar and 24 px, at most 900: it never grows with the tab */
.aphead{flex:none;display:flex;flex-direction:column;gap:10px;padding:0 16px 12px}
.apt-top{display:flex;justify-content:space-between;align-items:center;margin:0 -16px;padding:0 8px 0 16px;height:46px;border-bottom:1px solid var(--line);font:400 11.5px var(--sans);color:var(--text-3)}
.apt-top .x{width:36px;height:36px;background:none;border:0;color:var(--text-3);font:400 20px var(--sans);cursor:pointer}
.apt-id{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:2px}
.apt-code{display:flex;align-items:baseline;gap:8px;min-width:0}
.apt-code b{font:600 24px var(--mono);color:var(--text)}.apt-code span{font:400 15px var(--mono);color:var(--text-3)}
.apt-name{font:500 13.5px var(--sans);color:var(--text);margin-top:-6px}
.apt-sub{font:400 12.5px var(--sans);color:var(--text-3);margin-top:-8px}
.apt-act{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.apt-act .u-btn{height:36px;display:flex;align-items:center;justify-content:center;text-decoration:none;font:500 13px var(--sans)}
.apt-act .u-btn.twr{border-color:var(--select);color:var(--select)}
.apt-act [data-apmore][aria-expanded=true]{border-color:var(--pressed);background:var(--surface-hi)}
.cnum.apt .v.na{color:var(--text-4)}
.cnum.apt>div{padding:8px 8px}
.cnum.apt .v{font-size:16px;letter-spacing:-.02em;text-overflow:clip}
.cnum.apt .u{white-space:normal;line-height:1.3;min-height:2.6em}
.aptabs{flex:none;display:flex;justify-content:space-between;height:48px;margin:0;padding:0 8px;gap:0;overflow:visible;border-bottom:1px solid var(--line)}   /* wide and tall enough that it never scrolls */
.aptabs [role=tab]{flex:1 1 auto;min-width:0;white-space:nowrap;padding:0 4px;height:47px;margin:0}
.aptabs .n{font-size:11px;color:var(--text-4);margin-left:2px}
.apbody{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:12px 16px;display:flex;flex-direction:column;gap:10px}
.apbody .cgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 12px}
.apbody .cgrid .k{font:500 11.5px var(--sans);color:var(--text-4)}
.apbody .cgrid .v{font:600 13.5px var(--mono);color:var(--text);overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}
.apraw{margin:0;padding:10px 12px;background:var(--surface-hi);border-radius:var(--r-ctl);font:400 12px/1.5 var(--mono);color:var(--text-2);white-space:pre-wrap;word-break:break-word}
.apbody .cnote{margin:0;font:400 12px/1.5 var(--sans);color:var(--text-3)}
.apbody .cnote a,.apbody .aplink{color:inherit;text-decoration:underline;text-underline-offset:2px}
.aplink{background:none;border:0;padding:0;font:400 12px var(--sans);color:var(--text-3);cursor:pointer}
.apnext{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:10px;font:600 13px var(--sans);color:var(--text)}
.apnext span{font:400 12.5px var(--mono);color:var(--text-2)}
.aptaf-h,.aptaf-f,.aparh,.apnc{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font:400 12px var(--sans);color:var(--text-3)}
.aptaf-h .mono{font-size:11.5px}
.aptt{display:flex;flex-direction:column}
.aptr{display:grid;grid-template-columns:54px 88px minmax(0,1fr);gap:2px 8px;padding:7px 0;border-bottom:1px solid var(--line)}
.aptr b{font:600 11px var(--mono);color:var(--text-2)}.aptr b.tmp{color:var(--select)}
.aptr span{font:400 11px var(--mono);color:var(--text-3)}
.aptr div{grid-column:3;grid-row:1;font:400 12.5px/1.4 var(--sans);color:var(--text)}
.aptr b,.aptr span{grid-row:1}.aptr b{grid-column:1}.aptr span{grid-column:2}
.apsnow{display:flex;align-items:center;gap:10px;font:500 12.5px var(--mono);color:var(--text)}
.apsnow .u-chip-s{font:500 11px var(--mono);padding:3px 8px;border:1px solid var(--line-strong);border-radius:9999px}
.apnl{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.apn{border-bottom:1px solid var(--line)}
.apn summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:38px;cursor:pointer;list-style:none}
.apn summary::-webkit-details-marker{display:none}
.apn summary b{font:600 11.5px var(--mono);color:var(--select)}
.apn summary span{font:400 12.5px var(--sans);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.apn summary i{font-style:normal;color:var(--text-3);transition:transform .15s}
.apn[open] summary i{transform:rotate(90deg)}
.apn.off summary b{color:var(--text-3)}
.apn-b{padding:0 0 10px}.apn-m{font-size:11.5px;color:var(--text-3)}
.apn-b p{margin:6px 0 0;font:400 12.5px/1.5 var(--sans);color:var(--text-2)}
.apx .pk{font:500 11px var(--sans);color:var(--text-4);margin-top:8px}.apx .ps{font:400 12.5px var(--sans);color:var(--text-2);margin-top:4px}
.apx .ntl{max-height:none;overflow:visible}
.aparh b{font:600 13px var(--sans);color:var(--text)}.aparh .mono{font-size:12px}
.apars{display:flex;flex-direction:column}
.apar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:9px 0;background:none;border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;color:inherit;font:inherit}
.apar .id b{font:600 13.5px var(--mono);color:var(--text)}.apar .ty{font:400 12px var(--mono);color:var(--text-3);margin-left:8px}
.apar .fr{grid-column:1;font:400 12px var(--sans);color:var(--text-3)}
.apar .tm{grid-column:2;grid-row:1/3;text-align:right;font:600 14px var(--mono);color:var(--text);display:flex;flex-direction:column;align-items:flex-end;justify-content:center}
.apar .tm small{font:400 11px var(--mono);color:var(--text-3)}.apar .tm.na{color:var(--text-4)}.apar .tm.na small{max-width:60px;white-space:normal;text-align:right}
.aprf{display:flex;flex-direction:column}
.aprf>div{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--line)}
.aprf .s{font:400 12px var(--mono);color:var(--text-3)}.aprf .n{font:400 12.5px var(--sans);color:var(--text)}.aprf b{font:600 14px var(--mono);color:var(--text);text-align:right}
.aplive{align-self:flex-start;display:inline-flex;align-items:center;text-decoration:none}
.apfoot{flex:none;display:flex;justify-content:space-between;gap:10px;padding:10px 16px;border-top:1px solid var(--line);font:400 11px var(--sans);color:var(--text-3)}
.apc .wxold{color:var(--select)}
@media (max-width:699px){
  .apc-pop{height:min(900px,calc(100vh - 140px))}
  .apt-act .u-btn{height:44px}.aptabs [role=tab]{height:48px}.apt-top .x{width:44px;height:44px}
}
.aplink{white-space:nowrap}.aptaf-f span{text-align:right}
