.xc-wrap{--xc-blue:#2169ED;--xc-line:#e6e9f0;--xc-ink:#1d2433;--xc-muted:#66707f;font-size:15px;color:var(--xc-ink);line-height:1.55;margin:8px 0 4px}
.xc-note{color:var(--xc-muted);font-size:13.5px;background:#f6f8fd;border:1px solid var(--xc-line);border-radius:10px;padding:10px 14px;margin:0 0 14px}
.xc-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.xc-tab{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--xc-line);border-radius:999px;padding:6px 13px;font-size:13px;color:var(--xc-ink);text-decoration:none;background:#fff;transition:.15s}
.xc-wrap .xc-tab:hover{border-color:var(--xc-blue);color:var(--xc-blue)}
.xc-badge,.xc-count{background:#eef2ff;color:var(--xc-blue);border-radius:999px;font-size:11.5px;font-weight:600;padding:1px 8px;min-width:20px;text-align:center}
.xc-sec{border:1px solid var(--xc-line);border-radius:12px;margin:0 0 12px;background:#fff;overflow:hidden}
.xc-sec[open]{box-shadow:0 1px 2px rgba(20,40,90,.04)}
.xc-sec-head{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;padding:13px 16px;font-weight:600;font-size:15px}
.xc-sec-head::-webkit-details-marker{display:none}
.xc-sec-head:hover{color:var(--xc-blue)}
.xc-table-scroll{overflow-x:auto;border-top:1px solid var(--xc-line)}
.xc-table{border-collapse:collapse;width:100%;min-width:520px;font-size:13.5px}
.xc-table th{text-align:left;background:#fafbfe;color:var(--xc-muted);font-weight:600;padding:9px 12px;white-space:nowrap;border-bottom:1px solid var(--xc-line)}
.xc-table td{padding:9px 12px;border-bottom:1px solid #f1f3f8;vertical-align:top}
.xc-table tbody tr:hover{background:#f8faff}
.xc-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;color:#445}
td[data-lc="current"]{color:#0a7d3c}
td[data-lc="develop"]{color:#2169ED}
td[data-lc="pilot"]{color:#7a4fd0}
td[data-lc="legacy"]{color:#9a6a00}
tr.xc-extra{display:none}
.xc-sec.xc-expanded tr.xc-extra{display:table-row}
.xc-more{display:block;margin:12px auto 4px;border:1px solid var(--xc-blue);background:#fff;color:var(--xc-blue);border-radius:999px;padding:8px 20px;font-size:13.5px;cursor:pointer}
.xc-more:hover{background:var(--xc-blue);color:#fff}
.xc-more.xc-hidden{display:none}
.xc-cta{margin:16px 0 0;padding:12px 16px;border-radius:10px;background:#f0f5ff;border:1px solid #d6e2ff;font-size:14px}
.xc-wrap .xc-cta a{color:var(--xc-blue);font-weight:600}
.xc-cta .xc-cta-hub{display:inline-block;margin-left:8px;white-space:nowrap}
@media(max-width:640px){.xc-cta .xc-cta-hub{display:block;margin:6px 0 0}}
.xc-hub{--xc-blue:#2169ED;color:var(--xc-ink);margin:8px 0 4px}
.xc-hub-gen{margin:0 0 26px}
.xc-hub-gen h2{font-size:21px;margin:0 0 14px;padding-left:12px;border-left:4px solid var(--xc-blue)}
.xc-hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.xc-hub-fam{border:1px solid var(--xc-line);border-radius:12px;background:#fff;padding:12px 14px}
.xc-hub-flabel{font-weight:700;font-size:13px;color:var(--xc-muted);text-transform:uppercase;letter-spacing:.03em;margin:0 0 9px}
.xc-hub-model{display:block;font-size:13.5px;padding:7px 10px;border-radius:8px;margin:0 0 5px;text-decoration:none;color:var(--xc-ink);line-height:1.35}
.xc-hub-model:last-child{margin-bottom:0}
a.xc-ready{background:#f0f5ff;border:1px solid #d6e2ff;transition:.15s}
a.xc-ready:hover{background:var(--xc-blue);color:#fff;border-color:var(--xc-blue)}
span.xc-soon{color:#9aa2b1;background:#f7f8fa}
.xc-hub-model em{font-style:normal;font-size:11px;color:#9aa2b1}
a.xc-ready:hover em{color:#dbe7ff}
@media(max-width:640px){.xc-hub-grid{grid-template-columns:1fr}}
.xc-hub-os{margin:8px 0 22px}
.xc-hub-os h2{font-size:20px;margin:0 0 13px;padding-left:12px;border-left:4px solid var(--xc-blue)}
.xc-hub-osgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.xc-hub-oslink{display:block;border:1px solid var(--xc-line);border-radius:10px;background:#fff;padding:11px 15px;font-size:13.5px;color:var(--xc-ink);text-decoration:none;transition:.15s}
.xc-hub-oslink:hover{border-color:var(--xc-blue);background:#f0f5ff;color:var(--xc-blue)}
@media(max-width:640px){.xc-hub-osgrid{grid-template-columns:1fr}}

.xc-faq{margin:22px 0 4px}
.xc-faq h2{font-size:19px;margin:0 0 12px}
.xc-q{border:1px solid var(--xc-line);border-radius:10px;margin:0 0 8px;background:#fff;padding:0 14px}
.xc-q summary{cursor:pointer;font-weight:600;padding:11px 0;list-style:none}
.xc-q summary::-webkit-details-marker{display:none}
.xc-q[open] summary{color:var(--xc-blue)}
.xc-q p{margin:0;padding:0 0 12px;color:#39415}
@media(max-width:640px){.xc-wrap{font-size:14px}.xc-table{font-size:12.5px}}

/* ---- variants for layout rotation ---- */
.xc-title{font-size:22px;line-height:1.3;margin:0 0 6px;color:var(--xc-ink)}
.xc-intro{color:#3c4456;font-size:14.5px;margin:0 0 14px}
.xc-intro p{margin:0 0 8px}
.xc-intro p:last-child{margin-bottom:0}
.xc-v-b{--xc-blue:#0e7c86;--xc-line:#e0eef0}
.xc-v-b .xc-note{background:#f2fafb}
.xc-v-b .xc-badge,.xc-v-b .xc-count{background:#e3f5f7;color:#0e7c86}
.xc-v-c{--xc-blue:#5b46c9;--xc-line:#e9e6f6}
.xc-v-c .xc-note{background:#f6f4fd}
.xc-v-c .xc-badge,.xc-v-c .xc-count{background:#ede9fb;color:#5b46c9}

/* ---- PN lookup tool ---- */
.xc-pnl{--xc-blue:#2169ED;border:1px solid var(--xc-line);border-radius:14px;background:#fff;padding:18px 18px 16px;margin:10px 0}
.xc-pnl-input{width:100%;box-sizing:border-box;border:1px solid var(--xc-line);border-radius:10px;padding:11px 13px;font-size:14px;font-family:ui-monospace,Menlo,Consolas,monospace;resize:vertical;color:#1d2433}
.xc-pnl-input:focus{outline:none;border-color:var(--xc-blue)}
.xc-pnl-btns{display:flex;gap:10px;margin:12px 0 4px;flex-wrap:wrap}
.xc-pnl-btns button{border:1px solid var(--xc-blue);background:var(--xc-blue);color:#fff;border-radius:999px;padding:9px 20px;font-size:14px;cursor:pointer}
.xc-pnl-btns button:hover{filter:brightness(1.06)}
.xc-pnl-btns button:disabled{background:#c3c9d6;border-color:#c3c9d6;cursor:not-allowed}
.xc-pnl-btns .xc-pnl-rfq{background:#fff;color:var(--xc-blue)}
.xc-pnl-result{margin-top:12px}
.xc-pnl-table{overflow-x:auto;border:1px solid var(--xc-line);border-radius:10px}
.xc-pnl-table table{border-collapse:collapse;width:100%;font-size:13.5px}
.xc-pnl-table th{text-align:left;background:#fafbfe;color:var(--xc-muted);padding:9px 11px;white-space:nowrap;border-bottom:1px solid var(--xc-line)}
.xc-pnl-table td{padding:9px 11px;border-bottom:1px solid #f0f2f6;vertical-align:top}
.xc-pnl-table a{color:var(--xc-blue)}
.xc-pnl-miss{color:#8a5a00;font-size:13px;background:#fdf8ee;border:1px solid #f1e3c4;border-radius:10px;padding:10px 13px;margin:12px 0 0}
.xc-mono{font-family:ui-monospace,Menlo,Consolas,monospace;white-space:nowrap}
@media(max-width:640px){.xc-pnl{padding:14px}.xc-pnl-table table{font-size:12.5px}}

/* fix: theme forces table{display:block} unconditionally; keep PN lookup as real table + horizontal scroll */
.xc-pnl-table table{display:table!important;width:100%;min-width:560px;border-collapse:collapse}
.xc-pnl-table thead{display:table-header-group!important}
.xc-pnl-table tbody{display:table-row-group!important}
.xc-pnl-table tr{display:table-row!important}
.xc-pnl-table th,.xc-pnl-table td{display:table-cell!important}

/* ---- OS support matrix ---- */
.xc-osm-scroll{padding:0}
.xc-osm-table{border-collapse:collapse;width:100%;font-size:13.5px;min-width:560px;display:table!important}
.xc-osm-table thead{display:table-header-group!important}
.xc-osm-table tbody{display:table-row-group!important}
.xc-osm-table tr{display:table-row!important}
.xc-osm-table th,.xc-osm-table td{display:table-cell!important}
.xc-osm-table thead th{text-align:center;background:#fafbfe;color:var(--xc-muted);font-weight:600;padding:10px 10px;white-space:nowrap;border-bottom:1px solid var(--xc-line);font-size:12.5px}
.xc-osm-table .xc-osm-modelcol{text-align:left;position:sticky;left:0;z-index:2;background:#fff;min-width:170px;padding:10px 13px;white-space:nowrap;font-size:13.5px}
.xc-osm-table thead .xc-osm-modelcol{background:#fafbfe;z-index:3}
.xc-osm-cell{text-align:center;width:54px;border-bottom:1px solid #f1f3f8;padding:8px 4px}
.xc-check{color:var(--xc-blue);font-weight:800;font-size:16px}
tr.xc-osm-row{cursor:pointer}
.xc-osm-table tbody tr.xc-osm-row:hover > .xc-osm-modelcol,.xc-osm-table tbody tr.xc-osm-row:hover > td{background:#f6f9ff}
.xc-osm-table tbody tr.xc-osm-row.xc-osm-active > .xc-osm-modelcol,.xc-osm-table tbody tr.xc-osm-row.xc-osm-active > td{background:#eef3ff}
.xc-osm-detail{display:table-row!important}
.xc-osm-detail.xc-osm-hide{display:none!important}
.xc-osm-detail > td{display:table-cell!important;background:#fbfcff;padding:0}
.xc-osm-detail-inner{padding:10px 14px 12px}
.xc-osm-detail table{display:table!important;width:100%;border-collapse:collapse;min-width:420px}
.xc-osm-detail table th{display:table-cell!important;text-align:left;background:transparent;color:var(--xc-muted);font-weight:600;font-size:11.5px;padding:6px 10px;border-bottom:1px solid var(--xc-line)}
.xc-osm-detail table td{display:table-cell!important;padding:7px 10px;font-size:12.5px;border-bottom:1px solid #f0f2f6;vertical-align:top}
.xc-osm-detail table thead{display:table-header-group!important}
.xc-osm-detail table tbody{display:table-row-group!important}
.xc-osm-detail table tr{display:table-row!important}
.xc-osm-detail .xc-mono{font-size:12px}
.xc-osm-hint{color:var(--xc-muted);font-size:12.5px;margin:0 0 10px}

/* famlinks lives outside .xc-wrap: declare vars locally + raise specificity */
.xc-famlinks{--xc-blue:#2169ED;--xc-line:#e6e9f0;--xc-ink:#1d2433;color:var(--xc-ink)}
.xc-famlinks .xc-hub-osgrid a.xc-hub-oslink{display:block;border:1px solid var(--xc-line)!important;border-radius:10px;background:#fff;padding:11px 15px;font-size:13.5px;color:var(--xc-ink);text-decoration:none;transition:.15s}
.xc-famlinks .xc-hub-osgrid a.xc-hub-oslink:hover{border-color:var(--xc-blue)!important;background:#f0f5ff;color:var(--xc-blue)}

/* Other-OS directory */
.xc-osm-gmodels{padding:6px 14px 10px;border-top:1px solid var(--xc-line)}
.xc-osm-gmodel{padding:9px 0;border-bottom:1px solid #f1f3f8}
.xc-osm-gmodel:last-child{border-bottom:none}
.xc-osm-name{display:block;font-weight:600;font-size:13.5px;color:var(--xc-ink);text-decoration:none}
a.xc-osm-name{color:var(--xc-blue)}
.xc-osm-vers{display:block;color:#5a6373;font-size:12.5px;margin-top:3px;line-height:1.5}
@media(max-width:640px){.xc-osm-table{font-size:12.5px}.xc-osm-table .xc-osm-modelcol{min-width:140px}}
