/* ===================================================================
   HUB SECTION SPACING - single source of truth
   Loaded LAST so it wins over per-module rules.

   Every gap between top-level blocks on the home page is the same:
   Study -> Fun -> Apps -> Music -> News -> Downloads -> Uploads -> Contact.
   Change --hub-section-gap and the whole page follows.
   Do not re-add per-section margin-bottom / padding-bottom / separator
   lines in the module stylesheets.
   =================================================================== */

:root {
    --hub-section-gap: 28px;
}

.app-icons-section,
.player-section,
.news-section,
.downloads-section,
.uploads-section,
.contact-section {
    margin-top: 0;
    margin-bottom: var(--hub-section-gap);
    padding-bottom: 0;
    border-bottom: none;
}

/* rows that sit inside the apps section use the same gap */
.app-games-title,
.app-tools-title {
    margin-top: var(--hub-section-gap);
}

@media (max-width: 767px) {
    :root { --hub-section-gap: 18px; }
}

@media (max-height: 500px) and (orientation: landscape) {
    :root { --hub-section-gap: 18px; }
}


/* ── FOOTER LEGAL TEXT ───────────────────────────────────────────────
   Sits inside the existing .main-footer, above the copyright line. It
   is legal text, so it is deliberately quiet: small, low-contrast and
   widely spaced, and must not compete with the app tiles above it. */
.hub-legal {
    max-width: 820px;
    margin: 0 auto 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    display: flex;
    flex-direction: column;
    gap: 12px;
    text-align: left;
}

.hub-legal-title {
    margin: 0 0 4px;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .72);
}

/* Justified, ama kelimeler tire ile BÖLÜNMEYECEK (Hakan kuralı):
   hyphens:none + word-break:keep-all. overflow-wrap:normal, aksi halde
   uzun kelime yine ortadan kırılır. */
.hub-legal p {
    margin: 0;
    font-size: .82rem;
    line-height: 1.65;
    color: rgba(255, 255, 255, .58);
    text-align: justify;
    text-justify: inter-word;
    hyphens: none;
    -webkit-hyphens: none;
    word-break: keep-all;
    overflow-wrap: normal;
}

@media (max-width: 767px) {
    .hub-legal { padding: 0 4px 14px; }
    .hub-legal p { font-size: .78rem; }
}
