/* UK AI Universe root page v5 (Alex 30 Oct 2026 22:47/22:57): standard pillar header (shared hub-base/site/gov-whitehall/pillar-header CSS,
   loaded before this file, exactly as on Government) on the root photo; shallow white search bar; one full-width UK AI NEWS feed. */
/* root photo behind the standard header (as the v3 root page did); everything else in the header comes from the shared CSS */
html.theme-top body.pillar-hdr .site-header{background-color:#111!important;background-image:url("top-header-photo.webp")!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.uk-feed{margin:0;min-height:100vh;font-family:Inter,"Helvetica Neue",Arial,sans-serif;color:#111;background:#fff}
.feed{padding:18px 32px 30px}
.fh{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:3px solid #111;padding-bottom:8px;flex-wrap:wrap}
.fh h2{margin:0;font-size:22px;letter-spacing:.04em}.fh p{margin:0;color:#555;font-size:13px}
.fl{list-style:none;margin:0;padding:0}
.fl li{display:grid;grid-template-columns:96px 84px 210px minmax(0,1fr) minmax(0,300px);gap:12px;align-items:baseline;padding:9px 0;border-bottom:1px solid #e3e3e3;font-size:13px}
.fl time{color:#555;white-space:nowrap}
.ty{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;border:1px solid currentColor;border-radius:3px;padding:1px 5px;justify-self:start}
.ty-news{color:#1f6b52}.ty-research{color:#7a4a12}.ty-event{color:#1f4e79}
.p{display:inline-block;color:#fff;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-radius:3px;padding:2px 6px;margin:0 4px 2px 0}
.p-u{background:#0b3c42}.p-b{background:#0b4f8a}.p-g{background:#8E2433}
.fl a.t{color:#111;font-weight:700;font-size:15px;text-decoration:none;line-height:1.3}.fl a.t:hover{text-decoration:underline}
.src{color:#666;font-size:12px;overflow:hidden;text-overflow:ellipsis}.src a{color:#666}
.fmore{margin:16px 0 0;text-align:center;color:#555;font-size:13px}
.fmore button{font:inherit;padding:8px 18px;border:1px solid #111;border-radius:8px;background:#fff;cursor:pointer}
.fstamp,.ffoot{color:#777;font-size:11.5px;text-align:center}.ffoot{padding:12px;border-top:1px solid #e3e3e3}.ffoot a{color:#555}
@media (max-width:760px){
 .feed{padding:12px 14px 24px}.fl li{grid-template-columns:auto auto minmax(0,1fr);gap:4px 8px}.fl a.t{grid-column:1/-1}.src{grid-column:1/-1}.pl{justify-self:start}}
.fl time small{display:block;font-size:11px;color:#777}
/* ---- v5 global search: shallow full-width bar under the frozen header, white background, black text (no dark blue) */
.usearch{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap;padding:8px 32px;background:#fff;color:#000;border-bottom:1px solid #d6d6d6}
.usearch .srch{display:flex;align-items:center;gap:8px;flex:1 1 520px;margin:0;min-width:0}
.usearch label{font-weight:800;font-size:13px;color:#000;white-space:nowrap}
.usearch input{flex:1;min-width:0;font:inherit;font-size:14px;padding:6px 12px;border-radius:999px;border:1.5px solid #000;background:#fff;color:#000}
.usearch input::placeholder{color:#555}
.usearch .srch button{font:inherit;font-size:13px;font-weight:800;border:1.5px solid #000;border-radius:999px;padding:5px 16px;background:#000;color:#fff;cursor:pointer}
.usearch .srch button:hover{background:#fff;color:#000}
.s-what{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px}
.s-what .sw{display:inline-flex;flex-wrap:wrap;align-items:center;gap:3px}
.s-what button{font:inherit;font-size:12px;font-weight:700;border:1px solid #bbb;background:#fff;color:#000;border-radius:999px;padding:1px 9px;cursor:pointer}
.s-what button:hover,.s-what button:focus-visible{background:#000;color:#fff;border-color:#000}
.sx{display:inline-block;border-radius:999px;padding:1px 7px;font-size:10px;font-weight:800;color:#fff;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.sx-u{background:#0b3c42}.sx-b{background:#0b4f8a}.sx-g{background:#8E2433}.sx-all{background:#333}
/* large pop-up results (v3 engine), black on white */
.sm-back{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:200;display:none;align-items:flex-start;justify-content:center;padding:4vh 2vw}
.sm-back.open{display:flex}
.sm{background:#fff;color:#000;border-radius:14px;width:min(1100px,96vw);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.45);overflow:hidden}
.sm-h{display:flex;gap:10px;align-items:center;padding:12px 16px;background:#fff;border-bottom:2px solid #000}
.sm-h input{flex:1;font:inherit;font-size:1.05rem;padding:9px 14px;border-radius:999px;border:1.5px solid #000;min-width:0;color:#000;background:#fff}
.sm-x{font:inherit;font-size:1.6rem;line-height:1;width:40px;height:40px;border-radius:50%;border:1.5px solid #000;background:#fff;color:#000;cursor:pointer;flex:none}
.sm-x:hover{background:#000;color:#fff}
.sm-scope{padding:8px 16px;background:#f3f3f3;font-size:.84rem;display:flex;flex-wrap:wrap;gap:6px;align-items:center;color:#000}
.sm-scope .sm-clr{font:inherit;font-size:.74rem;font-weight:700;border:1px solid #000;background:#fff;color:#000;border-radius:999px;padding:2px 10px;cursor:pointer;margin-left:auto}
.sm-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:8px 16px;border-bottom:1px solid #e3e3e3;background:#fafafa}
.sm-tabs:empty{display:none}
.sm-tabs button{font:inherit;font-size:.76rem;font-weight:700;border:1px solid #bbb;background:#fff;border-radius:999px;padding:3px 10px;cursor:pointer;color:#000}
.sm-tabs button.on{background:#000;color:#fff;border-color:#000}
.sm-body{overflow:auto;padding:4px 16px 16px}
.sm-st{font-size:.78rem;color:#444;padding:8px 0;margin:0}
.sm-g h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#000;margin:14px 0 4px}
.sm-g ul{list-style:none;margin:0;padding:0}
.sm-g li{padding:6px 0;border-bottom:1px solid #eee;display:flex;gap:8px;align-items:baseline}
.sm-g li a{font-weight:700;color:#000;text-decoration:none}.sm-g li a:hover{text-decoration:underline}
.sm-g .ss{display:block;font-size:.74rem;color:#555;margin-top:1px}
.sm-more{font:inherit;font-size:.76rem;border:0;background:none;color:#000;font-weight:800;cursor:pointer;padding:6px 0;text-decoration:underline}
@media (max-width:760px){.usearch{padding:8px 14px;gap:6px}.usearch label{display:none}.usearch .srch{flex-basis:100%}.s-what{gap:4px 10px}.s-what button{font-size:11px;padding:1px 7px}
 .sm-back{padding:0}.sm{width:100vw;max-height:100vh;height:100vh;border-radius:0}}
/* ---- v6 (Alex 31 Oct 2026 t40u): three pillar boxes above the feed, thin black keylines; each = white header strip with the
   pillar's black title lozenge (same spec as the h1 lozenge on each pillar home page: Inter 700 1.6rem, letter-spacing .03em,
   line-height 1.2, padding .12em 1.15em .12em .5em, radius 999px, #000 on #fff text, UK-AI flag .8em before) + a live square
   screenshot of that home page below its frozen header (scripts/top_pillar_shots.py), both linking to the pillar home page */
.pz{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #000;border-bottom:1px solid #000;background:#fff}
.pz-box{display:flex;flex-direction:column;min-width:0;background:#fff}
.pz-box+.pz-box{border-left:1px solid #000}
.pz-hd{background:#fff;padding:14px 24px 12px}
.pz-hd h2{margin:0;font-size:1.6rem;font-weight:700;letter-spacing:.03em;line-height:1.15;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.pz-loz,.fh-loz{display:inline-block;background:#000;color:#fff;border-radius:999px;padding:.12em 1.15em .12em .5em;line-height:1.2;text-decoration:none;white-space:nowrap}
a.pz-loz:hover,a.pz-loz:focus-visible{color:#fff;text-decoration:none;outline:2px solid #000;outline-offset:2px}
.pz-loz::before,.fh-loz::before{content:"";display:inline-block;width:.8em;height:.8em;margin-right:.34em;vertical-align:-.04em;background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMiAzMiIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsPSJVSyBBSSI+CiAgPHRpdGxlPlVLIEFJPC90aXRsZT4KICA8ZGVmcz48Y2xpcFBhdGggaWQ9ImMiPjxjaXJjbGUgY3g9IjE2IiBjeT0iMTYiIHI9IjE1Ii8+PC9jbGlwUGF0aD48L2RlZnM+CiAgPGcgY2xpcC1wYXRoPSJ1cmwoI2MpIj4KICAgIDxyZWN0IHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0iIzAxMjE2OSIvPgogICAgPHBhdGggZD0iTTAgMCBMMzIgMzIgTTMyIDAgTDAgMzIiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSI1LjUiLz4KICAgIDxwYXRoIGQ9Ik0wIDAgTDMyIDMyIE0zMiAwIEwwIDMyIiBzdHJva2U9IiNDODEwMkUiIHN0cm9rZS13aWR0aD0iMi4yIi8+CiAgICA8cGF0aCBkPSJNMTYgMCBWMzIgTTAgMTYgSDMyIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iNyIvPgogICAgPHBhdGggZD0iTTE2IDAgVjMyIE0wIDE2IEgzMiIgc3Ryb2tlPSIjQzgxMDJFIiBzdHJva2Utd2lkdGg9IjQiLz4KICAgIDxyZWN0IHg9IjE1IiB5PSIwIiB3aWR0aD0iMTciIGhlaWdodD0iMzIiIGZpbGw9IiMwMTIxNjkiIG9wYWNpdHk9Ii41Ii8+CiAgICA8ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLE1lbmxvLG1vbm9zcGFjZSIgZm9udC1zaXplPSI1LjUiIGZvbnQtd2VpZ2h0PSI3MDAiIGZpbGw9IiNGNEY3RkIiPgogICAgICA8dGV4dCB4PSIxNi41IiB5PSI4Ij4xIDAgMTwvdGV4dD4KICAgICAgPHRleHQgeD0iMTYuNSIgeT0iMTUiPjAgMSAwPC90ZXh0PgogICAgICA8dGV4dCB4PSIxNi41IiB5PSIyMiI+MSAxIDA8L3RleHQ+CiAgICAgIDx0ZXh0IHg9IjE2LjUiIHk9IjI5Ij4wIDEgMTwvdGV4dD4KICAgIDwvZz4KICA8L2c+Cjwvc3ZnPgo=") no-repeat 50% 50%/contain}
a.pz-shot{display:block;margin:0 24px 22px;aspect-ratio:1/1;border:1px solid #000;overflow:hidden;background:#f3f3f3}
a.pz-shot img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .25s ease}
a.pz-shot:hover img,a.pz-shot:focus-visible img{transform:scale(1.015)}
@media (max-width:760px){.pz{grid-template-columns:1fr}.pz-box+.pz-box{border-left:0;border-top:1px solid #000}.pz-hd{padding:12px 14px 10px}a.pz-shot{margin:0 14px 16px}}
/* ---- v7 DESIGN PREVIEW (Alex 31 Oct 2026 13:20): pillar screenshots cropped to a short landscape strip running into the
   keyline below (as his reference), then the UK AI ANALYTICS band: three cards abreast with 1px black keylines; one column on phones */
.pz{border-bottom:1px solid #000}
a.pz-shot{aspect-ratio:15/4;margin:0 24px;border-bottom:0}
a.pz-shot img{object-fit:cover;object-position:top center}
.an{background:#fff;border-bottom:1px solid #000}
.an-hd{display:flex;align-items:baseline;gap:6px 16px;flex-wrap:wrap;padding:14px 32px 10px;border-bottom:1px solid #000}
.an-hd h2{margin:0;font-size:22px;letter-spacing:.04em}.an-hd p{margin:0;color:#555;font-size:13px;flex:1 1 300px}
.an-pv{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;border:1.5px dashed #000;border-radius:999px;padding:2px 10px;color:#000}
.an-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.an-card{padding:14px 24px 14px;min-width:0;display:flex;flex-direction:column}
.an-card+.an-card{border-left:1px solid #000}
.an-no{margin:0;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#555}
.an-card h3{margin:2px 0 0;font-size:18px;font-weight:800;line-height:1.2}
.an-sub{margin:1px 0 6px;font-size:12px;color:#555}
.an-sent{margin:0 0 8px;font-size:14px;line-height:1.4;font-weight:600;color:#000}
.an-chart{margin-top:4px}.an-cov{margin-top:auto!important;padding-top:10px}
.an-svg{display:block;width:100%;height:auto;font-family:Inter,"Helvetica Neue",Arial,sans-serif}
.an-l{font-size:12px;fill:#111}.an-b{font-weight:700}.an-v{font-size:12px;font-weight:700;fill:#111}.an-s{font-size:10.5px;fill:#555}.an-in{font-size:11px;font-weight:700;fill:#fff}
.an-key{display:flex;flex-wrap:wrap;gap:3px 12px;margin:6px 0 0;font-size:11px;color:#333}
.an-key span{display:inline-flex;align-items:center;gap:4px}.an-key i{display:inline-block;width:10px;height:10px;border-radius:2px}
.an-warn{margin:8px 0 0;font-size:12.5px;font-weight:700;line-height:1.35;color:#000}
.an-cov{margin:8px 0 0;font-size:11px;line-height:1.4;color:#777}
.an-foot{display:flex;justify-content:flex-start;align-items:center;gap:8px;margin:8px 0 0;font-size:11px;color:#555}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (max-width:1000px) and (min-width:761px){.an-card{padding:12px 16px}}
@media (max-width:760px){a.pz-shot{margin:0 14px}.an-hd{padding:12px 14px 8px}.an-grid{grid-template-columns:1fr}.an-card{padding:12px 14px}.an-card+.an-card{border-left:0;border-top:1px solid #000}}

/* v8 DESIGN PREVIEW (Alex 31 Oct 2026 13:53, pt55u): pillar sections as rounded button-cards, no separating keylines,
   freeze = photo header + search + button row (desktop only), pastel title lozenges on the analytics cards, black UK AI NEWS lozenge */
.pz{gap:18px;padding:14px 32px 16px;border:0!important;background:#fff}
a.pz-box,a.pz-box:visited{display:flex;flex-direction:column;min-width:0;background:#fff;border:1.5px solid #000!important;border-radius:16px;overflow:hidden;color:inherit;text-decoration:none;transition:box-shadow .15s ease,transform .15s ease}
a.pz-box:hover,a.pz-box:focus-visible{box-shadow:0 4px 14px rgba(0,0,0,.16);transform:translateY(-1px);outline:none}
a.pz-box:focus-visible{outline:2px solid #000;outline-offset:3px}
.pz-box+.pz-box{border-left:1.5px solid #000}
.pz-hd{display:block;padding:12px 16px 10px}
.pz-shot{display:block;width:100%;aspect-ratio:15/4;overflow:hidden;background:#f3f3f3;border-top:1px solid #d6d6d6;transition:height .2s ease}
.pz-shot img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .25s ease}
a.pz-box:hover .pz-shot img{transform:scale(1.015)}
.top-freeze{position:sticky;top:0;z-index:45;background:#fff}
.top-freeze .site-header{position:relative!important;top:auto!important}
.top-freeze.stuck{box-shadow:0 3px 10px rgba(0,0,0,.14)}
.top-freeze.stuck .pz{padding:8px 32px 10px}
.top-freeze.stuck .pz-hd{padding:7px 14px 6px}
.top-freeze.stuck .pz-shot{aspect-ratio:auto;height:56px}
.an{border-top:0}
.an-card h3{margin:0 0 4px}
.an-loz{display:inline-block;padding:.16em .8em;border-radius:999px;background:#000;color:#fff;line-height:1.2;letter-spacing:.01em}
.an-card.an-lab-to-leak{background:#ECECE8}
.an-card.an-who-owns-uk-ai{background:#E3EDF8}
.an-card.an-survival{background:#F2E8D8}
.an-card svg,.an-card .an-key,.an-card .an-chart{background:transparent}
.fh h2{font-size:1.6rem;font-weight:700;letter-spacing:.03em;line-height:1.15}
.fh-loz{display:inline-block;background:#000;color:#fff;border-radius:999px;padding:.12em 1.15em .12em .5em;line-height:1.2;white-space:nowrap}
@media (max-width:760px){
 .top-freeze{display:contents}
 .top-freeze .site-header{position:sticky!important;top:0!important}
 .pz{grid-template-columns:1fr;gap:12px;padding:12px 14px 14px}
 .pz-box+.pz-box{border-top:1.5px solid #000}
 .pz-hd{padding:10px 12px 8px}
}

/* v9 DESIGN PREVIEW (Alex 31 Oct 2026 t60u): each pillar card's title strap sits on that site's own header background
   photo (inline style from top_site.pillar_boxes), black title lozenge kept on top, site screenshot strip kept below */
.pz-hd{position:relative;background-color:#222;background-size:cover;background-repeat:no-repeat;padding:20px 16px 18px;transition:padding .2s ease}
.pz-universities .pz-hd{box-shadow:inset 0 0 0 999px rgba(0,0,0,.1)}
.pz-hd .pz-loz{box-shadow:0 1px 6px rgba(0,0,0,.35)}
.pz-shot{border-top:1.5px solid #000}
.top-freeze.stuck .pz-hd{padding:9px 14px 8px}
@media (max-width:760px){.pz-hd{padding:14px 12px 12px}}

/* v10 DESIGN PREVIEW (Alex 31 Oct 2026, pt63u): second analytics row beneath the first (opportunity gap, signals, promise tracker),
   same card style, pastel red / green / orange; header credit 'by Alex Connock' removed (top_site.py) */
.an-row2{border-top:1px solid #000}
.an-card.an-opportunity-gap{background:#F6E1E1}
.an-card.an-signals{background:#E2F1E4}
.an-card.an-promises{background:#FBE6D2}
.sg,.pr{list-style:none;margin:0;padding:0}
.sg li{display:flex;align-items:flex-start;gap:8px;padding:5px 0;border-top:1px solid rgba(0,0,0,.12)}
.sg li:first-child{border-top:0;padding-top:0}
.sg-ch{display:inline-flex;gap:2px;flex:0 0 auto;padding-top:1px}
.sg-c{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:50%;border:1px solid #000;font-size:9.5px;font-weight:800;color:#777;background:#fff;opacity:.45}
.sg-c.on{background:#000;color:#fff;opacity:1}
.sg-k{display:inline-block;width:10px;height:10px;border-radius:50%;background:#000}
.sg-t{min-width:0;font-size:12.5px;line-height:1.3;color:#000}
.sg-t b{font-weight:800}.sg-t em{font-style:normal;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;border:1px solid #000;border-radius:999px;padding:0 5px;margin-left:4px;vertical-align:1px}
.sg-e{display:block;font-size:11px;color:#444;overflow-wrap:anywhere}
.pr{margin-top:8px}
.pr li{font-size:12px;line-height:1.35;padding:3px 0;color:#000}
.pr-s{display:inline-block;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:1px 6px;margin-right:2px;color:#000;border:1px solid rgba(0,0,0,.35)}
.pr-e{color:#444}
.pr-gov{margin:8px 0 0;padding:6px 9px;border:1px dashed #000;border-radius:8px;font-size:12px;font-weight:600;line-height:1.35;background:rgba(255,255,255,.55)}

/* v10 E2: 'View record' pill on news headlines that name a directory organisation (top.js + nexus.json) */
.fl .tw{min-width:0;line-height:1.3}.fl .tw a.t{margin-right:6px}
.fl a.vr{display:inline-block;white-space:nowrap;vertical-align:1px;font-size:10.5px;font-weight:700;letter-spacing:.02em;color:#111;background:#fff;border:1px solid #111;border-radius:999px;padding:1px 8px;text-decoration:none}
.fl a.vr:hover{background:#111;color:#fff}
@media (max-width:760px){.fl .tw{grid-column:1/-1}}

/* t73u (Alex 31 Oct 2026 21:51): www.librairie.ai under the disclaimer, centred on it; position/gap set by the LIB_LINK script.
   .top-lib-ph is an invisible stand-in in the old grid cell so the switch and disclaimer stay exactly where they were on desktop. */
body.pillar-hdr .header-credit .top-lib-ph{visibility:hidden;pointer-events:none;user-select:none}
@media (max-width:700px){body.pillar-hdr .header-credit .top-lib-ph{display:none!important}}
body.pillar-hdr .site-header>a.top-lib{position:absolute;z-index:2;margin:0;display:inline-flex;align-items:center;box-sizing:border-box;font-size:.72rem;font-weight:500;line-height:1.15;padding:.12em .55em;border-radius:999px;white-space:nowrap;text-decoration:none;background:rgb(0,0,0)!important;color:#FFFFFF!important}
body.pillar-hdr .site-header>a.top-lib:hover{text-decoration:underline;text-underline-offset:2px}
body.pillar-hdr .site-header>a.top-lib:focus-visible{outline:2px solid #FFFFFF;outline-offset:2px}
@media (max-width:700px){body.pillar-hdr .site-header>a.top-lib{position:relative;display:flex;width:max-content;margin:0 0 6px 0;font-size:.8rem}
  body.pillar-hdr .site-header>.gen-note.gov-gen{margin-bottom:0}}
