/* ═══════════════════════════════════════════
   ASTROMANTIE LÄNDERHOROSKOPE — Styles
   Scoped unter .astro-land-container
   Nutzt ausschließlich bestehende CSS-Variablen
   ═══════════════════════════════════════════ */

/* ── Hero ── */
/* Tab-Mode bekommt seinen Top-Abstand jetzt vom Wrapper in account.js renderLand().
   Page-Mode hat keinen solchen Wrapper, daher hier explizit für die Standalone-Seite. */
.astro-land-page-mode .astro-hero {
    padding-top: 40px;
}
@media (max-width: 767px) {
    .astro-land-page-mode .astro-hero {
        padding-top: 28px;
    }
}

.astro-land-hero {
    text-align: center;
    padding: 40px 20px 30px;
    background: linear-gradient(180deg, rgba(167,139,250,0.08) 0%, transparent 100%);
    border-radius: 16px;
    margin-bottom: 24px;
}
.astro-light-theme .astro-land-hero {
    background: linear-gradient(180deg, rgba(201,168,76,0.06) 0%, transparent 100%);
}
.astro-land-hero-title {
    font-family: 'Cinzel', serif;
    font-size: 32px;
    font-weight: 600;
    color: var(--astro-gold);
    margin: 0 0 8px;
}
.astro-land-hero-subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    color: #ffffff;
    margin: 0 0 16px;
    line-height: 1.6;
}
.astro-light-theme .astro-land-hero-subtitle {
    color: var(--astro-text-mid);
}
.astro-land-hero-badge {
    display: inline-block;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: var(--astro-gold);
    background: rgba(232,201,106,0.08);
    border: 1px solid rgba(232,201,106,0.2);
    border-radius: 20px;
    padding: 6px 16px;
    letter-spacing: 0.02em;
}

/* ── Region Filter Pills ── */
.astro-land-filter-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    margin-bottom: 14px;
    padding: 0 8px;
}

/* Suchleiste mittig direkt ueber dem Laender-Flaggen-Grid */
.astro-land-search-bar {
    display: flex;
    align-items: center;
    gap: 0;
    width: 100%;
    max-width: 400px;
    margin: 4px auto 18px;
    padding: 0 12px;
    background: var(--astro-card-bg);
    border: 1px solid var(--astro-card-border);
    border-radius: 12px;
    transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}
