/* ──────────────────────────────────────────────────────────────
   Link in Bio · Public-Page (links.engelsburg.*)
   Minimalistische Linktree-Style-Seite.
   ────────────────────────────────────────────────────────────── */

@font-face {
    font-family: 'Gotham';
    src: url('/fonts/Gotham-Book.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Gotham';
    src: url('/fonts/Gotham-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

:root {
    --bg: #111;
    --fg: #fff;
    --ci: #b49d45;
    --btn-bg: #fff;
    --btn-fg: #111;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body.links {
    font-family: 'Gotham', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
    background: var(--bg);
    color: var(--fg);
    min-height: 100dvh;
    display: flex;
    justify-content: center;
    padding: 48px 20px 80px;
    -webkit-font-smoothing: antialiased;
}

.links-card {
    width: 100%;
    max-width: 480px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.links-logo {
    display: block;
}
.links-logo img {
    width: 220px;
    max-width: 75vw;
    height: auto;
    display: block;
}

/* ── Icon-Top-Row (icon_only-Links) ────────────────────────── */
.links-icons {
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: -16px; /* zieht die Icons enger an das Logo, wie bei Linktree */
}
.links-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    color: var(--fg);
    text-decoration: none;
    border-radius: 50%;
    transition: color .18s ease, transform .18s ease;
}
.links-icon:hover,
.links-icon:focus-visible {
    color: var(--ci);
    transform: translateY(-1px);
    outline: none;
}
.links-icon svg {
    width: 26px;
    height: 26px;
    display: block;
}
.links-icon-text {
    font-size: 22px;
    line-height: 1;
}

/* ── Buttonliste (normale Links) ───────────────────────────── */
.links-list {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.links-btn {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    padding: 16px 24px;
    background: var(--btn-bg);
    color: var(--btn-fg);
    text-decoration: none;
    font-weight: 700;
    font-size: 16px;
    letter-spacing: 0.02em;
    border-radius: 100px;
    transition: background-color .18s ease, color .18s ease, transform .18s ease;
}
.links-btn:hover,
.links-btn:focus-visible {
    background: var(--ci);
    color: var(--btn-fg);
    transform: translateY(-1px);
    outline: none;
}

.links-btn__icon {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.links-btn__icon svg {
    width: 22px;
    height: 22px;
    display: block;
}
.links-btn__icon .links-icon-text {
    font-size: 20px;
}

.links-btn__text {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
    text-align: center;
}
.links-btn--with-icon .links-btn__text {
    text-align: left;
    /* Visuelle Mitte: das Icon links nimmt 32 + 16 = 48 px ein,
       Padding rechts ist 24 px → 24 px Spacer rechts gleicht aus. */
    padding-right: 24px;
}
.links-btn__label {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.links-btn__sub {
    display: block;
    font-weight: 400;
    font-size: 13px;
    opacity: .75;
    letter-spacing: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.links-empty {
    color: #666;
    font-size: 15px;
    text-align: center;
}

@media (max-width: 480px) {
    body.links { padding: 32px 16px 60px; }
    .links-card { gap: 32px; }
    .links-btn { padding: 14px 20px; font-size: 15px; }
    .links-btn--with-icon .links-btn__text { padding-right: 20px; }
    .links-icons { gap: 14px; }
    .links-icon { width: 36px; height: 36px; }
    .links-icon svg { width: 24px; height: 24px; }
}
