/* scene=lp. Existing native radio / detail drawer behaviors are preserved.
   The completed artifact carries the visual hierarchy; context supports it. */
/* Existing Luna character art: larger appearances throughout the same LP. */
.ly-section-friends{display:flex;align-items:flex-end;justify-content:center;width:min(100%,470px);margin:14px 0 0;pointer-events:none;isolation:isolate}
.ly-section-friends img{display:block;width:40%;height:170px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 10px 9px #214c4312);animation:luna-friend-breathe 5s ease-in-out infinite;transform-origin:center bottom}
.ly-section-friends img+img{margin-left:-10%}
.ly-section-friends img:nth-child(2n){animation-delay:-2.5s;z-index:1}
.ly-section-friends img:nth-child(3n){animation-delay:-1.3s}
.ly-price-friends{max-width:280px;margin-top:8px}
.ly-price-friends img{width:58%;height:140px}.ly-price-friends img+img{margin-left:-16%}
.ly-contact-friends{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:min(100%,650px);margin:22px 0 18px}
.ly-contact-friends img{width:145%;max-width:none;height:160px;margin-left:-22.5%}
.ly-contact-friends img+img{margin-left:-22.5%}
@keyframes luna-friend-breathe{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-7px) rotate(1deg)}}
@media(max-width:600px){.ly-section-friends img{height:125px}.ly-about-friends{margin-top:8px}.ly-price-friends{max-width:240px}.ly-price-friends img{height:115px}.ly-contact-friends{margin:18px 0 12px}.ly-contact-friends img{height:120px}}
@media(prefers-reduced-motion:reduce){.ly-section-friends img{animation:none}}
html[data-motion-state="paused"] .ly-section-friends img{animation:none}
#top .lgp-type-row:first-child{font-size:clamp(88px,10vw,144px);line-height:1.14;margin-bottom:12px}
#top .lgp-type-row:nth-child(2),#top .lgp-type-row:nth-child(3){font-size:clamp(36px,4.2vw,58px)}
#connections #connections-title{font-size:clamp(36px,4.45vw,64px);line-height:1.4;letter-spacing:-.045em}
#connections-title .type-phrase{display:inline-block}
#top #lgp-intro-title .lgp-type-row:nth-child(2),#top #lgp-intro-title .lgp-type-row:nth-child(3){display:inline-flex;vertical-align:baseline;margin:0;font-size:clamp(30px,4.2vw,58px);line-height:1.45}
@media(max-width:600px){#top #lgp-intro-title .lgp-type-row:nth-child(2),#top #lgp-intro-title .lgp-type-row:nth-child(3){font-size:clamp(20px,6vw,34px);line-height:1.6}}
@media(max-width:600px){#apps>.la-selector .la-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}#apps>.la-selector .la-option{padding-inline:12px}}
@media(max-width:600px){#top .lgp-type-row:first-child{font-size:clamp(82px,24vw,112px);line-height:1.16;margin-bottom:12px}#top .lgp-type-row:nth-child(2),#top .lgp-type-row:nth-child(3){font-size:clamp(30px,8.8vw,36px)}#connections #connections-title{font-size:clamp(30px,8.75vw,40px);line-height:1.55}}
@media(min-width:601px) and (max-width:850px){#connections .sc-result{padding:26px}#connections .sc-result .la-document-text,#connections .sc-result .la-artifact li{font-size:15px}#connections .sc-result table{font-size:14px}}
#connections{padding-top:76px;padding-bottom:76px}
#connections .sc-title-break{display:none}
#connections .la-overview{display:block}
#connections .la-overview h3{text-align:center;width:100%;max-width:none}
.sc-context-details summary{cursor:pointer;min-height:44px;font-size:12px;line-height:1.6;padding:10px 0;color:#476b5b}
.sc-context-details[open] summary{margin-bottom:10px}
.sc-context-details .sc-context-label{margin-top:8px}
@media(min-width:851px){.sc-context-details summary{font-weight:700;font-size:13px}}
@media(max-width:850px){#connections{padding-top:48px;padding-bottom:48px}#connections .sc-title-break{display:block}.sc-context-details{grid-column:1/-1}.sc-context-details[open]{display:block}.sc-context-details .sc-source{margin-bottom:7px}.sc-context-details summary{padding:10px 3px;font-size:12px}.sc-context-details .sc-memory{padding-top:8px;margin-top:10px}}
#connections .section-heading{justify-content:center;text-align:center;margin-bottom:28px}
#connections .section-heading h2{font-size:clamp(32px,4vw,52px);line-height:1.45;letter-spacing:-.045em}
#connections .la-selector{margin:0 auto 18px;max-width:620px}
#connections .la-selector legend{text-align:center;width:100%;margin-bottom:12px}
#connections .la-options{justify-content:center;gap:10px}
#connections .la-option{min-width:110px;justify-content:center;border-radius:30px;padding:12px 24px;background:#fff}
#connections .la-option:has(input:checked){background:#e0f2eb;border-color:#3e7466;box-shadow:0 3px 12px #244b4210}
#connections .la-overview{text-align:center;margin:12px 0 26px}
#connections .la-overview h3{font-size:clamp(20px,2vw,26px);letter-spacing:-.025em}
#connections .la-sample-label{text-align:center;font-size:12px;line-height:1.8}
#connections .sc-board{display:grid;grid-template-columns:minmax(210px,.29fr) minmax(0,1fr);gap:24px;align-items:start;padding:26px;border:1px solid #cee3dc;border-radius:30px;background:linear-gradient(120deg,#edf8f2ed,#f0f5fcee);box-shadow:0 20px 60px #244b4209;isolation:isolate}
.sc-context{min-width:0;padding:14px 0 0;color:#284e43}
.sc-context-label{font-weight:700;font-size:13px;margin:0 0 12px;letter-spacing:.04em}
.sc-request{background:#fff;border:1px solid #d9e7e1;border-radius:15px;padding:16px;font-size:15px;line-height:1.9;margin:0 0 25px;box-shadow:0 3px 8px #244b4205}
.sc-source,.sc-procedure{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid #d0e1d9;border-radius:11px;padding:13px 12px;min-height:48px;background:#ffffffbd;color:#244b42;font:inherit;font-size:13px;line-height:1.6;cursor:pointer;margin:0 0 10px}
.sc-source:hover,.sc-procedure:hover,.sc-related:hover{background:#e4f3ed;border-color:#74a193}
.sc-source:focus-visible,.sc-procedure:focus-visible,.sc-related:focus-visible{outline:3px solid #366e60;outline-offset:3px}
.sc-source svg{flex-shrink:0;width:21px;height:21px}
.sc-source>span:last-child{margin-left:auto}
.sc-memory{border-top:1px solid #ccdfd5;padding-top:20px;margin-top:24px}
.sc-memory .sc-source{flex-wrap:wrap;border:0;background:transparent;padding:0}
.sc-memory small{font-size:12px;font-weight:700;width:100%}
.sc-memory .sc-source>span:first-of-type{font-size:14px;font-weight:700}
.sc-procedure{border:0;background:transparent;padding:6px 0;font-size:12px;justify-content:space-between}
.sc-result{position:relative;min-width:0;background:#fff;border:1px solid #d1e0d9;border-radius:21px;padding:24px 34px 25px;box-shadow:0 12px 32px #31544809}
.sc-document-top{display:flex;gap:12px;justify-content:space-between;border-bottom:1px solid #dfebe5;padding-bottom:14px;font-size:11px;color:#5a756a}
#connections .sc-result .la-artifact{margin:0;padding:24px 0 20px;background:transparent;border:0;border-radius:0;box-shadow:none}
#connections .sc-result .artifact-kicker{display:none}
#connections .sc-result .la-artifact>h4{font-size:clamp(24px,2.4vw,34px);line-height:1.5;margin:0 0 20px;letter-spacing:-.03em;color:#183f34}
#connections .sc-result .la-artifact-section{margin:18px 0 0;padding:0}
#connections .sc-result .la-artifact-section h5{font-size:14px;line-height:1.7;margin:0 0 9px;color:#355d4e}
#connections .sc-result .la-document-text,#connections .sc-result .la-artifact li{font-size:15px;line-height:1.9}
#connections .sc-result .la-artifact ul{padding-left:1.35em;margin:0}
#connections .sc-result .la-table-wrap{margin:0;border:0;border-radius:0;overflow-x:auto}
#connections .sc-result table{font-size:14px;width:100%;border-collapse:collapse;margin:0}
#connections .sc-result caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#connections .sc-result th,#connections .sc-result td{padding:11px 12px;border-bottom:1px solid #e2eae6;vertical-align:top}
#connections .sc-result thead{background:#f0f6f3}
#connections .sc-result tbody tr:last-child{background:#e4f3ec;font-weight:700}
#connections .sc-result td:last-child{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
#connections .sc-result .la-artifact-note{font-size:11px;line-height:1.8;margin:17px 0 0;color:#5b7369}
.sc-related-list{display:flex;gap:8px;flex-wrap:wrap;padding-top:17px;border-top:1px solid #d9e6df;padding-right:65px}
.sc-related{display:inline-flex;justify-content:space-between;gap:12px;align-items:center;min-height:44px;border:1px solid #b9d2c6;background:#fff;color:#284e43;border-radius:24px;font:inherit;font-size:12px;padding:10px 15px;cursor:pointer}
.sc-peek{position:absolute;bottom:-17px;right:-15px;width:104px;height:104px;object-fit:contain;pointer-events:none;transform-origin:bottom center}
@media(prefers-reduced-motion:no-preference){.sc-peek{animation:sc-peek-in .65s cubic-bezier(.2,.7,.3,1) both}.sc-result{animation:sc-paper-in .35s ease-out both}@keyframes sc-peek-in{from{opacity:0;transform:translateY(28px) rotate(12deg)}to{opacity:1;transform:none}}@keyframes sc-paper-in{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:none}}}
#connections .sc-check{grid-column:1/-1;display:block;margin:0;padding:0 3px;font-size:12px;line-height:1.8;text-align:left;background:transparent;border:0;color:#557164}
.sc-expense-chart{margin:0;padding:16px 18px;background:#f5f9f7;border-radius:13px}
.sc-expense-chart figcaption{font-size:13px;font-weight:700;margin-bottom:15px}.sc-expense-chart small{font-size:10px;font-weight:400;margin-left:7px}
.sc-expense-chart>div{display:grid;grid-template-columns:78px 1fr 78px;gap:12px;align-items:center;font-size:12px;margin:13px 0}.sc-expense-chart i{height:17px;background:linear-gradient(90deg,#91c6b0,#b4d9ca);width:var(--bar);border-radius:0 5px 5px 0}.sc-expense-chart strong{text-align:right;font-variant-numeric:tabular-nums}
.sc-extra{margin:24px auto 0;max-width:620px;text-align:center;color:#426454;font-size:13px}.sc-extra summary{padding:12px;cursor:pointer;min-height:44px}.sc-extra fieldset{padding-top:12px}
#apps[data-la-scene="minutes"] .sc-result tbody tr:last-child{background:transparent;font-weight:400}
#apps[data-la-scene="minutes"] .sc-result table th:first-child{min-width:58px}
@media(max-width:1000px){#connections .sc-board{grid-template-columns:minmax(170px,.3fr) minmax(0,1fr);padding:20px;gap:18px}.sc-result{padding:20px 24px}.sc-request{font-size:14px;padding:13px}.sc-related-list{padding-right:0;padding-bottom:25px}.sc-peek{width:79px;height:79px}}
@media(max-width:850px){#connections .section-heading{margin-bottom:23px}#connections .sc-board{grid-template-columns:1fr;padding:12px;border-radius:22px;gap:14px}#connections .la-option{min-width:0;padding:12px 19px}#connections .la-options{gap:8px}.sc-context{padding:5px 5px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px 10px}.sc-context-label{display:none}.sc-request{grid-column:1/-1;font-size:13px;line-height:1.8;margin:0 0 4px;padding:12px 14px}.sc-source{font-size:11px;padding:9px;gap:6px;min-height:44px;margin:0}.sc-source svg{width:17px;height:17px}.sc-memory{grid-column:1/-1;padding:8px 0 0;margin:2px 0 0;border-top:1px solid #d1e3d9}.sc-memory .sc-source{flex-wrap:nowrap;gap:9px;min-height:30px}.sc-memory small{width:auto;flex-shrink:0;font-size:10px}.sc-memory .sc-source>span:first-of-type{font-size:11px}.sc-procedure{grid-column:1/-1;min-height:32px;margin:0}.sc-result{padding:17px;border-radius:16px}.sc-document-top{font-size:9px;gap:6px;padding-bottom:12px}#connections .sc-result .la-artifact{padding:20px 0 17px}#connections .sc-result .la-artifact>h4{font-size:24px;margin-bottom:17px}#connections .sc-result .la-document-text,#connections .sc-result .la-artifact li{font-size:13px;line-height:1.9}#connections .sc-result .la-artifact-section h5{font-size:12px}#connections .sc-result table{font-size:11px}#connections .sc-result th,#connections .sc-result td{padding:9px 7px}#connections .sc-result .la-artifact-note{font-size:10px}.sc-related-list{gap:7px;padding-bottom:34px}.sc-related{font-size:11px;padding:10px 12px}.sc-peek{width:77px;height:77px;bottom:-10px;right:-7px}#connections .sc-check{padding:3px 5px 4px;font-size:10px}.sc-expense-chart{padding:13px 10px}.sc-expense-chart>div{grid-template-columns:60px 1fr 65px;gap:7px;font-size:10px}.sc-expense-chart small{display:block;margin-left:0}.sc-extra{font-size:12px}}

/* Audit B06/B16/B17: readable meaning units and usable targets, same palette. */
#top .lgp-lead{max-width:660px;font-size:clamp(14px,1.3vw,18px);line-height:1.9}
.ly-hero-copy>.content-button{margin:4px 0 18px;min-height:44px}
.ly-search-shortcuts a,.lgp-product-tags>a{display:inline-flex;align-items:center;min-height:44px}
.sc-consult{text-align:center;margin:16px 0 24px}.sc-consult .content-button{min-height:44px}
@media(min-width:601px) and (max-width:1100px){.ui-hd .header-actions{display:flex!important;margin-left:auto}.ui-hd .header-contact{display:inline-flex!important;align-items:center;min-height:44px}}
#lgp-work-title .type-phrase{display:inline-block}
.capability-group h3 a{display:block;text-wrap:balance;word-break:normal;line-break:strict;font-size:clamp(18px,2vw,23px);line-height:1.6}
@media(max-width:600px){
 .ui-hd .header-actions{display:flex!important;margin-left:auto}.ui-hd .header-contact{display:inline-flex!important;min-height:44px;padding:8px;font-size:12px;white-space:nowrap}.ui-hd-in{gap:8px}.ui-hd .brand-word{font-size:16px}
 #capabilities .capability-groups{grid-template-columns:1fr}
 #capabilities .capability-group{padding:16px 20px}
 #capabilities .capability-group h3{margin:8px 0;font-size:20px}
 #capabilities .capability-group ul{margin:8px 0 0;padding:0}
 #capabilities .capability-group li{padding:0;margin:0;border:0}
 #about .lgp-product-copy>small{display:block;font-size:13px;line-height:1.8}
 #top .ly-search label,#top .ly-search-shortcuts,#top .ly-search-shortcuts a{font-size:12px}
 #top .ly-facts small{font-size:12px}
 #about .lgp-product-tags,#about .lgp-product-tags a{font-size:12px}
 #conditions .small,#conditions .important-note,#conditions .ct-runtime-note,#contact .mail-note{font-size:13px;line-height:1.9}
 #connections .la-sample-label{font-size:12px}
 #about .ly-diagram-note,#memory .memory-disclosure>.scope-note,.ls-reconstruction,.ls-bottom>p,#connections .la-footnote,#demo .lgp-work-note{font-size:12px;line-height:1.85}
 body #cases .ls-reconstruction,body #cases .ls-bottom>p,body #connections .la-bottom>p,body #demo .lgp-workspace-footer>p{font-size:12px;line-height:1.85}
 #capabilities .capability-group ul{display:flex;flex-wrap:wrap;gap:0 16px}
 #capabilities .capability-group li a{display:inline-flex;align-items:center;min-height:44px}
 #connections .sc-source,#connections .sc-related{font-size:13px;min-height:44px}
 #connections .sc-memory .sc-source,#connections .sc-procedure{min-height:44px;font-size:13px}
 #connections .sc-memory small,#connections .sc-memory .sc-source>span:first-of-type{font-size:12px}
 #connections .sc-document-top{font-size:12px;flex-wrap:wrap}
 #connections .sc-result .la-artifact-note,#connections .sc-check{font-size:12px;line-height:1.8}
 #connections .sc-result table,#connections .sc-expense-chart>div{font-size:12px}
 #connections .sc-result th,#connections .sc-result td{padding:9px 5px}
 #connections .sc-expense-chart small{font-size:12px}
 #memory .ct-node-body,#memory .ct-node-note{font-size:12px}
 #memory .source-node,#memory .result-node{height:auto;min-height:150px}
 #characters .character-card{padding-block:16px}
 .site-footer a{display:inline-flex;align-items:center;min-height:44px}
}

/* The two companions sit below artifact controls, never over the text. */
#connections .sc-result .sc-related-list{padding-bottom:120px;padding-right:0}
#connections .sc-result .sc-peek{position:absolute;width:158px;height:158px;right:6px;bottom:1px;object-fit:contain;pointer-events:none}
#connections .sc-result .sc-peek-friend{position:absolute;width:112px;height:112px;right:135px;bottom:4px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 8px 7px #214c4312)}
@media(max-width:600px){#connections .sc-result .sc-related-list{padding-bottom:112px}#connections .sc-result .sc-peek{width:143px;height:143px;right:0;bottom:0}#connections .sc-result .sc-peek-friend{width:100px;height:100px;right:116px;bottom:2px}}