.astro-land-search-bar:focus-within {
    outline: none;
    border-color: rgba(232, 201, 106, 0.6);
    box-shadow: 0 0 0 3px rgba(232, 201, 106, 0.15);
    background: var(--astro-card-bg);
}
body.astro-light-theme .astro-land-search-bar:focus-within {
    border-color: rgba(180, 140, 60, 0.7);
    box-shadow: 0 0 0 3px rgba(180, 140, 60, 0.18);
}
.astro-land-search-icon {
    display: inline-flex;
    align-items: center;
    color: rgba(232,201,106,0.7);
    flex: 0 0 auto;
}
.astro-land-search-input {
    flex: 1 1 auto;
    background: transparent;
    border: 0;
    outline: none;
    box-shadow: none;
    /* Handy: ohne appearance:none rendert iOS type=search als natives weißes
       Suchfeld (Lupe + X), das das dunkle Design ignoriert und nach Autofill
       den Fokus festhält. Spiegelt .ek-search-input (Dein Moment). */
    -webkit-appearance: none;
    appearance: none;
    -webkit-tap-highlight-color: transparent;
    color: var(--astro-text, #fff);
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    padding: 11px 10px;
    min-width: 0;
}
.astro-land-search-input:focus,
.astro-land-search-input:focus-visible,
.astro-land-search-input:active {
    outline: none !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
    border: 0 !important;
    -webkit-tap-highlight-color: transparent !important;
}
.astro-land-search-input::placeholder {
    color: rgba(255,255,255,0.4);
    font-style: italic;
}
.astro-light-theme .astro-land-search-input::placeholder {
    color: rgba(74,61,36,0.55);
}
.astro-land-search-input::-webkit-search-decoration,
.astro-land-search-input::-webkit-search-cancel-button {
    -webkit-appearance: none;
}
.astro-land-search-clear {
    flex: 0 0 auto;
    background: transparent;
    border: 0;
    cursor: pointer;
    color: rgba(255,255,255,0.55);
    padding: 6px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.astro-land-search-clear:hover {
    color: rgba(232,201,106,1);
    background: rgba(232,201,106,0.08);
}
.astro-light-theme .astro-land-search-clear {
    color: rgba(74,61,36,0.55);
}
.astro-light-theme .astro-land-search-clear:hover {
    color: #a07a20;
    background: rgba(180,140,60,0.1);
}
.astro-land-empty-search {
    text-align: center;
    color: var(--astro-text-dim, rgba(255,255,255,0.5));
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    padding: 40px 20px;
}
@media (max-width: 600px) {
    .astro-land-search-bar {
        max-width: none;
        margin-left: 12px;
        margin-right: 12px;
    }
    .astro-land-search-input {
        font-size: 16px; /* iOS Zoom unterdruecken */
        min-height: 44px;
        padding: 11px 8px;
    }
}
.astro-land-pill {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    padding: 7px 16px;
    border-radius: 20px;
    border: 1px solid var(--astro-card-border);
    background: var(--astro-card-bg);
    color: var(--astro-text-mid);
    cursor: pointer;
    transition: all 0.2s;
    white-space: nowrap;
}
.astro-land-pill:hover {
    border-color: var(--astro-accent);
    color: var(--astro-text);
}
.astro-land-pill.active {
    background: var(--astro-btn-gradient);
    color: #fff;
    border-color: transparent;
}

/* ── Featured Card (Japan) ── */
.astro-land-featured-card {
    background: var(--astro-card-bg);
    border: 1px solid var(--astro-card-border);
    border-radius: 16px;
    padding: 28px;
    margin-bottom: 24px;
    display: flex;
    gap: 28px;
    align-items: flex-start;
    justify-content: center;
    position: relative;
    overflow: hidden;
}
.astro-land-featured-left {
    flex: 0 1 auto;
    min-width: 0;
    max-width: 480px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.astro-land-featured-right {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-left: 28px;
    margin-top: 0;
}
.astro-land-radix-title {
    font-family: 'Cinzel', serif;
    font-size: 22px;
    font-weight: 600;
    color: var(--astro-text);
    margin: 0 0 8px;
    align-self: center;
    margin-right: 16px;
}
.astro-land-radix-title-star {
    color: var(--astro-gold);
}
.astro-land-featured-badge {
    display: inline-block;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    color: #4ade80;
    background: rgba(74,222,128,0.1);
    border: 1px solid rgba(74,222,128,0.25);
    border-radius: 12px;
    padding: 4px 12px;
    margin: 0;
    letter-spacing: 0.02em;
}
.astro-land-featured-name {
    font-family: 'Cinzel', serif;
    font-size: 22px;
    font-weight: 600;
    color: var(--astro-text);
    margin: 0;
}

/* Featured Topline: Flagge + Name + Badge horizontal */
.astro-land-featured-topline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
}
.astro-land-featured-topline .astro-land-country-flag {
    margin: 0;
    flex-shrink: 0;
}
/* Nach Kauf: kein Vorschau-Badge → Flag + Name mittig */
.astro-land-featured-topline.is-no-badge {
    justify-content: center;
}

/* Meta Chips: Gründung | Ereignis | Hauptstadt */
.astro-land-meta-chips {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 16px;
    width: 100%;
}
.astro-land-meta-chip {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 10px 16px;
    border-radius: 12px;
    background: rgba(232,201,106,0.04);
    border: 1px solid rgba(232,201,106,0.12);
    flex: 0 0 auto;
}
.astro-land-meta-chip-wide {
    flex: 1 1 auto;
    min-width: 0;
}
.astro-land-meta-chip-label {
    font-family: 'Cinzel', serif;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: rgba(232,201,106,0.5);
    white-space: nowrap;
}
.astro-land-meta-chip-value {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 400;
    color: #ffffff;
    text-align: center;
}
.astro-light-theme .astro-land-meta-chip {
    background: rgba(201,168,76,0.06);
    border-color: rgba(201,168,76,0.15);
}
.astro-light-theme .astro-land-meta-chip-label {
    color: #333333;
}
.astro-light-theme .astro-land-meta-chip-value {
    color: #2a2a2a;
}

.astro-land-highlight-cards {
    display: flex;
    gap: 10px;
    margin-bottom: 14px;
    flex-wrap: wrap;
}
.astro-land-highlight {
    background: var(--astro-surface);
    border: 1px solid var(--astro-card-border);
    border-radius: 10px;
    padding: 10px 14px;
    text-align: center;
    min-width: 100px;
    max-width: 160px;
    flex: 1;
}
.astro-land-highlight-label {
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #ffffff;
    margin-bottom: 8px;
}
.astro-light-theme .astro-land-highlight-label {
    color: #2a2a2a;
}
.astro-land-highlight-symbol {
    font-size: 20px;
    line-height: 1;
    margin-bottom: 6px;
}
.astro-land-highlight-value {
    font-family: 'Cinzel', serif;
    font-size: 14px;
    font-weight: 500;
}
.astro-land-featured-text {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: #ffffff;
    line-height: 1.7;
    margin: 0 0 16px;
    max-width: 450px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.astro-light-theme .astro-land-featured-text {
    color: var(--astro-text-mid);
}
.astro-land-featured-btn {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: #fff;
    background: var(--astro-btn-gradient);
    border: none;
    border-radius: 8px;
    padding: 10px 20px;
    cursor: pointer;
    transition: all 0.2s;
}
.astro-land-featured-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 16px var(--astro-accent-glow);
}

/* ── Featured Radix Mobile ── */
.astro-land-featured-radix-mobile {
    display: flex;
    justify-content: center;
    margin: 16px 0 12px;
}
.astro-land-featured-radix-mobile .astro-land-radix-container {
    width: 280px;
    max-width: 280px;
}

/* ── Featured Radix Desktop (Right Column) ── */
.astro-land-featured-right .astro-land-radix-container {
    width: 280px;
    max-width: 280px;
}

/* ── Country Grid ── */
.astro-land-country-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 12px;
    margin-bottom: 28px;
}
.astro-land-country-card {
    background: var(--astro-card-bg);
    border: 1px solid var(--astro-card-border);
    border-radius: 12px;
    padding: 14px 8px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s;
    position: relative;
    overflow: hidden;
}
.astro-land-country-card:hover {
    border-color: var(--astro-accent);
    transform: translateY(-2px);
}
.astro-land-country-card.active {
    border-color: var(--astro-accent);
    box-shadow: 0 0 12px var(--astro-accent-glow);
}
.astro-land-country-card-inner {
    transition: filter 0.2s, opacity 0.2s;
}
.astro-land-country-card.locked .astro-land-country-card-inner {
    filter: blur(1.5px);
    opacity: 0.7;
}
.astro-land-country-flag {
    margin: 0 auto 8px;
    line-height: 0;
    border-radius: 4px;
    overflow: hidden;
    display: inline-block;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
.astro-land-country-code {
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    letter-spacing: 0.08em;
    color: var(--astro-text-dim);
    margin-bottom: 2px;
}
.astro-land-country-name {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 500;
    color: var(--astro-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.astro-land-pro-badge {
    position: absolute;
    top: 6px;
    right: 6px;
    font-family: 'Inter', sans-serif;
    font-size: 9px;
    font-weight: 600;
    color: var(--astro-accent);
    background: rgba(167,139,250,0.15);
    border: 1px solid rgba(167,139,250,0.4);
    border-radius: 8px;
    padding: 2px 7px;
    z-index: 2;
    letter-spacing: 0.06em;
    cursor: pointer;
}
.astro-light-theme .astro-land-pro-badge {
    color: var(--astro-accent);
    background: rgba(201,168,76,0.1);
    border-color: rgba(201,168,76,0.4);
}

/* ── Grid Load More ── */
.astro-land-grid-load-more {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    width: 100%;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--astro-accent);
    background: var(--astro-surface);
    border: 1px solid var(--astro-card-border);
    border-radius: 10px;
    padding: 14px 20px;
    margin-top: 12px;
    margin-bottom: 28px;
    cursor: pointer;
    transition: all 0.2s;
}
.astro-land-grid-load-more:hover {
    border-color: var(--astro-accent);
    background: var(--astro-card-bg);
    transform: translateY(-1px);
}
.astro-land-grid-load-more-sub {
    font-size: 11px;
    font-weight: 400;
    color: var(--astro-text-dim);
}
.astro-land-grid-all-loaded {
    text-align: center;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: var(--astro-text-dim);
    padding: 10px;
    margin-bottom: 28px;
}

/* ── Detail View ── */
.astro-land-detail {
    background: var(--astro-card-bg);
    border: 1px solid var(--astro-card-border);
    border-radius: 16px;
    padding: 24px;
    margin-bottom: 24px;
    animation: astroLandFadeIn 0.3s ease;
}
@keyframes astroLandFadeIn {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}
.astro-land-detail-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--astro-card-border);
    position: relative;
}
.astro-land-detail-header .astro-land-country-flag {
    margin: 0;
}
.astro-land-detail-name {
    font-family: 'Cinzel', serif;
    font-size: 22px;
    font-weight: 600;
    color: var(--astro-text);
    margin: 0;
}
.astro-land-detail-identity {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}
.astro-land-detail-identity .astro-land-country-flag {
    margin: 0;
}
.astro-land-detail-header .astro-land-detail-close {
    position: absolute;
    top: 0;
    right: 0;
}
.astro-land-detail-header .astro-land-meta-chips {
    width: auto;
    justify-content: center;
}
.astro-land-detail-header .astro-land-meta-chip-wide {
    flex: 0 1 auto;
    max-width: 280px;
}
.astro-land-detail-meta {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: var(--astro-text-dim);
    margin-top: 4px;
}
.astro-land-detail-close {
    margin-left: auto;
    background: none;
    border: 1px solid var(--astro-card-border);
    color: var(--astro-text-mid);
    width: 32px;
    height: 32px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
}
.astro-land-detail-close:hover {
    border-color: var(--astro-accent);
    color: var(--astro-accent);
}

/* ── Accordion Sections ── */
.astro-land-section {
    border: 1px solid var(--astro-card-border);
    border-radius: 12px;
    margin-bottom: 8px;
    overflow: hidden;
    transition: border-color 0.2s;
}
.astro-land-section.open {
    border-color: var(--astro-accent);
}
.astro-land-section-header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    cursor: pointer;
    background: transparent;
    border: none;
    width: 100%;
    text-align: left;
    transition: background 0.2s;
    font-family: 'Cinzel', serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--astro-text);
    position: relative;
}
.astro-land-section-header::before {
    content: '';
    position: absolute;
    left: 0;
    top: 8px;
    bottom: 8px;
    width: 3px;
    background: var(--astro-gold);
    border-radius: 2px;
    opacity: 0;
    transition: opacity 0.2s;
}
.astro-land-section.open .astro-land-section-header::before {
    opacity: 1;
}
.astro-land-section-header:hover {
    background: var(--astro-surface);
}
.astro-land-section-icon {
    font-size: 16px;
    flex-shrink: 0;
    width: 24px;
    text-align: center;
}
.astro-land-section-title {
    flex: 1;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.astro-land-section-count {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    color: var(--astro-text-dim);
    background: var(--astro-surface);
    border-radius: 10px;
    padding: 2px 8px;
}
.astro-land-section-arrow {
    font-size: 12px;
    color: var(--astro-text-dim);
    transition: transform 0.2s;
    flex-shrink: 0;
}
.astro-land-section.open > .astro-land-section-header > .astro-land-section-arrow {
    transform: rotate(180deg);
}
.astro-land-section-body {
    padding: 0 16px 16px;
    display: none;
}
.astro-land-section.open .astro-land-section-body {
    display: block;
}
.astro-land-section-text {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    color: #ffffff !important;
    line-height: 1.8;
}
.astro-light-theme .astro-land-section-text {
    color: var(--astro-text) !important;
}

/* ── Highlight Cards zentriert (Kosmische Signatur) ── */
.astro-land-highlight-cards-centered {
    justify-content: center;
}

/* ── Planet Table ── */
.astro-land-planet-table {
    width: 100%;
    border-collapse: collapse;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    margin-top: 16px;
}
.astro-land-planet-table th {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--astro-gold);
    text-align: left;
    padding: 8px 10px;
    border-bottom: 1px solid var(--astro-card-border);
}
.astro-land-planet-table td {
    padding: 8px 10px;
    color: var(--astro-text);
    border-bottom: 1px solid var(--astro-card-border);
    vertical-align: middle;
}
.astro-land-planet-table tr:nth-child(even) td {
    background: var(--astro-surface);
}
.astro-land-planet-table .planet-sym {
    font-size: 16px;
    width: 28px;
    text-align: center;
}
.astro-land-planet-table .planet-house {
    text-align: center;
    white-space: nowrap;
    color: var(--astro-text-mid);
}
/* Desktop: volle Position + "Häuser" sichtbar, Mobile-Varianten versteckt */
.astro-land-planet-table .planet-col-pos-mobile,
.astro-land-planet-table .planet-col-house-mobile {
    display: none;
}
.astro-land-planet-table .planet-col-pos-full,
.astro-land-planet-table .planet-col-house-full {
    display: table-cell;
}
.astro-land-planet-table .planet-col-house-full {
    text-align: center;
}
.astro-land-axes-block {
    margin-top: 12px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}
