@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Symbols+2&text=%E2%99%88%E2%99%89%E2%99%8A%E2%99%8B%E2%99%8C%E2%99%8D%E2%99%8E%E2%99%8F%E2%99%90%E2%99%91%E2%99%92%E2%99%93&display=swap');
/* ============================================================
   TERALYN PULSE — Finanzhoroskop 2026 · dark "emerald pulse" theme
   (works with Tailwind browser CDN; defines tokens + components)
   ============================================================ */
:root{
  --tp-bg0:#041d19; --tp-bg1:#062b25; --tp-bg2:#0a3a31; --tp-panel:#08332c;
  --tp-jade:#7fd6b8; --tp-jade-d:#4fae8e;
  --tp-gold:#e3b873; --tp-gold-d:#c79a4e;
  --tp-copper:#d98c5f; --tp-copper-d:#b8653c;
  --tp-text:#e7f2ec; --tp-muted:#9db8ad;
}
*{ -webkit-font-smoothing:antialiased; }
.font-display{ font-family:'Space Grotesk','Inter',sans-serif; letter-spacing:-0.01em; }
.font-label{ font-family:'Space Grotesk','Inter',sans-serif; letter-spacing:.32em; text-transform:uppercase; }
body.tp-body{ font-family:'Inter',system-ui,sans-serif; color:var(--tp-text); background:var(--tp-bg0); }

.tp-cosmos{
  background:
    radial-gradient(1100px 700px at 82% -8%, rgba(127,214,184,.18), transparent 60%),
    radial-gradient(900px 600px at -5% 108%, rgba(227,184,115,.12), transparent 60%),
    radial-gradient(900px 900px at 50% 50%, rgba(10,58,49,.6), transparent 70%),
    var(--tp-bg0);
}
.tp-panel{ background:var(--tp-bg1); }
.tp-panel-2{ background:var(--tp-bg2); }

.tp-rule{ height:1px; background:linear-gradient(90deg,transparent,var(--tp-gold),transparent); }
.tp-bar{ width:48px; height:2px; background:linear-gradient(90deg,var(--tp-jade),var(--tp-gold)); }
.tp-bar-copper{ width:48px; height:2px; background:var(--tp-copper); }
.text-gold{ background:linear-gradient(120deg,var(--tp-gold),var(--tp-copper)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.text-jade{ color:var(--tp-jade); }
.text-copper{ color:var(--tp-copper); }
.text-muted{ color:var(--tp-muted); }

/* faint starfield */
.tp-stars{ position:relative; }
.tp-stars::before{
  content:""; position:absolute; inset:0; pointer-events:none; z-index:0;
  background-image:
    radial-gradient(1.4px 1.4px at 30px 40px, rgba(127,214,184,.7), transparent),
    radial-gradient(1.2px 1.2px at 150px 90px, rgba(227,184,115,.6), transparent),
    radial-gradient(1.5px 1.5px at 240px 180px, rgba(217,140,95,.55), transparent),
    radial-gradient(1px 1px at 330px 60px, rgba(231,242,236,.6), transparent);
  background-size:380px 240px; opacity:.6;
}

/* cards */
.tp-card{
  background:rgba(231,242,236,.035);
  border:1px solid rgba(127,214,184,.16);
  backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.tp-card:hover{
  transform:translateY(-5px);
  border-color:rgba(227,184,115,.5);
  box-shadow:0 24px 50px -24px rgba(0,0,0,.6), 0 0 40px -10px rgba(127,214,184,.25);
}
.tp-card-quiet{ background:rgba(231,242,236,.04); border:1px solid rgba(127,214,184,.14); }

/* buttons */
.btn-gold{ background:linear-gradient(120deg,var(--tp-gold),var(--tp-copper)); color:#08201b; font-weight:700;
  transition:transform .2s ease, box-shadow .3s ease, filter .2s ease; }
.btn-gold:hover{ transform:translateY(-2px); box-shadow:0 14px 30px -12px rgba(227,184,115,.6); filter:brightness(1.05); }
.btn-jade{ background:var(--tp-jade); color:#06231d; font-weight:700; transition:transform .2s ease, box-shadow .3s ease; }
.btn-jade:hover{ transform:translateY(-2px); box-shadow:0 14px 30px -12px rgba(127,214,184,.5); }
.btn-ghost{ border:1px solid rgba(127,214,184,.45); color:var(--tp-text); font-weight:600; transition:background .2s ease,border-color .2s ease; }
.btn-ghost:hover{ background:rgba(127,214,184,.12); border-color:var(--tp-gold); }

@keyframes tp-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
.tp-spin{ animation:tp-spin 150s linear infinite; }
@keyframes tp-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.tp-float{ animation:tp-float 8s ease-in-out infinite; }
@keyframes tp-pulse{0%,100%{opacity:.55}50%{opacity:1}}
.tp-pulse{ animation:tp-pulse 3.5s ease-in-out infinite; }

.zodiac-glyph{ font-family:'Noto Sans Symbols 2','Segoe UI Symbol','Apple Symbols',sans-serif; line-height:1; color:var(--tp-gold); }

/* legal prose */
.tp-prose h2{ font-family:'Space Grotesk',sans-serif; color:var(--tp-text); font-size:1.5rem; margin:2rem 0 .75rem; }
.tp-prose h3{ font-family:'Space Grotesk',sans-serif; color:var(--tp-text); font-size:1.15rem; margin:1.5rem 0 .5rem; }
.tp-prose p,.tp-prose li{ color:var(--tp-muted); line-height:1.8; }
.tp-prose ul{ list-style:disc; padding-left:1.25rem; }
.tp-prose a{ color:var(--tp-gold); text-decoration:underline; }

.cookie-banner-hover-effect:hover{ filter:brightness(1.06); }
