
.lib-hero{background:linear-gradient(115deg,#103851,#0a7785);border-radius:20px;padding:20px 24px;color:#fff;margin-bottom:14px}
.lib-hero h1{font-size:clamp(24px,3.2vw,34px);margin:0 0 5px}.lib-hero p{font-size:14px;margin:0;color:#e5f6fa}
.lib-container{max-width:1100px;margin:0 auto;padding:12px}
.lib-topline{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:9px;color:#4a6f81;font-size:13px}
.lib-topline button,.lib-breadcrumb button{cursor:pointer;background:white;color:#216176;border:1px solid #cbe0e7;padding:6px 12px;border-radius:9px;font-weight:700}
.lib-breadcrumb{margin:6px 0 12px;color:#557b8c;display:flex;gap:5px;align-items:center;flex-wrap:wrap;font-size:13px}
.lib-filters{padding:11px 14px;border:1px solid #d5e7eb;border-radius:14px;background:white;margin-bottom:14px;font-size:12px;color:#2b586a}
.lib-filters strong{display:block;margin-bottom:6px}.lib-filters p{margin:6px 0 0;color:#64808b}.lib-levels{display:flex;gap:5px;flex-wrap:wrap}.lib-levels button{border:1px solid #d3e4eb;padding:6px 12px;border-radius:20px;cursor:pointer;background:#f7fbfc;color:#194c62;font:700 12px Tahoma,Arial}
.lib-levels button[aria-pressed=true]{background:#0a929b;color:white;border-color:#0a929b}
.lib-intro h2{font-size:clamp(20px,2.6vw,27px);margin:0}.lib-intro p{font-size:13px;margin:4px 0 15px;color:#68818f}
.lib-subgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.lib-sub,.lib-topic{cursor:pointer;text-align:start;min-height:160px;border-radius:16px;border:1px solid #d2e5eb;background:white;padding:15px;color:#133c54;display:flex;flex-direction:column;gap:4px}
.lib-sub:hover,.lib-sub:focus-visible,.lib-topic:hover,.lib-topic:focus-visible,.lib-activity:hover,.lib-activity:focus-visible{border-color:#0b949e;outline:none;box-shadow:0 5px 15px #13566e16}
.lib-emoji{font-size:29px}.lib-sub strong,.lib-topic strong{font-size:17px}.lib-sub small,.lib-topic small{font-size:13px;color:#698190}.lib-sub em{font-size:12px;margin-top:auto;color:#078795;font-style:normal;font-weight:bold}
.lib-common{background:#eff9fa;border:1px solid #cce7eb;border-radius:14px;padding:15px;margin:14px 0}.lib-common p{font-size:13px;margin:4px 0 9px;color:#527589}.lib-common button{border:none;background:#0b929b;color:white;padding:9px 13px;border-radius:10px;cursor:pointer;font-weight:bold}
.lib-topicgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.lib-topic{min-height:135px}.lib-enter{color:#078d96;font-size:12px;font-weight:800;margin-top:auto}
.lib-group{margin-top:17px}.lib-group h3{font-size:17px;margin:0 0 9px;border-inline-start:4px solid #0b929b;padding-inline-start:11px}
.lib-activities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.lib-activity{background:white;border:1px solid #d3e5eb;border-radius:15px;padding:13px;min-height:135px;display:flex;gap:9px;text-decoration:none;color:#173d55;align-items:flex-start}
.lib-cardicon{font-size:25px;display:inline-grid;place-items:center;min-width:43px;height:43px;background:#eef8fa;border-radius:11px}
.lib-cardcontent{flex:1;min-width:0}.lib-cardcontent h3{font-size:16px;line-height:1.5;margin:0 0 5px}.lib-cardcontent p{font-size:12px;color:#63808c;margin:0 0 9px}.lib-meta{display:flex;gap:5px;flex-wrap:wrap}.lib-label{background:#edf6f8;border-radius:20px;color:#286679;padding:2px 8px;font-size:11px}
.mq-curiosity{background:linear-gradient(120deg,#ecf9fa,#f7fbfe);border:1px solid #b9e3e6;border-radius:16px;padding:15px 18px;margin:8px 0 15px}
.mq-curiosity-eyebrow{font-size:13px;color:#0b7d88;font-weight:800}.mq-curiosity h3{font-size:clamp(20px,3vw,26px);margin:3px 0 8px;color:#123d57;line-height:1.55}.mq-curiosity p{font-size:13px;color:#63808d;margin:0}
@media(max-width:790px){.lib-subgrid,.lib-topicgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:570px){.lib-container{padding:7px}.lib-subgrid,.lib-topicgrid,.lib-activities{grid-template-columns:1fr;gap:8px}.lib-sub{min-height:110px}.lib-topic{min-height:105px}.lib-activity{min-height:110px}.mq-curiosity{padding:12px}.lib-hero{padding:14px}}

#library-view{scroll-margin-top:16px}

body.mq-topic-focus{padding-bottom:34px}
/* Unified science catalogue · accessible type colours */
.lib-key{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:11px 12px;background:#fff;border:1px solid #d7e6ef;border-radius:14px;margin:8px 0 17px}
.lib-key-head{font:700 12px Tahoma,Arial;color:#426375;margin-inline-end:3px}
.lib-kind{font:700 12px Tahoma,Arial;border:1px solid transparent;padding:5px 9px;border-radius:999px}
.lib-kind-lab{background:#def6f3;border-color:#8dd5cc;color:#096c69}
.lib-kind-inquiry{background:#f0eaff;border-color:#c6b4ec;color:#644498}
.lib-kind-mechanics{background:#e7eefc;border-color:#a8c4ed;color:#275994}
.lib-kind-fast{background:#fff2df;border-color:#edcf9a;color:#8b5a19}
.lib-sub{min-height:137px;border-top:5px solid #0b919b}.lib-sub strong{font-size:18px}.lib-sub small{line-height:1.55}
.lib-topic{min-height:128px}.lib-topictypes{display:flex;gap:4px;align-items:center;margin-top:3px}.lib-type-dot{display:inline-block;width:10px;height:10px;border-radius:50%;border:1px solid #ffffff77}.lib-type-lab{background:#0e9e95}.lib-type-inquiry{background:#9371c4}.lib-type-mechanics{background:#4279bd}.lib-type-fast{background:#dfa046}
.lib-filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:13px;margin:10px 0}.lib-filters>span{font-weight:800}.lib-filters small{color:#587989}.lib-levels{display:flex;gap:5px;flex-wrap:wrap}
.lib-group{--accent:#108f91;--surface:#ecf9f8;--border-kind:#a5deda;border:1px solid var(--border-kind);border-radius:17px;background:linear-gradient(170deg,var(--surface),#fff 130px);margin-top:14px;padding:14px}
.lib-group-lab{--accent:#087e78;--surface:#e7f7f3;--border-kind:#91d7ce}
.lib-group-inquiry{--accent:#7755ab;--surface:#f1eafa;--border-kind:#d3bfee}
.lib-group-mechanics{--accent:#285f9f;--surface:#eaf1ff;--border-kind:#b8cdef}
.lib-group-fast{--accent:#94621c;--surface:#fff3e4;--border-kind:#ead0a3}
.lib-grouphead{display:flex;gap:11px;align-items:center;margin-bottom:12px}.lib-grouphead h3{font-size:17px;border:none;padding:0;margin:0;color:var(--accent)}.lib-grouphead p{font-size:12px;color:#627786;margin:0}.lib-groupicon{background:#fff;box-shadow:0 1px 7px #123e5415;padding:9px;border-radius:12px;font-size:22px}.lib-groupcount{margin-inline-start:auto;background:white;border:1px solid var(--border-kind);font-size:12px;font-weight:900;border-radius:16px;color:var(--accent);padding:3px 9px}
.lib-activity{border-color:var(--border-kind);border-inline-start:5px solid var(--accent);min-height:103px}.lib-activity h4{font-size:15px;line-height:1.45;margin:0 0 5px;color:#133c55}.lib-activity .lib-cardicon{background:var(--surface)}
.lib-meta .lib-label{background:var(--surface);color:var(--accent)}.lib-activity .lib-enter{color:var(--accent);white-space:nowrap}
.lib-mechgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.lib-mechcard{background:white;border:1px solid #b8ceeb;border-inline-start:4px solid #376aa2;border-radius:13px;padding:12px}.lib-mechcard h4{font-size:15px;margin:4px 0;color:#153c57}.lib-mechcard p{font-size:12px;color:#607b8b;margin:0 0 9px}.lib-mech-ico{font-size:26px}.lib-mechlevels{display:flex;flex-wrap:wrap;gap:6px}.lib-mechlevels a{background:#e9f2fc;border:1px solid #b8d0ee;border-radius:9px;padding:7px 9px;color:#204f81;font-size:12px;font-weight:800;text-decoration:none}.lib-mechlevels a:hover{background:#cbdff7}
.lib-ar-only{font-size:11px;color:#8b571d;background:#fff4e2;border-radius:9px;padding:3px 7px;display:inline-block;margin-top:5px}
.lib-methods{background:#f7fbfc;border:1px solid #d4e6ec;border-radius:15px;padding:13px 15px;margin:14px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.lib-methods strong{font-size:14px}.lib-methods p{font-size:12px;color:#5e7a88;margin:2px 0}.lib-methods button{padding:10px 13px;min-width:96px;background:#e4f4f5;border:1px solid #b1d9db;border-radius:10px;font-weight:800;color:#087c85;cursor:pointer}
.lib-breadcrumb{margin-top:10px}
@media(max-width:820px){.lib-mechgrid{grid-template-columns:1fr}.lib-group{padding:10px}.lib-activities{grid-template-columns:1fr}.lib-activity{min-height:100px}.lib-key{gap:6px}}
@media(max-width:560px){.lib-key-head{width:100%}.lib-key{gap:5px;padding:9px}.lib-kind{font-size:11px;padding:4px 7px}.lib-group{border-radius:14px}.lib-grouphead h3{font-size:16px}.lib-activity{padding:10px;min-height:96px}.lib-activity h4{font-size:14px}.lib-activity .lib-enter{font-size:11px}.lib-methods{align-items:flex-start}}

/* v1.4.23: interactive science activity-type buttons */
.lib-key{position:relative}
.lib-kind{font:700 12px Tahoma,Arial,sans-serif;min-height:40px;cursor:pointer;transition:box-shadow .15s ease,transform .15s ease;white-space:normal;text-align:center}
.lib-kind:hover{transform:translateY(-1px);box-shadow:0 3px 8px #14485817}
.lib-kind:focus-visible,.lib-kind-all:focus-visible,.lib-kind-subject summary:focus-visible{outline:3px solid #0d8f98;outline-offset:3px}
.lib-kind[aria-pressed="true"]{border-width:2px;box-shadow:0 0 0 3px #ffffff,0 0 0 5px currentColor}
.lib-kind-all{border:1px solid #c7dfe5;background:#f4fafc;border-radius:999px;color:#276179;padding:6px 12px;font-size:12px;font-weight:800;cursor:pointer;min-height:38px}
.lib-kind-intro{background:#f8fcfd;border:1px solid #d8e8ef;border-radius:16px;padding:15px;margin-bottom:11px}
.lib-kind-intro-lab{background:#edfaf7;border-color:#b7e5d9}
.lib-kind-intro-inquiry{background:#f5effe;border-color:#d9c9ec}
.lib-kind-intro-mechanics{background:#edf4ff;border-color:#c5d8f1}
.lib-kind-intro-fast{background:#fff8ed;border-color:#eedabc}
.lib-kind-heading{display:flex;gap:12px;align-items:center}.lib-kind-largeicon{font-size:29px;display:grid;place-items:center;background:#fff;border:1px solid #dceaf0;border-radius:13px;width:54px;height:54px;flex:none}
.lib-kind-intro p{margin:2px 0;color:#537386;font-size:13px}.lib-kind-intro .lib-kind-hint{margin-top:8px}
.lib-kind-subject{background:white;border:1px solid #d4e4eb;border-radius:15px;margin:10px 0;overflow:hidden}
.lib-kind-subject summary{list-style:none;display:flex;gap:10px;align-items:center;padding:13px 15px;cursor:pointer;background:#f7fbfd;color:#153f57;min-height:53px}
.lib-kind-subject summary::-webkit-details-marker{display:none}
.lib-kind-subject summary strong{font-size:16px;flex:1}.lib-kind-subicon{font-size:22px}.lib-kind-subcount{font-size:12px;color:#5b7787;font-weight:700;background:#fff;border:1px solid #d8e7ee;border-radius:15px;padding:2px 9px;white-space:nowrap}.lib-kind-expand{font-size:20px;color:#387b8b;transition:transform .15s}
.lib-kind-subject[open]>.lib-kind-expand,.lib-kind-subject[open] summary>.lib-kind-expand{transform:rotate(180deg)}
.lib-kind-inner{padding:11px 14px 15px}.lib-kind-topic+.lib-kind-topic{margin-top:14px;border-top:1px dashed #d9e6ed;padding-top:13px}
.lib-kind-topichead{display:flex;gap:9px;align-items:center;justify-content:space-between;font-size:14px;font-weight:900;margin:0 0 8px;color:#26536d}
.lib-kind-topichead small{background:#edf7fa;color:#2c6c7a;padding:2px 10px;font-size:12px;border-radius:15px}
.lib-kind-subject-lab{border-inline-start:4px solid #0b9b92}.lib-kind-subject-inquiry{border-inline-start:4px solid #8a68b8}.lib-kind-subject-mechanics{border-inline-start:4px solid #3975b8}.lib-kind-subject-fast{border-inline-start:4px solid #d89a39}
.lib-kind-subject .lib-activity{border-inline-start:4px solid #afcad6}
.lib-kind-results-lab .lib-activity{border-inline-start-color:#0b9b92}.lib-kind-results-inquiry .lib-activity{border-inline-start-color:#8a68b8}.lib-kind-results-fast .lib-activity{border-inline-start-color:#d89a39}
.lib-kind-subject .lib-activity{min-height:91px}.lib-kind-subject .lib-activities{grid-template-columns:repeat(2,minmax(0,1fr))}
.lib-kind-subject .lib-mechgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:800px){.lib-kind-subject .lib-activities{grid-template-columns:1fr}.lib-kind-subject .lib-mechgrid{grid-template-columns:1fr}}
@media(max-width:560px){.lib-kind-subject summary{padding:11px 9px;gap:7px}.lib-kind-subject summary strong{font-size:14px}.lib-kind-inner{padding:10px}.lib-kind-subcount{font-size:11px}.lib-kind-heading{gap:8px}.lib-kind-largeicon{width:42px;height:42px;font-size:24px}.lib-kind{flex:1 1 auto;min-height:42px}.lib-kind-all{width:100%}}

.lib-nextgen-tag{background:#e6f8f2!important;color:#075e59!important;border:1px solid #86d4c3;padding:4px 9px!important;font-weight:800}

/* 2026-10-29: visually focused new lab badges and responsive unified launch action */
.lib-fresh-badge{display:inline-flex;align-items:center;gap:4px;background:#fff1cc;color:#80500b;border:1px solid #e4bb56;border-radius:999px;font:900 12px Tahoma,Arial,sans-serif;padding:3px 11px;box-shadow:0 1px 5px #b4811820;white-space:nowrap}
.lib-activity:has(.lib-fresh-badge){border-color:#8acbc9;box-shadow:0 3px 17px #0b7f8830}
.lib-activity .lib-open-lab{margin-inline-start:auto;margin-top:auto;display:flex;align-items:center;gap:9px;flex:none;white-space:nowrap;min-height:46px;padding:5px 13px 5px 6px;border-radius:13px;color:white!important;background:linear-gradient(120deg,#087e8b,#12627b);box-shadow:0 5px 13px #0b5b7133;font:800 13px Tahoma,Arial,sans-serif;transition:transform .18s,box-shadow .18s;direction:rtl}
.lib-activity .lib-open-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:10px;background:#ffffff25;color:#fff;border:1px solid #ffffff55}
.lib-open-icon svg{display:block}
.lib-activity:hover .lib-open-lab,.lib-activity:focus-visible .lib-open-lab{transform:translateY(-2px);box-shadow:0 7px 17px #0b5b7150;background:linear-gradient(120deg,#078c98,#15516f)}
.lib-activity:focus-visible{outline:3px solid #f1ba45;outline-offset:3px}
.lib-activity{flex-wrap:wrap;align-items:stretch}
.lib-activity .lib-cardcontent{min-width:155px;flex:1 1 175px}
@media(max-width:620px){.lib-activity .lib-open-lab{min-height:44px;padding:5px 10px 5px 6px;font-size:12px}.lib-activity .lib-cardcontent{flex-basis:165px}.lib-fresh-badge{font-size:11px}}
@media(max-width:375px){.lib-activity .lib-open-lab{width:100%;justify-content:space-between}.lib-activity .lib-cardcontent{min-width:0;flex-basis:160px}}
@media(prefers-reduced-motion:reduce){.lib-activity .lib-open-lab{transition:none}}