.astro-land-axis-card {
    background: var(--astro-surface);
    border: 1px solid var(--astro-card-border);
    border-radius: 8px;
    padding: 10px;
    text-align: center;
    /* h22: 4-Spalten-Grid (repeat(4,1fr)) lief rechts ueber den Rand, die 4. Kachel
       (IC / Stier) war angeschnitten. Ursache: Grid-Items haben default min-width:auto
       = min-content; ein langer Zeichenname (Wassermann/Steinbock) oder groessere
       Systemschrift laesst die Spur wachsen statt schrumpfen. min-width:0 erlaubt das
       Schrumpfen, der Wert bricht dann um statt die Kachel aus dem Bild zu schieben. */
    min-width: 0;
}
.astro-land-axis-label {
    font-family: 'Cinzel', serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--astro-gold);
}
.astro-land-axis-value {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: var(--astro-text-mid);
    margin-top: 2px;
    overflow-wrap: anywhere; /* h22: langer Zeichenname bricht um statt die Kachel zu sprengen */
}

/* ── Planet Sub-Accordion ── */
.astro-land-planet-accordion {
    border: 1px solid var(--astro-card-border);
    border-radius: 10px;
    margin-bottom: 6px;
    overflow: hidden;
}
.astro-land-planet-accordion-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    cursor: pointer;
    background: transparent;
    border: none;
    width: 100%;
    text-align: left;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: var(--astro-text);
    transition: background 0.2s;
}
.astro-land-planet-accordion-header:hover {
    background: var(--astro-surface);
}
.astro-land-planet-accordion-body,
.astro-land-planet-accordion-body p,
.astro-land-planet-accordion-body strong {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: #ffffff !important;
    line-height: 1.7;
}
.astro-land-planet-accordion-body {
    padding: 0 14px 14px;
    display: none;
}
.astro-light-theme .astro-land-planet-accordion-body,
.astro-light-theme .astro-land-planet-accordion-body p,
.astro-light-theme .astro-land-planet-accordion-body strong {
    color: var(--astro-text) !important;
}
.astro-land-planet-accordion.open .astro-land-planet-accordion-body {
    display: block;
}
.astro-land-planet-accordion .astro-land-section-arrow {
    margin-left: auto;
}
.astro-land-planet-accordion.open .astro-land-section-arrow {
    transform: rotate(180deg);
}
.astro-land-aspect-list {
    margin-top: 12px;
}
.astro-land-aspect-item {
    background: var(--astro-surface);
    border: 1px solid var(--astro-card-border);
    border-radius: 8px;
    padding: 10px 12px;
    margin-bottom: 6px;
}
.astro-land-aspect-header {
    font-weight: 500;
    color: var(--astro-gold);
    font-size: 12px;
    margin-bottom: 4px;
}
.astro-land-aspect-text {
    font-size: 13px;
    color: #ffffff !important;
    line-height: 1.6;
}
.astro-light-theme .astro-land-aspect-text {
    color: var(--astro-text-mid) !important;
}

/* ── Transit Timeline ── */
.astro-land-transit-card {
    background: var(--astro-surface);
    border: 1px solid var(--astro-card-border);
    border-radius: 10px;
    padding: 14px 16px;
    margin-bottom: 8px;
}
.astro-land-transit-date {
    font-family: 'Cinzel', serif;
    font-size: 12px;
    color: var(--astro-gold);
    margin-bottom: 4px;
}
.astro-land-transit-aspect {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 500;
    color: var(--astro-text);
    margin-bottom: 6px;
}
.astro-land-transit-text {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: var(--astro-text-mid);
    line-height: 1.6;
}
/* ── Transit Sections (Zeitbereiche) ── */
.astro-land-transit-section {
    margin-bottom: 20px;
}
.astro-land-transit-section-label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: 'Cinzel', serif;
    font-size: 13px;
    font-weight: 500;
    color: var(--astro-text-mid);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 8px 0 12px;
    border-bottom: 1px solid var(--astro-card-border);
    margin-bottom: 10px;
}
.astro-land-transit-active-label {
    color: var(--astro-gold);
}
.astro-land-transit-section-count {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 400;
    color: var(--astro-text-dim);
    background: var(--astro-surface);
    border-radius: 10px;
    padding: 2px 8px;
    margin-left: auto;
}
.astro-land-transit-empty {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: var(--astro-text-dim);
    font-style: italic;
    padding: 12px 0;
}

/* Pulsierender Punkt für aktive Transite */
.astro-land-transit-pulse {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #4ade80;
    box-shadow: 0 0 6px rgba(74,222,128,0.6);
    animation: astroTransitPulse 2s ease infinite;
}
@keyframes astroTransitPulse {
    0%, 100% { opacity: 1; box-shadow: 0 0 6px rgba(74,222,128,0.6); }
    50% { opacity: 0.5; box-shadow: 0 0 12px rgba(74,222,128,0.3); }
}

/* Aktiv-Badge */
.astro-land-transit-badge-now {
    display: inline-block;
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    font-weight: 600;
    color: #4ade80;
    background: rgba(74,222,128,0.1);
    border: 1px solid rgba(74,222,128,0.25);
    border-radius: 8px;
    padding: 2px 8px;
    margin-left: 8px;
    letter-spacing: 0.03em;
}

/* Aktive Transit-Karten: Hervorgehoben */
.astro-land-transit-card-active {
    border-left: 3px solid #4ade80;
    background: rgba(74,222,128,0.03);
}
.astro-light-theme .astro-land-transit-card-active {
    background: rgba(74,222,128,0.05);
}

/* ── Jahres-Akkordeons ── */
.astro-land-transit-year {
    border: 1px solid var(--astro-card-border);
    border-radius: 12px;
    margin-bottom: 8px;
    overflow: hidden;
}
.astro-land-transit-year-header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    cursor: pointer;
    background: transparent;
    border: none;
    width: 100%;
    text-align: left;
    font-family: 'Cinzel', serif;
    font-size: 15px;
    font-weight: 600;
    color: var(--astro-gold);
    transition: background 0.2s;
}
.astro-land-transit-year-header:hover {
    background: var(--astro-surface);
}
.astro-land-transit-year-name {
    flex: 1;
}
.astro-land-transit-year-body {
    display: none;
    padding: 4px 12px 12px;
}
.astro-land-transit-year.open .astro-land-transit-year-body {
    display: block;
}
.astro-land-transit-year.open > .astro-land-transit-year-header > .astro-land-section-arrow {
    transform: rotate(180deg);
}

/* ── Monats-Akkordeons ── */
.astro-land-transit-month {
    border: 1px solid var(--astro-card-border);
    border-radius: 10px;
    margin-bottom: 6px;
    overflow: hidden;
}
.astro-land-transit-month-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    cursor: pointer;
    background: transparent;
    border: none;
    width: 100%;
    text-align: left;
    font-family: 'Cinzel', serif;
    font-size: 13px;
    font-weight: 500;
    color: var(--astro-text);
    transition: background 0.2s;
}
.astro-land-transit-month-header:hover {
    background: var(--astro-surface);
}
.astro-land-transit-month-name {
    flex: 1;
}
.astro-land-transit-month-body {
    display: none;
    padding: 4px 12px 12px;
}
.astro-land-transit-month.open .astro-land-transit-month-body {
    display: block;
}
.astro-land-transit-month.open > .astro-land-transit-month-header > .astro-land-section-arrow {
    transform: rotate(180deg);
}

/* ── Vergangene Transite ── */
.astro-land-transit-past-toggle {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    cursor: pointer;
    font-family: 'Cinzel', serif;
    font-size: 13px;
    font-weight: 500;
    color: var(--astro-text-dim);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border: 1px solid var(--astro-card-border);
    border-radius: 10px;
    background: transparent;
    transition: all 0.2s;
}
.astro-land-transit-past-toggle:hover {
    background: var(--astro-surface);
    color: var(--astro-text-mid);
}
.astro-land-transit-section-past.open > .astro-land-transit-past-toggle > .astro-land-section-arrow {
    transform: rotate(180deg);
}
.astro-land-transit-past-body {
    padding-top: 10px;
}

/* Vergangene Karten: Reduzierte Opazität */
.astro-land-transit-card-past {
    opacity: 0.6;
}
.astro-land-transit-card-past:hover {
    opacity: 0.85;
}

/* ── Radix Container ── */
.astro-land-radix-container {
    max-width: 500px;
    margin: 20px auto;
}
.astro-land-radix-container svg > rect:first-child {
    fill: #0E0B22 !important;
}
.astro-light-theme .astro-land-radix-container svg > rect:first-child {
    fill: #FFFEFE !important;
}

/* ── Radix Zoom Hint ── */
.astro-land-radix-zoom-hint {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    color: var(--astro-text-dim);
    cursor: pointer;
    padding: 6px 0 0;
    transition: color 0.2s;
    user-select: none;
}
.astro-land-radix-zoom-hint:hover {
    color: var(--astro-accent);
}
.astro-land-zoom-icon {
    font-size: 13px;
}

