/* Neurohaven v183 — Apps room */
.nh-apps-room{display:grid;gap:1.25rem;min-width:0}
.nh-apps-room__intro{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(18rem,.75fr);gap:clamp(1.2rem,3vw,2.5rem);align-items:end;padding:clamp(1.4rem,3vw,2.2rem);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));border-radius:1.35rem;background:radial-gradient(circle at 12% 0%,rgba(52,215,238,.12),transparent 34%),linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));box-shadow:0 1.4rem 4rem rgba(0,0,0,.16)}
.nh-apps-room__eyebrow{margin:0 0 .65rem;color:var(--accent);font:800 .68rem/1.2 var(--font-mono,monospace);letter-spacing:.16em;text-transform:uppercase}
.nh-apps-room__intro h2{max-width:18ch;margin:0;font-size:clamp(1.75rem,3.5vw,3.25rem);line-height:1.02}
.nh-apps-room__intro p:not(.nh-apps-room__eyebrow){max-width:60ch;margin:.9rem 0 0;color:var(--muted);line-height:1.65}
.nh-apps-room__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}
.nh-apps-room__facts>div{display:grid;align-content:center;min-height:6.2rem;padding:.8rem;border:1px solid var(--line);border-radius:.9rem;background:rgba(4,10,21,.46);text-align:center}
.nh-apps-room__facts strong{color:var(--ink);font-size:clamp(1.1rem,2vw,1.55rem)}
.nh-apps-room__facts span{margin-top:.25rem;color:var(--muted);font-size:.67rem;line-height:1.3;text-transform:uppercase;letter-spacing:.06em}
.nh-apps-room__notice{display:flex;gap:.8rem;align-items:flex-start;padding:.9rem 1rem;border:1px solid rgba(127,230,208,.18);border-radius:.9rem;background:rgba(127,230,208,.045)}
.nh-apps-room__notice>span{display:grid;place-items:center;flex:0 0 1.8rem;height:1.8rem;border-radius:50%;background:rgba(127,230,208,.12);color:var(--accent)}
.nh-apps-room__notice p{margin:0;color:var(--ink-dim);font-size:.82rem;line-height:1.55}
.nh-apps-room__filters{display:flex;flex-wrap:wrap;gap:.5rem;padding:.15rem 0}
.nh-apps-room__filters button{min-height:2.35rem;padding:.55rem .78rem;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink-dim);font:700 .72rem/1 var(--font-mono,monospace);cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}
.nh-apps-room__filters button span{display:inline-grid;place-items:center;min-width:1.35rem;height:1.35rem;margin-left:.38rem;border-radius:999px;background:rgba(255,255,255,.06);font-size:.62rem}
.nh-apps-room__filters button:hover,.nh-apps-room__filters button:focus-visible,.nh-apps-room__filters button.is-active{border-color:color-mix(in srgb,var(--accent) 70%,var(--line));background:color-mix(in srgb,var(--accent) 11%,var(--panel));color:var(--ink);outline:none}
.nh-apps-room__filters button.is-active{box-shadow:0 0 0 .18rem rgba(52,215,238,.06)}
.nh-apps-room__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.nh-app-card{min-width:0}
.nh-app-card[hidden]{display:none!important}
.nh-app-card__launch{display:grid;height:100%;grid-template-rows:11.5rem 1fr;overflow:hidden;border:1px solid var(--line);border-radius:1.15rem;background:linear-gradient(155deg,rgba(255,255,255,.055),rgba(255,255,255,.018));color:var(--ink);box-shadow:0 .8rem 2.2rem rgba(0,0,0,.14);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.nh-app-card__launch:hover,.nh-app-card__launch:focus-visible{transform:translateY(-.2rem);border-color:color-mix(in srgb,var(--accent) 68%,var(--line));box-shadow:0 1.25rem 3rem rgba(0,0,0,.24),0 0 2.2rem rgba(52,215,238,.07);outline:none}
.nh-app-card__visual{position:relative;display:block;overflow:hidden;background:#07111f}
.nh-app-card__visual img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease,filter .35s ease;filter:saturate(.86) contrast(1.04)}
.nh-app-card__launch:hover .nh-app-card__visual img{transform:scale(1.025);filter:saturate(1) contrast(1.05)}
.nh-app-card__wash{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(3,8,17,.86) 100%),radial-gradient(circle at 85% 12%,rgba(52,215,238,.15),transparent 32%);pointer-events:none}
.nh-app-card__status{position:absolute;top:.7rem;right:.7rem;padding:.35rem .52rem;border:1px solid rgba(190,244,255,.2);border-radius:999px;background:rgba(4,10,20,.76);backdrop-filter:blur(.45rem);color:#dcfbff;font:800 .6rem/1 var(--font-mono,monospace);letter-spacing:.05em;text-transform:uppercase}
.nh-app-card__body{display:flex;flex-direction:column;min-width:0;padding:1rem 1.05rem 1.1rem}
.nh-app-card__category{color:var(--accent);font:800 .62rem/1.2 var(--font-mono,monospace);letter-spacing:.08em;text-transform:uppercase}
.nh-app-card__body strong{margin-top:.45rem;font-size:1.15rem;line-height:1.2}
.nh-app-card__body em{margin-top:.18rem;color:var(--ink-dim);font-size:.78rem;font-style:normal;font-weight:650}
.nh-app-card__description{margin-top:.65rem;color:var(--muted);font-size:.8rem;line-height:1.55;flex:1}
.nh-app-card__action{display:flex;justify-content:space-between;align-items:center;margin-top:.9rem;padding-top:.75rem;border-top:1px solid var(--line);color:var(--ink-dim);font-size:.72rem;font-weight:750}
.nh-app-card__action b{color:var(--accent);font-size:1rem}
.nh-app-viewer{position:fixed;inset:0;z-index:10030;display:grid;place-items:center;padding:clamp(.5rem,2vw,1.25rem);background:rgba(1,5,12,.84);backdrop-filter:blur(.65rem) saturate(115%)}
.nh-app-viewer[hidden]{display:none!important}
.nh-app-viewer__dialog{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(96rem,96vw);height:min(56rem,92vh);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));border-radius:1rem;background:#050b16;box-shadow:0 2rem 7rem rgba(0,0,0,.58)}
.nh-app-viewer__header{display:flex;align-items:center;gap:.65rem;min-height:3.5rem;padding:.55rem .65rem .55rem 1rem;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(17,30,49,.98),rgba(8,16,30,.98))}
.nh-app-viewer__signal{width:.48rem;height:.48rem;border-radius:50%;background:var(--accent);box-shadow:0 0 1rem rgba(52,215,238,.7)}
.nh-app-viewer__title{min-width:0;margin:0;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nh-app-viewer__external{margin-left:auto;padding:.55rem .7rem;border:1px solid var(--line);border-radius:.65rem;color:var(--ink-dim);font-size:.68rem;font-weight:750}
.nh-app-viewer__external:hover{border-color:var(--accent);color:var(--ink)}
.nh-app-viewer__close{display:grid;place-items:center;width:2.35rem;height:2.35rem;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.025);color:var(--ink);font-size:1.25rem;cursor:pointer}
.nh-app-viewer__stage{position:relative;min-height:0;background:#02050a}
.nh-app-viewer__stage iframe{width:100%;height:100%;border:0;background:#fff}
.nh-app-viewer__status{position:absolute;inset:0;display:grid;place-items:center;z-index:2;color:var(--muted);font:700 .75rem/1 var(--font-mono,monospace);background:#050b16}
.nh-app-viewer__status[hidden]{display:none!important}
html.nh-framed body:has(.nh-apps-room) .site-footer,html.nh-framed body:has(.nh-apps-room) .mobile-sticky-cta{display:none!important}
html.nh-framed body:has(.nh-apps-room) #main{padding-top:.2rem}
html.nh-framed body:has(.nh-apps-room) .page-hero{padding-top:clamp(1rem,2vw,1.6rem);padding-bottom:1rem}
html.nh-framed body:has(.nh-apps-room) .page-hero .breadcrumb{display:none}
html.nh-framed body:has(.nh-apps-room) .section-block{padding-top:.5rem}
@media(max-width:68rem){.nh-apps-room__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nh-apps-room__intro{grid-template-columns:1fr}.nh-apps-room__facts{max-width:38rem}}
@media(max-width:42rem){.nh-apps-room__grid{grid-template-columns:1fr}.nh-apps-room__facts{grid-template-columns:repeat(3,1fr)}.nh-app-card__launch{grid-template-rows:10.5rem 1fr}.nh-app-viewer{padding:.35rem}.nh-app-viewer__dialog{width:100%;height:94vh;border-radius:.8rem}.nh-app-viewer__external{display:none}}
@media(prefers-reduced-motion:reduce){.nh-app-card__launch,.nh-app-card__visual img,.nh-apps-room__filters button{transition:none!important}}
