/* Wer kauft seine Aktien? – ruhig, hell, eine Signaturfarbe. Motel-One-Logik: ein Versprechen, eine Farbe, keine Fachsprache. */
:root{
  --bg:#F8F7F4; --fg:#1B1B19; --mute:#7E7D77; --faint:#B9B8B1; --line:#E4E3DE; --panel:#FFFFFF;
  --accent:#1E5F6B; --accent-ink:#FFFFFF;
  --good:#3B7A5A; --bad:#B4473C;
  --sans:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
}
html[data-accent="Terrakotta"]{ --accent:#B5562F }
*{box-sizing:border-box}
html{font-size:17px}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--sans);line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:880px;margin:0 auto;padding:0 max(20px,env(safe-area-inset-left))}
.k{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin:0 0 14px}
.muted{color:var(--mute)} .small{font-size:14px}
.num{font-family:var(--mono);font-variant-numeric:tabular-nums}
.up{color:var(--good)} .down{color:var(--bad)}

/* Kopf */
.top{max-width:880px;margin:0 auto;padding:28px max(20px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.brand{font-size:19px;font-weight:400;letter-spacing:-.01em}
.brand b{font-weight:700}
.nav{display:flex;align-items:center;gap:22px;font-size:15px;color:var(--mute);white-space:nowrap}
.nav a{white-space:nowrap}
.nav a:hover{color:var(--fg)}
.btn{display:inline-block;white-space:nowrap;background:var(--accent);color:var(--accent-ink);font-weight:600;padding:10px 18px;border-radius:999px;font-size:15px;line-height:1;transition:transform .12s}
.btn:hover{transform:translateY(-1px)}
.btn.big{padding:16px 28px;font-size:17px}
.btn.ghost{background:transparent;color:var(--fg);border:1px solid var(--line)}

/* Hero */
.hero{padding:72px 0 56px;border-bottom:1px solid var(--fg)}
.hero h1{font-size:clamp(36px,6.2vw,62px);font-weight:300;letter-spacing:-.03em;line-height:1.05;margin:0 0 24px;text-wrap:balance}
.hero .lead{font-size:20px;max-width:60ch;color:#3A3A37;margin:0 0 36px;font-weight:400}
.cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.cta-note{color:var(--mute);font-size:15px}

/* Abschnitte */
section{padding:56px 0}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 22px;padding-bottom:12px;border-bottom:1px solid var(--line)}
h2{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:500;margin:0}

/* Karten "Heute" */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:22px 22px 18px;display:flex;flex-direction:column;gap:10px;min-width:0}
.card .big{font-family:var(--mono);font-size:44px;font-weight:500;letter-spacing:-.03em;line-height:1}
.card .segs{display:grid;grid-template-columns:repeat(10,1fr);gap:3px}
.card .segs i{display:block;height:5px;background:var(--line);border-radius:1px}
.card .segs i.on{background:var(--accent)}
.card .word{font-weight:600;font-size:15px}
.card .txt{font-size:15px;color:#3A3A37;margin:0}
.card .who{font-size:13px;color:var(--mute)}
.card.new .word::after{content:"neu";font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:1px 7px;margin-left:8px;vertical-align:middle}
.empty{color:var(--mute);padding:28px 0;grid-column:1/-1}

/* So geht es */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.step .n{font-family:var(--mono);font-size:12px;color:var(--accent);display:block;margin-bottom:10px}
.step h3{font-size:19px;font-weight:600;margin:0 0 8px;letter-spacing:-.01em}
.step p{margin:0;font-size:15px;color:#3A3A37}

/* Mitglied */
.member{background:var(--fg);color:var(--bg);padding:56px 40px;border-radius:8px;margin:20px 0}
.member h2{color:var(--faint)}
.member p{font-size:20px;max-width:60ch;margin:14px 0 28px;font-weight:300}
.member .cta-note{display:block;margin-top:14px;color:var(--faint)}

/* Archiv */
.arch{display:grid;grid-template-columns:90px 1fr auto;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);align-items:baseline}
.arch:hover .arch-title{text-decoration:underline}
.arch-date{font-family:var(--mono);font-size:12px;color:var(--mute)}
.arch-title{font-size:17px;min-width:0}
.tag{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);border:1px solid var(--line);border-radius:999px;padding:2px 8px}

/* Beitrag */
.post-wrap{max-width:720px}
.post{padding:48px 0 80px}
.post h1{font-size:clamp(30px,4.6vw,42px);font-weight:400;letter-spacing:-.025em;line-height:1.1;margin:0 0 16px;text-wrap:balance}
.post .lead{font-size:19px;color:#3A3A37;margin:0 0 36px}
.content{font-size:17px}
.content h2{font-family:var(--sans);font-size:22px;letter-spacing:-.01em;text-transform:none;color:var(--fg);font-weight:600;margin:48px 0 14px;padding-top:24px;border-top:1px solid var(--line)}
.content h3{font-size:19px;font-weight:600;margin:28px 0 6px}
.content p{margin:0 0 14px}
.content ul{padding-left:20px;margin:0 0 14px}
.content li{margin:0 0 4px;font-size:15px}
.content table{width:100%;border-collapse:collapse;font-size:15px;margin:0 0 20px}
.content th{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);text-align:left;padding:8px 6px;border-bottom:1px solid var(--fg);font-weight:500}
.content td{padding:10px 6px;border-bottom:1px solid var(--line);vertical-align:top}
.content td:first-child{font-family:var(--mono);white-space:nowrap}
.content em{color:var(--mute);font-style:normal;font-size:14px}
.content a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--faint)}
.content hr{border:0;border-top:1px solid var(--line);margin:32px 0}
.paywall{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:32px;margin-top:32px;text-align:center}
.paywall h3{margin:0 0 8px;font-size:22px;font-weight:600}
.paywall p{color:#3A3A37;margin:0 0 20px}
.gh-post-upgrade-cta,aside.gh-post-upgrade-cta{display:none!important}

/* Fuß */
.foot{max-width:880px;margin:40px auto 0;padding:28px max(20px,env(safe-area-inset-left)) 60px;border-top:1px solid var(--line);color:var(--mute);font-size:13px;line-height:1.6}
.foot-claim{color:var(--fg);font-size:17px;font-weight:300;margin:0 0 12px}
.foot a{text-decoration:underline;text-underline-offset:3px}

@media (max-width:720px){
  html{font-size:16px}
  .top{padding:20px max(16px,env(safe-area-inset-left));flex-direction:column;align-items:flex-start;gap:14px}
  .nav{gap:16px;font-size:14px;width:100%;justify-content:space-between}
  .nav .btn{padding:9px 14px;font-size:14px}
  .cards,.steps{grid-template-columns:1fr}
  .hero{padding:44px 0 40px}
  .member{padding:40px 24px}
  .arch{grid-template-columns:70px 1fr}
  .arch .tag{display:none}
  .content td:first-child{white-space:normal}
}

/* Mitglied werden / Kündigen */
.plans{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 28px}
.plan{display:flex;flex-direction:column;gap:4px;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:18px;cursor:pointer}
.plan:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.plan input{position:absolute;opacity:0}
.plan-name{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.plan-price{font-size:32px;font-weight:500;letter-spacing:-.02em}
.plan-note{font-size:14px;color:var(--mute)}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:15px;margin:0 0 12px}
.consent input{margin-top:4px;accent-color:var(--accent)}
.content button.btn{border:0;cursor:pointer;margin:16px 0 8px}
.content button.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}
#kf{display:flex;flex-direction:column;gap:14px;max-width:480px;margin:20px 0}
#kf label{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--mute)}
#kf input,#kf select{font:inherit;font-size:16px;color:var(--fg);padding:10px 12px;border:1px solid var(--line);border-radius:4px;background:var(--panel)}
@media (max-width:720px){.plans{grid-template-columns:1fr}}

/* Tabellen auf dem Handy */
.tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 20px}
.tscroll table{margin:0}
@media (max-width:720px){
  .tscroll{margin:0 -16px 20px;padding:0 16px}
  .tscroll table{min-width:560px;font-size:14px}
  .content td:first-child{white-space:nowrap}
}