/* ── Radix Modal ── */
.astro-land-radix-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.2s ease;
    pointer-events: none;
}
.astro-land-radix-modal.visible {
    opacity: 1;
    pointer-events: auto;
}
.astro-land-radix-modal-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    backdrop-filter: blur(4px);
}
.astro-land-radix-modal-content {
    position: relative;
    z-index: 1;
    background: var(--astro-card-bg);
    border: 1px solid var(--astro-card-border);
    border-radius: 16px;
    padding: 24px;
    width: 85vmin;
    height: 85vmin;
    max-width: 650px;
    max-height: 650px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
}
.astro-land-radix-modal-content svg {
    width: 100% !important;
    height: 100% !important;
    max-width: 100%;
    max-height: 100%;
}
.astro-land-radix-modal-content svg > rect:first-child {
    fill: #0E0B22 !important;
}
.astro-light-theme .astro-land-radix-modal-content svg > rect:first-child {
    fill: #FFFEFE !important;
}
.astro-land-radix-modal-close {
    position: absolute;
    top: 12px;
    right: 12px;
    background: none;
    border: 1px solid var(--astro-card-border);
    color: var(--astro-text-mid);
    width: 32px;
    height: 32px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    z-index: 2;
}
.astro-land-radix-modal-close:hover {
    border-color: var(--astro-accent);
    color: var(--astro-accent);
}
.astro-light-theme .astro-land-radix-modal-overlay {
    background: rgba(255, 255, 255, 0.75);
}

/* ── Radix Tooltip ── */
#astro-land-tooltip {
    position: fixed;
    z-index: 100000;
    pointer-events: none;
    padding: 8px 14px;
    border-radius: 8px;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    line-height: 1.4;
    opacity: 0;
    transform: translateY(4px);
    transition: opacity 0.2s ease, transform 0.2s ease;
    white-space: nowrap;
    max-width: 300px;
    background: rgba(14, 11, 34, 0.95);
    border: 1px solid rgba(167, 139, 250, 0.25);
    color: #e8c96a;
    box-shadow: 0 4px 20px rgba(0,0,0,0.4);
}
#astro-land-tooltip.visible {
    opacity: 1;
    transform: translateY(0);
}
#astro-land-tooltip strong {
    color: #ffffff;
    font-weight: 600;
}
.astro-light-theme #astro-land-tooltip {
    background: rgba(255, 255, 255, 0.97);
    border: 1px solid rgba(201, 168, 76, 0.2);
    color: #6b5d4f;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}
.astro-light-theme #astro-land-tooltip strong {
    color: #a07c2a;
}
@media (max-width: 768px) {
    #astro-land-tooltip {
        font-size: 10px;
        padding: 5px 10px;
        max-width: 200px;
        border-radius: 6px;
    }
}

/* ── CTA / Paywall ── */
.astro-land-cta {
    background: var(--astro-card-bg);
    border: 2px solid var(--astro-gold);
    border-radius: 16px;
    padding: 32px 24px;
    text-align: center;
    margin: 32px 0;
    position: relative;
    overflow: hidden;
}
.astro-land-cta::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 50% 0%, rgba(232,201,106,0.06) 0%, transparent 70%);
    pointer-events: none;
}
.astro-land-cta-title {
    font-family: 'Cinzel', serif;
    font-size: 22px;
    font-weight: 600;
    color: var(--astro-gold);
    margin: 0 0 12px;
    position: relative;
}
.astro-land-cta-text {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    color: var(--astro-text-mid);
    line-height: 1.7;
    max-width: 520px;
    margin: 0 auto 20px;
    position: relative;
}
.astro-land-cta-btn {
    display: inline-block;
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: #fff;
    background: var(--astro-btn-gradient);
    border: none;
    border-radius: 10px;
    padding: 12px 28px;
    cursor: pointer;
    transition: all 0.2s;
    text-decoration: none;
    position: relative;
}
.astro-land-cta-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 20px var(--astro-accent-glow);
}
.astro-land-cta-trust {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: var(--astro-text-dim);
    margin-top: 16px;
    position: relative;
}

/* ── Loading / Skeleton ── */
.astro-land-skeleton {
    background: var(--astro-surface);
    border-radius: 8px;
    animation: astroLandPulse 1.5s ease infinite;
}
@keyframes astroLandPulse {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 0.8; }
}

/* ── Page Mode Extras ── */
.astro-land-page-mode {
    max-width: 1100px;
    margin: 0 auto;
    padding: 20px;
}

/* ── Tab Mode ── */
.astro-land-tab-mode .astro-land-hero {
    padding: 20px 16px 20px;
    margin-bottom: 18px;
}
.astro-land-tab-mode .astro-land-hero-title {
    font-size: 26px;
}

/* ═══════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════ */

@media (max-width: 768px) {
    .astro-land-hero {
        padding: 24px 16px 20px;
    }
    .astro-land-hero-title {
        font-size: 24px;
    }
    .astro-land-hero-subtitle {
        font-size: 13px;
    }
    .astro-land-featured-card {
        flex-direction: column;
        padding: 20px;
        gap: 16px;
    }
    .astro-land-featured-left {
        align-items: center;
        text-align: center;
    }
    .astro-land-featured-right {
        width: 100%;
        margin-left: 0;
        margin-top: 0;
    }
    .astro-land-featured-name {
        font-size: 18px;
    }
    .astro-land-featured-topline {
        flex-wrap: wrap;
        gap: 8px;
        margin-bottom: 16px;
        justify-content: center;
    }
    /* Meta Chips: 2+1 Layout */
    .astro-land-meta-chips {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }
    .astro-land-meta-chip {
        padding: 10px 12px;
        border-radius: 10px;
    }
    .astro-land-meta-chip-wide {
        grid-column: span 2;
        flex: none;
    }
    .astro-land-meta-chip:first-child {
        order: 1;
    }
    .astro-land-meta-chip-wide {
        order: 3;
    }
    .astro-land-meta-chip:last-child {
        order: 2;
    }
    .astro-land-meta-chip-label {
        font-size: 9px;
    }
    .astro-land-meta-chip-value {
        font-size: 13px;
        font-weight: 500;
    }
    /* Intro + Button zentriert */
    .astro-land-featured-text {
        text-align: center;
    }
    .astro-land-featured-btn {
        display: block;
        margin: 0 auto;
        width: fit-content;
    }
    /* Radix-Titel verstecken auf Mobile */
    .astro-land-radix-title {
        display: none;
    }
    /* Detail-Header: Flagge + Name nebeneinander, mittig */
    .astro-land-detail-identity {
        flex-direction: row;
        gap: 10px;
        margin-bottom: 12px;
    }
    /* Highlight-Cards: AC mittig unter Sonne+Mond */
    .astro-land-highlight-cards {
        justify-content: center;
    }
    /* Planet-Tabelle: Zeichen statt Position, Haus-Mobile statt Häuser */
    .astro-land-planet-table .planet-col-pos-full,
    .astro-land-planet-table .planet-col-house-full {
        display: none;
    }
    .astro-land-planet-table .planet-col-pos-mobile,
    .astro-land-planet-table .planet-col-house-mobile {
        display: table-cell;
    }
    /* Planet-Header links über dem Icon */
    .astro-land-planet-table .planet-sym {
        text-align: left;
        padding-left: 4px;
    }
    .astro-land-planet-table th:first-child {
        text-align: left;
        padding-left: 4px;
    }
    /* Zeichen-Spalte etwas mehr nach links */
    .astro-land-planet-table .planet-col-pos-mobile {
        padding-right: 16px;
    }
    .astro-land-country-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
     }
}

/* ═══════════════════════════════════════════
   EPOCHEN-TRANSITE (Globale Zeitströmungen)
   ═══════════════════════════════════════════ */

.astro-land-epochen-intro {
    margin-bottom: 16px;
}
.astro-land-epochen-desc {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: var(--astro-text-dim);
    line-height: 1.6;
    font-style: italic;
    border-left: 3px solid var(--astro-gold);
    padding-left: 12px;
    margin: 0;
}
.astro-land-epochen-card {
    background: var(--astro-surface);
    border: 1px solid var(--astro-card-border);
    border-radius: 12px;
    padding: 18px 20px;
    margin-bottom: 14px;
    position: relative;
    overflow: hidden;
}
.astro-land-epochen-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(180deg, var(--astro-gold) 0%, var(--astro-accent, #7b5cba) 100%);
    border-radius: 12px 0 0 12px;
}
.astro-land-epochen-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
    flex-wrap: wrap;
    gap: 6px;
}
.astro-land-epochen-planet {
    font-family: 'Cinzel', serif;
    font-size: 13px;
    font-weight: 600;
    color: var(--astro-gold);
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
.astro-land-epochen-zeitraum {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    color: var(--astro-text-dim);
    background: var(--astro-bg, #0d0d1a);
    border: 1px solid var(--astro-card-border);
    border-radius: 20px;
    padding: 2px 10px;
}
.astro-land-epochen-titel {
    font-family: 'Cinzel', serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--astro-text);
    margin-bottom: 10px;
    line-height: 1.4;
}
.astro-land-epochen-text {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: var(--astro-text-mid);
    line-height: 1.7;
}

/* ─── Schwerpunkt-Transite Lead-Intro und Liste ─── */
.astro-land-transit-intro {
    font-family: 'Inter', sans-serif;
    font-size: 13.5px;
    line-height: 1.7;
    color: var(--astro-text-mid);
    background: rgba(167, 139, 250, 0.04);
    border-left: 2px solid var(--astro-accent);
    padding: 14px 16px;
    margin: 0 0 18px 0;
    border-radius: 6px;
}
.astro-land-transit-intro em {
    font-style: italic;
}
.astro-land-transit-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.astro-land-transit-text p {
    margin: 0 0 10px 0;
    line-height: 1.7;
}
.astro-land-transit-text p:last-child {
    margin-bottom: 0;
}

/* ─── "Ohne Gewähr"-Hinweis unter den Transiten ───
   Dezent & hochwertig: feine Gold-Haarlinie als Trenner, kleine Cinzel-
   Überschrift in Gold, darunter kleiner kursiver, gedimmter Fließtext.
   Kein gefüllter Kasten → fügt sich ruhig ins Navy-Gold-Design ein. */
.astro-land-disclaimer {
    margin-top: 20px;
    padding-top: 14px;
    border-top: 1px solid rgba(232, 201, 106, 0.18);
}
.astro-land-disclaimer-head {
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: 'Cinzel', serif;
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--astro-gold);
    opacity: 0.8;
    margin-bottom: 7px;
}
.astro-land-disclaimer-mark { font-size: 11px; line-height: 1; }
.astro-land-disclaimer-text {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    line-height: 1.75;
    font-style: italic;
    color: var(--astro-text-dim);
    margin: 0;
    max-width: 640px;
}
.astro-light-theme .astro-land-disclaimer { border-top-color: rgba(180, 140, 60, 0.28); }
.astro-light-theme .astro-land-disclaimer-text { color: var(--astro-text); opacity: 0.72; }

