/* Shared app navigation. Keep this file after each page's existing styles. */
.og-linked-site .header { height: auto; min-height: 92px; }
.og-linked-site .header .nav { min-height: 92px; height: auto; gap: 20px; }
.og-linked-site .header .wrap { width: min(1280px, calc(100% - 96px)); margin-inline: auto; }
.og-linked-site .og-main-nav { display: flex; align-items: center; gap: 20px; margin-left: auto; font-size: .8125rem; }
.og-linked-site .og-main-nav a { color: var(--muted); text-decoration: none; white-space: nowrap; padding: 12px 0; }
.og-linked-site .og-main-nav a:hover,
.og-linked-site .og-main-nav a[aria-current="page"] { color: var(--text); }
.og-linked-site .og-main-nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: 6px; }
.og-linked-site .header .nav-actions { flex-shrink: 0; gap: 10px; }
.og-linked-site .header .nav-actions > .button { display: none; }
.og-linked-site .menu-toggle { display: none; }
.og-linked-site .og-main-nav a:focus-visible,
.og-linked-site .og-footer-apps a:focus-visible { outline: 3px solid var(--purple, var(--acid)); outline-offset: 3px; }
.og-linked-site .footer-top { align-items: flex-start; gap: 30px; }
.og-linked-site .og-footer-apps { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 14px 24px; max-width: 860px; font-size: .8125rem; line-height: 1.6; }
.og-linked-site .og-footer-apps a { color: var(--muted); text-decoration: none; }
.og-linked-site .og-footer-apps a:hover { color: var(--text); text-decoration: underline; text-underline-offset: 4px; }
.og-linked-site .og-policy-apps { border-top: 1px solid var(--line); padding: 22px 0 28px; margin-top: 22px; }
.og-linked-site .og-policy-apps .og-footer-apps { justify-content: flex-start; max-width: none; }
.og-more-apps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 22px; }
.og-collection-card { display: flex; flex-direction: column; align-items: flex-start; padding: 28px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); min-width: 0; }
.og-collection-card > img { width: 48px; height: 48px; border-radius: 12px; object-fit: contain; margin-bottom: 24px; }
.og-collection-card h3 { font-size: 1.55rem; line-height: 1.15; letter-spacing: -.035em; margin: 0 0 14px; }
.og-collection-card p { font-size: .9375rem; line-height: 1.65; margin: 0 0 24px; }
.og-collection-card .og-card-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; width: 100%; margin-top: auto; }
.og-collection-card .og-card-platform { font-size: .75rem; color: var(--muted); }
.og-linked-site:not(.og-nav-ready) .header .nav { flex-wrap: wrap; padding-block: 16px; }
.og-linked-site:not(.og-nav-ready) .og-main-nav { position: static; display: flex; flex-wrap: wrap; order: 3; width: 100%; margin: 0; gap: 8px 20px; padding: 0; border: 0; }
.og-linked-site:not(.og-nav-ready) .menu-toggle { display: none !important; }
@media (max-width: 1100px) {
  .og-linked-site .header,
  .og-linked-site .header .nav { min-height: 78px; }
  .og-linked-site .header .wrap { width: calc(100% - 48px); }
  .og-linked-site .header .nav-actions { margin-left: auto; }
  .og-linked-site.og-nav-ready .menu-toggle { width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 50%; background: transparent; color: var(--text); display: grid; place-items: center; padding: 10px; }
  .og-linked-site .menu-toggle svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.6; }
  .og-linked-site.og-nav-ready .og-main-nav { display: none; position: absolute; left: 0; right: 0; top: 100%; margin: 0; padding: 16px 24px 24px; border-bottom: 1px solid var(--line); background: var(--bg); box-shadow: 0 15px 25px #0002; max-height: calc(100dvh - 90px); overflow-y: auto; z-index: 20; }
  .og-linked-site.og-nav-ready .og-main-nav.is-open { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 24px; }
  .og-linked-site .og-main-nav a { padding: 13px 4px; border-bottom: 1px solid var(--line); font-size: .9375rem; }
}
@media (max-width: 900px) {
  .og-more-apps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .og-linked-site .og-footer-apps { max-width: 560px; }
}
@media (max-width: 620px) {
  .og-linked-site .header,
  .og-linked-site .header .nav { min-height: 72px; }
  .og-linked-site .header .wrap { width: calc(100% - 40px); }
  .og-linked-site .header .nav { gap: 10px; }
  .og-linked-site .header .nav-actions { gap: 8px; }
  .og-linked-site.og-nav-ready .menu-toggle { width: 40px; height: 40px; }
  .og-linked-site.og-nav-ready .og-main-nav.is-open { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 18px; }
  .og-linked-site .og-main-nav a { white-space: normal; }
  .og-linked-site .og-footer-apps { justify-content: flex-start; gap: 14px 22px; }
  .og-linked-site .header .nav-actions .back { display: none; }
  .og-more-apps { grid-template-columns: 1fr; gap: 20px; margin-top: 24px; }
  .og-collection-card { padding: 25px; }
}
