/* Shared live controls; references 010/013/014 still need visual acceptance. */
.connected-lab .experience-hub{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,25%);align-items:center;gap:24px;overflow:hidden;padding:clamp(20px,3vw,42px);margin-bottom:24px;border:1px solid var(--line2);border-radius:24px;background:linear-gradient(115deg,var(--bg2),var(--panel3));box-shadow:inset 0 0 0 5px #6bddff0b,0 10px 32px #0003}
.connected-lab .experience-hub h2{font-size:clamp(26px,3vw,44px);line-height:1.13;margin:8px 0 16px;letter-spacing:-.025em}
.connected-lab .experience-eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;color:var(--gold)}
.connected-lab .experience-hub-copy>p{max-width:60ch;color:var(--text)}
.connected-lab .experience-hub img{width:100%;height:auto;max-height:250px;object-fit:contain;pointer-events:none}
.connected-lab .experience-hub nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.connected-lab .experience-hub nav a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text);font-weight:700;text-decoration:none}
.connected-lab .experience-hub nav a[aria-current=page]{border-color:var(--gold);box-shadow:inset 0 -3px var(--gold)}
.connected-lab :is(.gh-grid,.bk-shelf,.le-hub .kgrid){gap:18px}
.connected-lab .bk-card{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:18px;padding:16px}
.connected-lab .gh-tab{min-height:48px;color:var(--text);background:var(--panel);border:1px solid var(--line)}
.connected-lab .gh-tab.on{border-color:var(--gold);box-shadow:inset 0 -3px var(--gold)}
@media(max-width:600px){.connected-lab .experience-hub{grid-template-columns:1fr;padding:20px}.connected-lab .experience-hub img{display:none}.connected-lab .experience-hub nav a{flex:1 1 40%}.connected-lab .bk-shelf{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}}
.companion-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:24px}.companion-grid button{display:flex;flex-direction:column;align-items:center}.companion-grid [data-portrait]{display:block;width:100px;height:120px}.companion-grid [aria-pressed=true]{outline:3px solid var(--gold)}.companion-stage{width:220px;height:260px;margin:24px auto;transform-origin:50% 90%}.companion-stage>*{max-height:100%;width:100%}.friend-dance{animation:friend-dance .6s ease-in-out 4}.friend-jump{animation:friend-jump .8s ease-in-out 3}@keyframes friend-dance{25%{transform:rotate(-9deg)}75%{transform:rotate(9deg)}}@keyframes friend-jump{50%{transform:translateY(-25px)}}@media(prefers-reduced-motion:reduce){.friend-dance,.friend-jump{animation:none}}
/* Semantic live controls; no painted buttons or invented progress values. */
.connected-lab .age-dashboard{margin:0 0 24px;padding:clamp(18px,3vw,36px);border:1px solid var(--line2);border-radius:24px;background:linear-gradient(125deg,var(--bg2),var(--panel3));box-shadow:inset 0 0 0 4px #6bddff12,0 12px 32px #0003;color:var(--text)}
.connected-lab .age-dashboard-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.connected-lab .age-dashboard h2{font-size:clamp(26px,3vw,44px);line-height:1.15;margin:8px 0}.connected-lab .age-dashboard-avatar{width:100px;height:120px;flex-shrink:0}.connected-lab .age-dashboard-avatar>*{width:100%;height:100%}
.connected-lab .age-dashboard-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:14px;margin:24px 0}.connected-lab .age-dashboard-cards a{display:flex;flex-direction:column;gap:12px;padding:20px 16px;min-height:145px;border:1px solid var(--line2);border-radius:16px;background:var(--panel);color:var(--text);text-decoration:none}.connected-lab .age-dashboard-cards a>span{font-size:36px}.connected-lab .age-dashboard-cards small{color:var(--text);font-size:13px}.connected-lab .age-dashboard a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.connected-lab .age-dashboard a:active{transform:translateY(2px)}.connected-lab .age-dashboard-tools{display:flex;gap:12px;flex-wrap:wrap}.connected-lab .age-dashboard-tools a{padding:12px 16px;min-height:44px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:var(--panel);text-decoration:none}.connected-lab .age-dashboard[data-stage=discover] .age-dashboard-cards strong{font-size:21px}.connected-lab .age-dashboard[data-stage=future]{border-radius:12px}
@media(max-width:480px){.connected-lab .age-dashboard-heading{gap:12px}.connected-lab .age-dashboard-avatar{width:72px;height:90px}.connected-lab .age-dashboard-tools a{flex:1 1 100%}}
/* References 010 / 013 / 014: scenic layers with live, separate HTML controls. */
.connected-lab .experience-hub.gui-hub{display:block;padding:0;border-color:#45bfff;background:#04152f;overflow:hidden;box-shadow:0 0 28px #008bff22;color:#f5faff}
.connected-lab .gui-hub .gui-hub-nav{display:flex;gap:0;overflow-x:auto;flex-wrap:nowrap;margin:0;padding:8px 12px;background:#05182e;border-bottom:1px solid #4bbafa}
.connected-lab .gui-hub .gui-hub-nav a{flex:0 0 auto;min-height:48px;padding:12px 18px;border:0;border-radius:8px;background:transparent;color:#e6f5ff;font-size:14px;white-space:nowrap}
.connected-lab .gui-hub .gui-hub-nav a[aria-current=page]{background:#174973;color:#ffe0a0;box-shadow:inset 0 -3px #ffd47a}
.connected-lab .gui-hub-hero{position:relative;min-height:280px;aspect-ratio:2.6;overflow:hidden;background:#092a50}
.connected-lab .gui-hub .gui-hub-hero>img{display:block;width:100%;height:100%;max-height:none;position:absolute;inset:0;object-fit:cover;object-position:50% 40%}
.connected-lab .gui-hub-heading{position:absolute;bottom:0;left:0;right:0;padding:60px 32px 24px;background:linear-gradient(transparent,#03122ae8 50%,#03122afc);text-shadow:0 2px 8px #000}
.connected-lab .gui-hub-heading h2{margin:5px 0 8px;color:#f5faff;font-size:clamp(28px,3.5vw,48px)}.connected-lab .gui-hub-heading p{margin:0;color:#e1f3ff;max-width:70ch}.connected-lab .gui-hub-heading .experience-eyebrow{color:#ffdf95;font-size:11px;letter-spacing:.18em}
.connected-lab .gui-hub .gui-hub-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:0;padding:20px;background:linear-gradient(120deg,#08274a,#05142c)}
.connected-lab .gui-hub .gui-hub-actions a{display:flex;align-items:center;justify-content:flex-start;gap:14px;min-height:100px;padding:16px;border:1px solid #47bafa;border-radius:14px;background:linear-gradient(145deg,#123b65,#061a34);color:#f4faff;text-decoration:none;box-shadow:inset 0 0 12px #1a9dff22}
.connected-lab .gui-hub-actions a>span:first-child{font-size:30px;color:#ffda84}.connected-lab .gui-hub-actions a>span:last-child{margin-left:auto}.connected-lab .gui-hub-actions strong{display:block;font-size:16px}.connected-lab .gui-hub-actions small{display:block;font-size:12px;font-weight:400;line-height:1.5;margin-top:7px;color:#d3e9ff}
.connected-lab .gui-hub a:hover{border-color:#ffdc8e;background-color:#164d7d}.connected-lab .gui-hub a:focus-visible{outline:3px solid #ffdb85;outline-offset:-4px}.connected-lab .gui-hub a:active{transform:translateY(2px)}
.connected-lab .gui-hub-search{display:flex;flex-direction:column;gap:8px;max-width:640px;margin:20px 0 8px;font-weight:700}.connected-lab .gui-hub-search input{min-height:50px;border-radius:12px;padding:12px 16px;background:var(--input);border:1px solid var(--line2);color:var(--text)}
.connected-lab :is(.le-hub,.gh,.gui-books-page) .ktile{border:1px solid var(--line2);border-radius:16px;background:linear-gradient(140deg,var(--panel3),var(--panel));color:var(--text);box-shadow:inset 0 0 14px #168eff14;min-height:150px}
.connected-lab :is(.le-hub,.gh,.gui-books-page) .ktile small{color:var(--muted);opacity:1}.connected-lab .gui-books-page .le-tabs{display:flex;gap:10px;flex-wrap:wrap;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--panel);margin:20px 0}.connected-lab .gui-books-page .le-tabs button{min-height:48px;padding:12px 18px}.connected-lab .gui-books-page .le-tabs .on{border-color:var(--gold);box-shadow:inset 0 -3px var(--gold)}
@media(max-width:650px){.connected-lab .gui-hub-hero{aspect-ratio:auto;min-height:350px}.connected-lab .gui-hub-heading{padding:70px 18px 20px}.connected-lab .gui-hub .gui-hub-actions{grid-template-columns:1fr;padding:14px}.connected-lab .gui-hub .gui-hub-actions a{min-height:86px}.connected-lab .gui-books-page .le-tabs{display:grid;grid-template-columns:1fr 1fr}.connected-lab .gui-books-page .le-tabs button{white-space:normal}}
@media(prefers-reduced-motion:reduce){.connected-lab .gui-hub a:active{transform:none}}