/* ─── Globale Konstellationen Lead-Intro ─── */
.astro-land-epochen-intro em {
    font-style: italic;
    color: var(--astro-text-mid);
}

/* ─── Epochen-Zeichen-Tag (Wassermann, Widder, etc.) ─── */
.astro-land-epochen-zeichen {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 500;
    color: var(--astro-text);
    margin-left: 4px;
    letter-spacing: 0.02em;
}

/* ─── Epochen Sub-Bloecke (lokal konkret, historische Resonanz) ─── */
.astro-land-epochen-text p,
.astro-land-epochen-konkret p,
.astro-land-epochen-historisch p {
    margin: 0 0 12px 0;
    line-height: 1.7;
}
.astro-land-epochen-text p:last-child,
.astro-land-epochen-konkret p:last-child,
.astro-land-epochen-historisch p:last-child {
    margin-bottom: 0;
}
.astro-land-epochen-konkret,
.astro-land-epochen-historisch {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid rgba(167,139,250,0.10);
}
.astro-land-epochen-subheading {
    font-family: 'Cinzel', serif;
    font-size: 12px;
    font-weight: 600;
    color: var(--astro-gold);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 0 0 10px 0;
}
.astro-land-epochen-konkret p,
.astro-land-epochen-historisch p {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: var(--astro-text-mid);
    line-height: 1.7;
}

/* ─── Dark-Mode-Anpassungen v2: Gold-Akzente, weiße Texte ─── */

/* Planetendeutungen: Im Zeichen / Im Haus Labels in Gold */
.astro-land-planet-accordion-body p strong {
    color: var(--astro-gold);
    font-weight: 600;
    letter-spacing: 0.02em;
}

/* Schwerpunkt-Transite: Intro-Lead in Weiß */
.astro-land-transit-intro,
.astro-land-transit-intro em {
    color: var(--astro-text);
}

/* Schwerpunkt-Transit-Karte: Datum + Aspekt zusammen in Gold, Text in Weiß */
.astro-land-transit-header {
    font-family: 'Cinzel', serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--astro-gold);
    margin-bottom: 10px;
    letter-spacing: 0.04em;
    line-height: 1.5;
}
.astro-land-transit-text,
.astro-land-transit-text p {
    color: var(--astro-text);
    line-height: 1.7;
}

/* Globale Konstellationen: Intro-Lead in Weiß */
.astro-land-epochen-intro,
.astro-land-epochen-intro em {
    color: var(--astro-text);
}

/* Epochen-Card-Header: Titel groß gold links, Zeitraum klein gold rechts */
.astro-land-epochen-card-header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}
.astro-land-epochen-titel {
    font-family: 'Cinzel', serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--astro-gold);
    line-height: 1.4;
    letter-spacing: 0.02em;
    flex: 1 1 auto;
    margin: 0;
}
.astro-land-epochen-zeitraum {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    color: var(--astro-gold);
    background: transparent;
    border: 1px solid var(--astro-gold);
    border-radius: 20px;
    padding: 3px 12px;
    letter-spacing: 0.04em;
    flex: 0 0 auto;
}

/* Epochen-Haupttext und Sub-Sektionen: weiße Lese-Farbe */
.astro-land-epochen-text,
.astro-land-epochen-text p,
.astro-land-epochen-konkret p,
.astro-land-epochen-historisch p {
    color: var(--astro-text);
    line-height: 1.7;
}

/* Land-CTA-Button als Shop-Checkout-Trigger (2026-05-25) */
.astro-land-cta-btn.aram-shop-start-checkout {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    line-height: 1.2;
}
.astro-land-cta-btn .astro-btn-main { font-size: 15px; font-weight: 600; }
.astro-land-cta-btn .astro-btn-sub { font-size: 11px; opacity: 0.85; font-weight: 500; }
.astro-land-cta .aram-shop-email-row {
    max-width: 360px;
    margin: 12px auto 0;
    text-align: left;
}
.astro-land-cta .aram-shop-email-row .astro-input-label {
    display: block;
    font-size: 11px;
    color: var(--astro-text-dim);
    margin-bottom: 4px;
}
.astro-land-cta .aram-shop-email-row .astro-input {
    width: 100%;
    padding: 8px 10px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.04);
    color: var(--astro-text, #fff);
    font-family: 'Inter', sans-serif;
    font-size: 13px;
}
body.astro-light-theme .astro-land-cta .aram-shop-email-row .astro-input {
    border-color: rgba(0,0,0,0.12);
    background: #fff;
    color: #2a2018;
}

