.apps-page { background: #031019; }
.apps-hero {
  position: relative;
  min-height: 620px;
  display: grid;
  place-items: center;
  padding: calc(var(--header-h, 82px) + 80px) 22px 90px;
  overflow: hidden;
  background:
    radial-gradient(circle at 15% 20%, rgba(0, 189, 231, .18), transparent 34%),
    radial-gradient(circle at 82% 32%, rgba(119, 63, 255, .18), transparent 34%),
    linear-gradient(160deg, #031019, #061824 56%, #040c15);
}
.apps-hero-grid { position:absolute; inset:0; opacity:.24; background-image:linear-gradient(rgba(72,216,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(72,216,255,.12) 1px,transparent 1px); background-size:42px 42px; mask-image:linear-gradient(to bottom,black,transparent 88%); }
.apps-hero-content { position:relative; z-index:1; width:min(980px,100%); text-align:center; }
.apps-hero h1 { margin:.2em 0; font-size:clamp(3rem,8vw,6.6rem); line-height:.94; letter-spacing:-.055em; }
.apps-hero p:not(.eyebrow) { max-width:760px; margin:22px auto 0; color:var(--muted,#a5b8c4); font-size:clamp(1.05rem,2vw,1.28rem); }
.apps-hero .hero-actions { justify-content:center; margin-top:30px; }
.apps-summary { width:min(1180px,calc(100% - 32px)); margin:-42px auto 0; position:relative; z-index:2; display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.apps-summary article { padding:22px; border:1px solid rgba(87,216,255,.2); border-radius:18px; background:rgba(5,23,34,.94); box-shadow:0 18px 50px rgba(0,0,0,.25); }
.apps-summary strong { display:block; color:#7ae9ff; font-size:1.15rem; }
.apps-summary span { color:#a9bdc7; font-size:.9rem; }
.apps-catalog,.access-model { width:min(1180px,calc(100% - 32px)); margin:92px auto 0; }
.apps-filter { display:flex; flex-wrap:wrap; gap:10px; margin:28px 0; }
.filter-button { border:1px solid rgba(104,221,255,.26); color:#cceaf1; background:rgba(8,31,44,.72); border-radius:999px; padding:10px 16px; cursor:pointer; font:inherit; }
.filter-button:hover,.filter-button:focus-visible,.filter-button.is-active { border-color:#6be7ff; color:#fff; background:rgba(17,79,99,.58); box-shadow:0 0 20px rgba(66,216,255,.14); }
.apps-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.app-hub-card { min-height:410px; display:flex; flex-direction:column; padding:24px; border:1px solid rgba(101,215,255,.17); border-radius:22px; background:linear-gradient(155deg,rgba(9,31,44,.94),rgba(5,18,29,.96)); box-shadow:0 24px 55px rgba(0,0,0,.22); transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.app-hub-card:hover { transform:translateY(-5px); border-color:rgba(98,231,255,.5); box-shadow:0 28px 70px rgba(0,0,0,.32),0 0 28px rgba(56,205,255,.08); }
.app-hub-card.featured { grid-column:span 2; background:linear-gradient(145deg,rgba(7,47,65,.97),rgba(17,18,46,.97)); }
.app-card-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.app-icon { display:grid; place-items:center; width:52px; height:52px; border-radius:16px; border:1px solid rgba(100,229,255,.35); background:rgba(31,118,141,.2); color:#84efff; font-weight:800; letter-spacing:.08em; }
.app-hub-card h3 { margin:12px 0 8px; font-size:1.5rem; }
.app-hub-card p { color:#a9bdc7; }
.app-hub-card ul { margin:16px 0 24px; padding-left:18px; color:#c9d8de; }
.app-hub-card li+li { margin-top:7px; }
.app-entry { margin-top:auto; display:inline-flex; justify-content:center; align-items:center; min-height:45px; padding:10px 16px; border-radius:12px; border:1px solid rgba(94,230,255,.42); color:#e9fbff; background:rgba(20,94,117,.28); text-decoration:none; font-weight:700; cursor:pointer; }
.app-entry:hover,.app-entry:focus-visible { background:rgba(31,135,164,.38); border-color:#70eaff; }
.app-entry.disabled { opacity:.55; cursor:not-allowed; }
.status-pill.planned { color:#d8c5ff; border-color:rgba(166,122,255,.4); background:rgba(108,61,190,.16); }
.status-pill.restricted { color:#ffd89b; border-color:rgba(255,190,85,.38); background:rgba(149,89,18,.17); }
.app-hub-card.is-hidden { display:none; }
.access-flow { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin-top:30px; }
.access-flow article { padding:22px 18px; border:1px solid rgba(100,218,255,.16); border-radius:18px; background:rgba(5,24,35,.82); }
.access-flow span { color:#75e9ff; font-weight:800; }
.access-flow h3 { margin:8px 0; }
.access-flow p { color:#a7bbc4; font-size:.92rem; }
@media (max-width:980px){.apps-grid{grid-template-columns:repeat(2,1fr)}.access-flow{grid-template-columns:repeat(2,1fr)}.apps-summary{grid-template-columns:repeat(2,1fr)}}
@media (max-width:680px){.apps-hero{min-height:570px;padding-top:150px}.apps-summary,.apps-grid,.access-flow{grid-template-columns:1fr}.app-hub-card.featured{grid-column:auto}.apps-filter{display:grid;grid-template-columns:repeat(2,1fr)}.filter-button{width:100%}}
