/* ============================================================
   AnalysePro — Professionelle Analyse- & Reporting-Lösungen
   Professional modern · dark slate + cyan/teal · bento + tabs + report mockups
   ============================================================ */
:root{
  --ap-bg:#0f172a; --ap-panel:#1e293b; --ap-panel2:#243244; --ap-line:#334155;
  --ap-cyan:#22d3ee; --ap-teal:#0891b2; --ap-cyan-l:#67e8f9;
  --ap-text:#f8fafc; --ap-slate:#94a3b8; --ap-slate2:#64748b; --ap-green:#34d399;
}
*{ -webkit-font-smoothing:antialiased; }
.font-display{ font-family:'Figtree','Inter',sans-serif; letter-spacing:-0.02em; }
.font-label{ font-family:'Figtree','Inter',sans-serif; letter-spacing:.2em; text-transform:uppercase; }
body.ap-body{ font-family:'Inter',system-ui,sans-serif; color:var(--ap-text); background:var(--ap-bg); }

.ap-panel{ background:var(--ap-panel); } .ap-panel2{ background:var(--ap-panel2); }
.text-cyan{ color:var(--ap-cyan); } .text-teal{ color:var(--ap-teal); } .text-slate{ color:var(--ap-slate); }
.text-grad{ background:linear-gradient(100deg,var(--ap-cyan-l),var(--ap-teal)); -webkit-background-clip:text; background-clip:text; color:transparent; }

.ap-grid{ position:relative; }
.ap-grid::before{ content:""; position:absolute; inset:0; pointer-events:none; z-index:0;
  background-image:linear-gradient(var(--ap-line) 1px,transparent 1px),linear-gradient(90deg,var(--ap-line) 1px,transparent 1px);
  background-size:44px 44px; opacity:.35; mask-image:radial-gradient(ellipse at 60% 0%, black, transparent 72%); }

/* bento tile / cards */
.ap-tile{ background:var(--ap-panel); border:1px solid var(--ap-line); border-radius:1.25rem;
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
.ap-tile:hover{ transform:translateY(-4px); border-color:rgba(34,211,238,.5); box-shadow:0 20px 50px -24px rgba(34,211,238,.3); }
.ap-card{ background:var(--ap-panel); border:1px solid var(--ap-line); border-radius:1rem; transition:transform .25s ease, border-color .25s ease; }
.ap-card:hover{ transform:translateY(-4px); border-color:var(--ap-cyan); }

.ap-icon{ width:48px; height:48px; border-radius:.7rem; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, rgba(34,211,238,.16), rgba(8,145,178,.16)); color:var(--ap-cyan); border:1px solid rgba(34,211,238,.2); }

.ap-badge{ display:inline-flex; align-items:center; gap:.4rem; padding:.32rem .75rem; border-radius:999px;
  background:rgba(34,211,238,.1); color:var(--ap-cyan); font-size:.72rem; font-weight:600; border:1px solid rgba(34,211,238,.22); }
.ap-metric{ font-family:'Figtree',sans-serif; font-weight:800; letter-spacing:-0.02em; }

/* buttons */
.btn-cyan{ background:linear-gradient(100deg,var(--ap-cyan),var(--ap-teal)); color:#04222a; font-weight:700; transition:transform .2s ease, box-shadow .3s ease, filter .2s ease; }
.btn-cyan:hover{ transform:translateY(-2px); box-shadow:0 14px 30px -12px rgba(34,211,238,.6); filter:brightness(1.05); }
.btn-ghost{ border:1px solid var(--ap-line); color:var(--ap-text); font-weight:600; transition:background .2s ease,border-color .2s ease; }
.btn-ghost:hover{ background:rgba(34,211,238,.1); border-color:var(--ap-cyan); }

.ap-eyebrow{ display:inline-flex; align-items:center; gap:.5rem; font-family:'Figtree',sans-serif;
  text-transform:uppercase; letter-spacing:.2em; font-size:.72rem; font-weight:700; color:var(--ap-cyan); }
.ap-eyebrow::before{ content:""; width:22px; height:2px; background:var(--ap-cyan); display:inline-block; }

/* tabs */
.ap-tab{ display:inline-flex; align-items:center; gap:.5rem; padding:.7rem 1.2rem; border-radius:999px;
  border:1px solid var(--ap-line); color:var(--ap-slate); background:var(--ap-panel); font-weight:600; cursor:pointer;
  transition:all .2s ease; font-size:.92rem; }
.ap-tab:hover{ color:var(--ap-text); border-color:var(--ap-cyan); }
.ap-tab.is-active{ background:linear-gradient(100deg,var(--ap-cyan),var(--ap-teal)); color:#04222a; border-color:transparent; }
.ap-panel-tab{ display:none; }
.ap-panel-tab.is-active{ display:grid; }

.ap-step-num{ font-family:'Figtree',sans-serif; font-weight:800; color:rgba(34,211,238,.45); font-size:2.4rem; line-height:1; }

/* prose */
.ap-prose h2{ font-family:'Figtree',sans-serif; color:var(--ap-text); font-size:1.5rem; margin:2rem 0 .6rem; }
.ap-prose h3{ font-family:'Figtree',sans-serif; color:var(--ap-text); font-size:1.12rem; margin:1.4rem 0 .4rem; }
.ap-prose p,.ap-prose li{ color:var(--ap-slate); line-height:1.85; }
.ap-prose ul{ list-style:disc; padding-left:1.25rem; }
.ap-prose a{ color:var(--ap-cyan); text-decoration:underline; }
.ap-prose table{ width:100%; border-collapse:collapse; margin:1rem 0; }
.ap-prose th,.ap-prose td{ border:1px solid var(--ap-line); padding:.7rem .9rem; text-align:left; font-size:.9rem; color:var(--ap-slate); }
.ap-prose th{ color:var(--ap-text); font-family:'Figtree',sans-serif; font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; }

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