/* ═══════════════════════════════════════════
   STANDALONE Hero-Cleanup (2026-05-25)
   Land-Standalone /laenderhoroskope/ — symmetrisch zur Elektion-Lösung.
   Die alte hero-pill-Position klebte am Filter-Block; jetzt 16px-Abstand.
*/
.astro-land-container { max-width: 1080px; margin: 0 auto; padding: 0 16px; }
.astro-land-container .astro-hero { text-align: center; padding: 24px 8px 28px; margin-bottom: 16px; }
.astro-land-container .astro-hero-row {
    display: flex; align-items: center; justify-content: center;
    gap: 18px; margin-bottom: 12px;
}
.astro-land-container .astro-hero-glyph {
    flex: 0 0 auto; width: 44px; height: 44px;
    color: var(--astro-gold, #e8c96a); opacity: 0.85;
}
.astro-land-container .astro-hero-glyph svg { width: 100%; height: 100%; display: block; }
.astro-land-container .astro-hero-title-wrap {
    display: flex; flex-direction: column; gap: 4px; flex: 0 1 auto;
    text-align: center; align-items: center;
}
.astro-land-container .astro-hero-title {
    font-family: 'Cinzel', serif; font-weight: 500;
    letter-spacing: 0.22em; text-transform: uppercase;
    color: var(--astro-gold, #e8c96a);
    font-size: clamp(1.4rem, 3.2vw, 2.1rem); margin: 0; text-align: center;
}
.astro-land-container .astro-hero-sub {
    color: #C4B05A; font-size: 0.85rem; letter-spacing: 0.08em; text-align: center;
}
.astro-land-container .astro-hero-intro {
    max-width: 680px; margin: 0 auto 14px;
    color: var(--astro-text, #ffffff);
    font-family: 'Inter', sans-serif; font-size: 0.95rem; line-height: 1.7;
    text-align: center;
}
.astro-land-container .astro-hero-check { color: #4ade80; font-weight: 700; margin-left: 4px; }
.astro-land-container .astro-hero-pill {
    display: inline-block; padding: 6px 14px;
    background: rgba(232, 201, 106, 0.06);
    border: 1px solid rgba(232, 201, 106, 0.4); border-radius: 999px;
    font-size: 0.82rem; color: var(--astro-text, #ffffff);
    letter-spacing: 0.04em; margin-bottom: 18px;
}
body.astro-light-theme .astro-land-container .astro-hero-glyph {
    color: var(--astro-gold, #c9a84c); opacity: 0.9;
}
body.astro-light-theme .astro-land-container .astro-hero-title { color: var(--astro-gold, #c9a84c); }
body.astro-light-theme .astro-land-container .astro-hero-sub { color: #8A7A2A; }
body.astro-light-theme .astro-land-container .astro-hero-intro,
body.astro-light-theme .astro-land-container .astro-hero-pill { color: var(--astro-text, #2a2018); }
body.astro-light-theme .astro-land-container .astro-hero-pill {
    background: rgba(201, 168, 76, 0.08); border-color: rgba(201, 168, 76, 0.5);
}
@media (max-width: 767px) {
    .astro-land-container { padding: 0 10px; }
    .astro-land-container .astro-hero { padding: 16px 4px 22px; }
    .astro-land-container .astro-hero-row { gap: 10px; }
    .astro-land-container .astro-hero-glyph { width: 32px; height: 32px; }
    .astro-land-container .astro-hero-intro { font-size: 0.88rem; line-height: 1.65; }
    .astro-land-container .astro-hero-pill { white-space: normal; max-width: 92%; line-height: 1.45; }
}

/* ── Signatur-Tabelle: Haeuser-Spalte auf schmalen Handys nicht mehr abschneiden ──
   Ursache: kein table-layout:fixed -> lange Planet-/Zeichen-Namen drueckten die Spalten
   ueber die Container-Breite, die letzte Spalte (Haus) lief rechts hinaus. Fix: festes
   Layout + schmale Symbol-/Haus-Spalten + kompaktes Padding, damit die vier sichtbaren
   Spalten (Symbol | Planet | Zeichen | Haus) auf jeder Breite (auch ~360px) in den Rahmen
   passen. Grosse Handys (Xiaomi 15T) sehen unveraendert korrekt aus. */
@media (max-width: 768px) {
    /* h22: 'HAUS' wurde zu 'HA...' abgeschnitten. Ursache: table-layout:fixed mit einer
       auf 46px festgenagelten Haus-Spalte + text-overflow:ellipsis auf den Koepfen.
       'Haus' passte knapp, 'Maison'/'Casa' und jede vergroesserte Systemschrift nicht mehr.
       Fix sprachrobust: auto-Layout (Spalte waechst mit dem Kopfwort), Koepfe brechen NIE
       um/ab, nur Datenzellen duerfen kuerzen. Keine feste Haus-Breite mehr. */
    .astro-land-planet-table { table-layout: auto; }
    .astro-land-planet-table th { white-space: nowrap; overflow: visible; text-overflow: clip; }
    .astro-land-planet-table td { padding: 8px 5px; overflow: hidden; text-overflow: ellipsis; }
    .astro-land-planet-table .planet-col-sym { width: 24px; padding-left: 4px; }
    .astro-land-planet-table .planet-col-house-mobile { white-space: nowrap; text-align: center; }
    .astro-land-planet-table .planet-col-pos-mobile { padding-right: 6px; white-space: normal; word-break: break-word; }
}

/* ═══════════════════════════════════════════════════════════════════
   LÄNDER-DETAILANSICHT, Neufassung 22.09.2026
   Masse, Radien und das Kopfmuster stammen aus der Horoskop-Ansicht
   (.rdp-nav: 34px Quadrat, 9px Radius, Fraunces 13px/ls 3px), Aufbau,
   Abstände und Farben aus laenderhoroskop-mockup.html.
   Grundsatz: keine Box in der Box. Abschnitte sind flache Zeilen mit
   Haarlinie, der Text läuft bis an die Innenkanten (18px Seitenrand).
   Gilt für beide Montagen - Website (#astro-land-page-root) und den
   Tab in Account/App (#astro-land-tab-root, .astro-land-tab-mode).
   ═══════════════════════════════════════════════════════════════════ */

.astro-land-container .alx { --alx-pad: 18px; }
.astro-land-container .alx-pad { padding-left: var(--alx-pad); padding-right: var(--alx-pad); }

/* Kopfzeile: Pfeil links, Titel mittig, Profilbild rechts */
.astro-land-container .alx-hdr {
    height: 58px; display: flex; align-items: center; gap: 12px;
    padding: 0 14px; flex-shrink: 0;
}
.astro-land-container .alx-back {
    width: 34px; height: 34px; flex: none; border-radius: 9px;
    border: 1px solid rgba(138, 110, 224, .3); background: rgba(20, 15, 40, .55);
    display: flex; align-items: center; justify-content: center;
    font-size: 17px; line-height: 1; color: #b8b0d6; cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}
.astro-land-container .alx-back:hover { color: #e8c96a; border-color: rgba(232, 201, 106, .45); }
.astro-land-container .alx-hdr-t {
    flex-grow: 1; display: flex; align-items: center; justify-content: center; gap: 7px;
}
.astro-land-container .alx-hdr-t span {
    font-family: "Cormorant Garamond", Georgia, serif; font-size: 17px;
    letter-spacing: 3.4px; color: #e8c96a; font-weight: 600; text-transform: uppercase;
}
.astro-land-container .alx-ico-i {
    width: 15px; height: 15px; border-radius: 50%; flex: none;
    border: 1px solid rgba(232, 201, 106, .5); color: #e8c96a; font-size: 9px;
    display: flex; align-items: center; justify-content: center; font-style: normal;
}
.astro-land-container .alx-ava {
    width: 34px; height: 34px; flex: none; border-radius: 50%;
    background: linear-gradient(140deg, #6b5bb0, #c48fa8);
    border: 1px solid rgba(232, 201, 106, .3);
}

/* Land-Identität und Stammdaten */
.astro-land-container .alx-zurueck-kopf { text-align: center; }
.astro-land-container .alx-cid {
    display: flex; align-items: center; justify-content: center; gap: 11px;
    margin-top: 2px; text-align: center;
}
.astro-land-container .alx-cid h1 {
    margin: 0; font-family: "Cormorant Garamond", Georgia, serif; font-size: 34px;
    font-weight: 600; color: #f3ead2; letter-spacing: .4px; line-height: 1.1;
}
.astro-land-container .alx-meta {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 16px 0 0;
    border-top: 1px solid rgba(150, 130, 230, .20);
    border-bottom: 1px solid rgba(150, 130, 230, .20);
}
.astro-land-container .alx-meta > div { padding: 11px 10px; min-width: 0; }
.astro-land-container .alx-meta > div + div { border-left: 1px solid rgba(150, 130, 230, .16); }
.astro-land-container .alx-meta dt {
    margin: 0; font-size: 8.5px; letter-spacing: 1.5px; color: #8579b8; text-transform: uppercase;
}
.astro-land-container .alx-meta dd {
    margin: 5px 0 0; font-size: 12.5px; color: #ded5ff; line-height: 1.3;
    overflow-wrap: anywhere; word-break: break-word; hyphens: auto;
}

/* Radix: frei, quadratisch, volle Breite minus Seitenrand, ohne Kasten */
.astro-land-container .alx-radix.astro-land-radix-container {
    display: block; width: 100%; max-width: 600px; height: auto;
    margin: 14px auto 6px; padding: 0;
    background: none; border: 0; border-radius: 12px; overflow: hidden; box-shadow: none;
}
.astro-land-container .alx-radix.astro-land-radix-container svg { display: block; width: 100%; height: auto; }

/* Sonne, Mond, Aszendent - frei unter der Radix */
/* Masse aus radix-chart.js (Signatur-Boxen auf horoskop-berechnen) */
/* Zwei nebeneinander, der dritte darunter - wie die Signatur-Boxen auf
   horoskop-berechnen. Das Raster erzwingt die Anordnung auf jeder Breite;
   ein reines flex-wrap haette je nach Containerbreite drei untereinander
   gestellt. */
.astro-land-container .alx-trio {
    display: grid; grid-template-columns: 1fr 1fr; gap: 12px;
    margin: 0 auto 15px; max-width: 412px; justify-items: stretch;
}
.astro-land-container .alx-sig:nth-child(3) { grid-column: 1 / -1; }
.astro-land-container .alx-sig {
    text-align: center; padding: 16px 12px;
    border-radius: 10px; border: 1px solid rgba(160, 135, 240, .22); background: rgba(255, 255, 255, .035);
}
.astro-land-container .alx-sig .lab {
    font-size: 11px; text-transform: uppercase; letter-spacing: 1px; color: #b8b0d6; margin-bottom: 8px;
}
.astro-land-container .alx-sig .gly { font-size: 36px; line-height: 1.2; }
.astro-land-container .alx-sig .nm { font-size: 15px; font-weight: 600; color: var(--astro-gold, #e8c96a); margin-top: 4px; }
.astro-land-container .alx-sig .sub { font-size: 11px; color: #9d8fd6; margin-top: 2px; }

/* Flache Abschnitte statt Kästen */
.astro-land-container .alx-sec {
    margin-top: 22px; border-top: 1px solid rgba(150, 130, 230, .20);
    border-bottom: 1px solid rgba(150, 130, 230, .20);
    background: none; border-left: 0; border-right: 0; border-radius: 0; box-shadow: none;
}
.astro-land-container .alx-sec + .alx-sec { margin-top: 0; border-top: 0; }
.astro-land-container .alx-sec-h {
    width: 100%; background: none; border: 0; padding: 17px var(--alx-pad);
    display: flex; align-items: center; gap: 11px; cursor: pointer; text-align: left; color: inherit;
}
.astro-land-container .alx-sec-ic { flex: none; font-size: 15px; color: #cbb8f5; }
.astro-land-container .alx-sec-h .t {
    flex-grow: 1; font-family: "Cormorant Garamond", Georgia, serif; font-size: 15.5px;
    font-weight: 600; letter-spacing: 2.4px; text-transform: uppercase; color: #cbb8f5;
}
.astro-land-container .alx-sec.open .alx-sec-h .t { color: #f0d789; }
.astro-land-container .alx-sec.open { border-left: 2px solid #e8c96a; }
.astro-land-container .alx-sec.open .alx-sec-h,
.astro-land-container .alx-sec.open .alx-sec-b { padding-left: 16px; }
.astro-land-container .alx-cnt {
    font-size: 10px; color: #8579b8; background: rgba(255, 255, 255, .05);
    border-radius: 9px; padding: 2px 7px;
}
.astro-land-container .alx-chev { color: #9d8fd6; flex-shrink: 0; font-size: 15px; }
.astro-land-container .alx-sec-b { display: none; padding: 0 var(--alx-pad) 22px; }
.astro-land-container .alx-sec.open .alx-sec-b { display: block; }
.astro-land-container .alx-p { margin: 0 0 13px; font-size: 13.5px; line-height: 1.72; color: #ddd5f5; }
.astro-land-container .alx-p:last-child { margin-bottom: 0; }

/* Planetentabelle - Aufbau und Masse der Astrologischen Auswertung auf
   horoskop-berechnen (radix-chart.js): 13px Inter, Kopf 11px gesperrt in
   Gold, Zebra-Streifen rgba(255,255,255,.03), Zeichensymbol in der
   Elementfarbe vor dem Namen, Haus zentriert mit Chevron. */
.astro-land-container .alx-hint {
    display: flex; gap: 8px; align-items: center; font-size: 11.5px; color: #8579b8; margin: 0 0 13px;
}
.astro-land-container .alx-tbl {
    width: 100%; border-collapse: collapse; font-size: 13px; color: #f0e3c0;
}
.astro-land-container .alx-tbl th {
    padding: 6px; text-align: left; font-weight: 500; font-size: 11px;
    text-transform: uppercase; letter-spacing: 1px; color: #e7c878;
    border-bottom: 1px solid rgba(167, 139, 250, .22);
}
.astro-land-container .alx-tbl th.c { text-align: center; }
.astro-land-container .alx-tbl tbody tr.alx-tr:nth-of-type(odd) { background: rgba(255, 255, 255, .03); }
.astro-land-container .alx-tbl tr.klick { cursor: pointer; }
.astro-land-container .alx-tbl tr.klick:hover { background: rgba(255, 255, 255, .05); }
.astro-land-container .alx-tbl td { padding: 5px 6px; }
.astro-land-container .alx-tbl td.sym { font-size: 15px; width: 24px; font-family: Georgia, serif; }
.astro-land-container .alx-tbl td.nm { font-weight: 500; }
.astro-land-container .alx-tbl td.gr { font-family: ui-monospace, monospace; font-size: 12px; white-space: nowrap; }
.astro-land-container .alx-tbl td.zn { white-space: nowrap; }
.astro-land-container .alx-tbl td.zn .zg { font-family: Georgia, serif; font-size: 14px; }
.astro-land-container .alx-tbl td.hs { text-align: center; white-space: nowrap; }
.astro-land-container .alx-tbl td.hs .hn { display: inline-block; min-width: 1.6em; text-align: right; }
.astro-land-container .alx-tbl td.hs .chv { margin-left: 4px; color: #9d8fd6; font-size: 11px; }
.astro-land-container .alx-tbl .rr {
    color: #e74c3c; font-weight: 600; font-size: 11px; margin-left: 3px;
}
.astro-land-container .alx-tbl tr.alx-detr > td { padding: 0 6px; background: none; }

/* Deutung direkt unter der Zeile, ohne Box */
.astro-land-container .alx-det { padding: 4px 0 16px; border-bottom: 1px solid rgba(150, 130, 230, .11); }
.astro-land-container .alx-det .dh { font-size: 11.5px; color: #c0a96b; letter-spacing: .4px; margin-bottom: 9px; }
.astro-land-container .alx-det .k { color: #ffffff; font-weight: 600; }
.astro-land-container .alx-det p { margin: 0 0 11px; font-size: 13px; line-height: 1.68; color: #d8d0f2; }
.astro-land-container .alx-asp { margin-top: 14px; padding-top: 12px; border-top: 1px solid rgba(150, 130, 230, .16); }
.astro-land-container .alx-asp .at { font-size: 12px; color: #ffffff; font-weight: 600; margin-bottom: 7px; }

/* Herrscher des Aszendenten */
.astro-land-container .alx-ruler .alx-ruler-h {
    display: flex; align-items: center; gap: 10px; margin: 0 0 12px;
    font-size: 14px; color: #ffffff; font-weight: 600;
}
.astro-land-container .alx-ruler .alx-ruler-h .g { font-size: 19px; }
.astro-land-container .alx-ruler .alx-p { color: #ffffff; }

/* Tab-Modus in Account und App: identisch zur Website. Der Zweig
   .astro-land-tab-mode setzt nur den Hero anders; die Detailansicht darf
   nicht abweichen, deshalb hier ausdrücklich dieselben Werte. */
.astro-land-tab-mode .alx { --alx-pad: 18px; }
.astro-land-tab-mode .alx-hdr { height: 58px; padding: 0 14px; }
.astro-land-tab-mode .alx-hdr-t span { font-size: 17px; letter-spacing: 3.4px; }
.astro-land-tab-mode .alx-cid h1 { font-size: 34px; }
.astro-land-tab-mode .alx-sec-h .t { font-size: 15.5px; letter-spacing: 2.4px; }

@media (max-width: 380px) {
    .astro-land-container .alx-cid h1 { font-size: 28px; }
    .astro-land-container .alx-thead,
    .astro-land-container .alx-row { grid-template-columns: 96px 1fr 26px 28px; }
}

/* Nachtrag 22.09.2026, zweiter Durchgang */

/* Der SEO-Einstiegstext bleibt fuer Suchmaschinen und Besucher ohne
   JavaScript im Quelltext, wird aber nicht mehr angezeigt - die App fuehrt
   denselben Text bereits im Hero. */
.astro-seo-intro.is-hidden { display: none; }

/* In der App liefert der globale Kopf bereits Zurueck-Pfeil, Titel und
   Profilbild. Der eigene Kopf der Detailansicht waere dort doppelt. */
body.astro-app .astro-land-container .alx-hdr { display: none; }

/* Abstand zwischen Stammdaten und den drei Karten */
.astro-land-container .alx-meta { margin-bottom: 14px; }
.astro-land-container .alx-radix.astro-land-radix-container + .alx-trio { margin-top: 4px; }

/* Zurueck zur Laenderliste. Oben eine ruhige Zeile ueber dem Ländernamen,
   unten nach der Zusammenfassung derselbe Weg als breite Flaeche, damit man
   nach dem Lesen nicht hochscrollen muss. Beide in beiden Montagen sichtbar,
   auch in der App, wo der globale Kopf zur Startseite fuehrt. */
.astro-land-container .alx-zurueck {
    display: inline-flex; align-items: center; gap: 7px;
    margin: 2px 0 14px; padding: 7px 14px 7px 10px;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(160, 135, 240, .26); border-radius: 999px;
    font-size: 12px; letter-spacing: .3px; color: #cbb8f5;
    cursor: pointer; -webkit-tap-highlight-color: transparent;
    transition: border-color .15s, color .15s, background .15s;
}
.astro-land-container .alx-zurueck .p { font-size: 15px; line-height: 1; color: #e8c96a; }
.astro-land-container .alx-zurueck:hover,
.astro-land-container .alx-zurueck:focus-visible {
    color: #f0e6c8; border-color: rgba(232, 201, 106, .5); background: rgba(232, 201, 106, .08);
}
.astro-land-container .alx-zurueck-fuss {
    margin-top: 26px; padding-top: 22px;
    border-top: 1px solid rgba(150, 130, 230, .20);
    text-align: center;
}
.astro-land-container .alx-zurueck-gross {
    margin: 0 0 6px; width: 100%; max-width: 340px;
    justify-content: center; padding: 13px 18px; font-size: 13px;
    letter-spacing: 1.4px; text-transform: uppercase;
    font-family: "Cormorant Garamond", Georgia, serif; font-weight: 600;
}

/* Titel ueber den drei Karten - Masse aus radix-chart.js (Abschnittstitel
   "Deine kosmische Signatur" auf horoskop-berechnen). */
.astro-land-container .alx-trio-titel {
    text-align: center; margin: 20px 0 1rem;
    font-family: 'Cinzel', "Cormorant Garamond", Georgia, serif;
    font-size: clamp(1.3rem, 2.5vw, 1.8rem);
    font-weight: 600; color: var(--astro-gold, #e8c96a);
}

/* Die drei Karten sind anklickbar: sie oeffnen die Kosmische Signatur und
   die passende Zeile. */
.astro-land-container .alx-sig[data-open-signatur] {
    cursor: pointer; -webkit-tap-highlight-color: transparent;
    transition: border-color .15s, background .15s;
}
.astro-land-container .alx-sig[data-open-signatur]:hover,
.astro-land-container .alx-sig[data-open-signatur]:focus-visible {
    border-color: rgba(232, 201, 106, .5); background: rgba(232, 201, 106, .07);
}

/* ═══ 23.09.2026: Lesbarkeit, Aspekte, Epochen ═══ */

/* Der Text lief nicht bis an den Rand: die alte Kartenpolsterung (24px)
   stapelte sich mit dem Seitenrand der Abschnitte (18px). Die Detailansicht
   ist flach; ihr einziger seitlicher Innenabstand ist jetzt --alx-pad, links
   wie rechts gleich. */
.astro-land-container .astro-land-detail.alx { padding-left: 0; padding-right: 0; }
.astro-land-container .alx-tbl tr.alx-detr > td { padding: 0; }

/* Deutungstexte groesser - am Desktop 17px, am Handy nur leicht groesser als
   bisher. Gilt einheitlich fuer Signatur, Aspekte, Herrscher und die
   Abschnittstexte. */
.astro-land-container .alx-p,
.astro-land-container .alx-det p,
.astro-land-container .alx-ruler .alx-p {
    font-size: 17px; line-height: 1.72;
}
.astro-land-container .alx-det .dh { font-size: 13px; }
.astro-land-container .alx-det { padding: 8px 0 18px; }

@media (max-width: 600px) {
    .astro-land-container .alx { --alx-pad: 16px; }
    .astro-land-container .alx-p,
    .astro-land-container .alx-det p,
    .astro-land-container .alx-ruler .alx-p { font-size: 14.5px; line-height: 1.7; }
    .astro-land-container .alx-det .dh { font-size: 12px; }
}

/* Aspekte-Tabelle - wie auf horoskop-berechnen */
.astro-land-container .alx-asp-tbl { table-layout: fixed; }
.astro-land-container .alx-asp-tbl td { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.astro-land-container .alx-asp-tbl .as { font-family: Georgia, serif; font-size: 14px; margin-right: 2px; }
@media (max-width: 600px) {
    .astro-land-container .alx-asp-tbl { font-size: 12px; }
    .astro-land-container .alx-asp-tbl td, .astro-land-container .alx-asp-tbl th { padding: 5px 3px; }
}

/* Die Zeitqualitaet unserer Epoche - auf der Uebersicht, ueber der Liste */
.astro-land-container .alx-epochen { margin: 28px 0 30px; }
.astro-land-container .alx-epochen .alx-trio-titel { margin-top: 0; }
.astro-land-container .alx-epochen-intro {
    max-width: 640px; margin: -4px auto 18px; text-align: center;
    font-size: 14px; line-height: 1.6; color: #b8b0d6;
}
.astro-land-container .alx-epochen .alx-sec { margin-top: 0; }
.astro-land-container .alx-epochen .alx-sec:first-of-type { border-top: 1px solid rgba(150, 130, 230, .20); }
.astro-land-container .alx-epochen .alx-sec-h .t { display: flex; flex-direction: column; gap: 3px; }
.astro-land-container .alx-epochen .alx-sec-h .t .z {
    font-family: Inter, system-ui, sans-serif; font-size: 11px; font-weight: 400;
    letter-spacing: 1px; color: #8579b8; text-transform: none;
}
.astro-land-container .alx-epochen { --alx-pad: 18px; }
/* Orbis nie abschneiden - die Zahl ist die Information der Zeile. */
.astro-land-container .alx-asp-tbl td.hs { overflow: visible; text-overflow: clip; }
.astro-land-container .alx-asp-tbl td.hs .hn { min-width: 0; }
@media (max-width: 600px) {
    .astro-land-container .alx-asp-tbl td.hs .chv { margin-left: 2px; }
}

/* Epochen gesperrt (24.09.2026): wie die gesperrten Laenderkarten */
.astro-land-container .alx-epochen .alx-epo-zu { cursor: pointer; }
.astro-land-container .alx-epochen .alx-epo-zu .alx-sec-h { cursor: pointer; }
.astro-land-container .alx-epochen .alx-verwischt { filter: blur(1.5px); opacity: .75; }
.astro-land-container .alx-epochen .alx-epo-pro { position: static; flex: 0 0 auto; margin-left: auto; align-self: center; }
.astro-land-container .alx-epochen .alx-epo-vorschau {
    margin: -6px 0 0; padding: 0 var(--alx-pad, 18px) 16px;
    filter: blur(5px); opacity: .55; user-select: none; pointer-events: none;
    display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.astro-land-container .alx-epochen .alx-epo-zu:hover .alx-epo-pro,
.astro-land-container .alx-epochen .alx-epo-zu:focus-visible .alx-epo-pro { background: rgba(167,139,250,.28); }

/* Epochen: normale Schreibweise, klare Leseebenen und filigrane transparente Karten.
   Gilt gemeinsam fuer App, Web-Konto und Laenderseite; andere Akkordeons bleiben unberuehrt. */
.astro-land-container .alx-epochen { margin: 24px 0 28px; --alx-pad: 16px; }
.astro-land-container .alx-epochen-intro { margin: -4px auto 18px; font-size: 14px; line-height: 1.6; }
.astro-land-container .alx-epochen .alx-sec,
.astro-land-container .alx-epochen .alx-sec:first-of-type {
    margin: 0 0 9px; border: 1px solid rgba(174, 150, 223, .23); border-radius: 14px;
    background: rgba(20, 13, 38, .18); overflow: hidden;
}
.astro-land-container .alx-epochen .alx-sec.open { border-color: rgba(232, 201, 106, .5); }
.astro-land-container .alx-epochen .alx-sec-h { padding: 16px var(--alx-pad); gap: 12px; min-height: 88px; }
.astro-land-container .alx-epochen .alx-sec-ic {
    display: flex; align-items: center; justify-content: center; width: 34px; height: 38px; color: #dfc58e;
}
.astro-land-container .alx-epochen .alx-sec-ic svg { display: block; width: 27px; height: 27px; }
.astro-land-container .alx-epochen .alx-sec-h .t {
    display: flex; flex-direction: column; gap: 4px; min-width: 0; font-family: var(--font-body, 'Hanken Grotesk', sans-serif);
    font-size: 16px; font-weight: 500; letter-spacing: 0; text-transform: none; line-height: 1.35; color: #eee7fb;
}
.astro-land-container .alx-epochen .alx-epo-name { font-weight: 600; }
.astro-land-container .alx-epochen .alx-epo-thema { font-size: 14px; font-weight: 400; color: #c6bbdc; line-height: 1.4; }
.astro-land-container .alx-epochen .alx-epo-thema::first-letter { text-transform: uppercase; }
.astro-land-container .alx-epochen .alx-sec-h .t .z {
    margin-top: 3px; font-family: inherit; font-size: 12px; font-weight: 400; letter-spacing: .1px; color: #aa9bbf;
}
.astro-land-container .alx-epochen .alx-chev { margin-left: auto; font-size: 23px; line-height: 1; color: #b5a2d4; }
.astro-land-container .alx-epochen .alx-sec.open .alx-sec-h { padding-left: var(--alx-pad); }
.astro-land-container .alx-epochen .alx-sec.open .alx-sec-b { padding: 2px var(--alx-pad) 20px; }
.astro-land-container .alx-epochen .alx-sec-h:focus-visible,
.astro-land-container .alx-epochen .alx-epo-zu:focus-visible { outline: 2px solid #e8c96a; outline-offset: -4px; border-radius: 12px; }
.astro-land-container .alx-epochen .alx-epo-vorschau { margin-top: -4px; padding-bottom: 14px; font-size: 13px; line-height: 1.5; -webkit-line-clamp: 2; }
@media (hover: hover) {
    .astro-land-container .alx-epochen .alx-sec-h:hover { background: rgba(174, 150, 223, .06); }
}
@media (max-width: 600px) {
    .astro-land-container .alx-epochen { --alx-pad: 13px; }
    .astro-land-container .alx-epochen .alx-sec-h { gap: 9px; padding-top: 14px; padding-bottom: 14px; }
    .astro-land-container .alx-epochen .alx-sec-ic { width: 28px; }
    .astro-land-container .alx-epochen .alx-sec-h .t { font-size: 15px; }
    .astro-land-container .alx-epochen .alx-epo-thema { font-size: 13px; }
}
body.astro-light-theme .astro-land-container .alx-epochen .alx-sec { background: rgba(255,255,255,.15); border-color: rgba(97,66,140,.24); }
body.astro-light-theme .astro-land-container .alx-epochen .alx-sec-h .t { color: #39254f; }
body.astro-light-theme .astro-land-container .alx-epochen .alx-epo-thema { color: #665271; }
body.astro-light-theme .astro-land-container .alx-epochen .alx-sec-h .t .z { color: #705b80; }
body.astro-light-theme .astro-land-container .alx-epochen .alx-sec-ic { color: #896321; }
