@font-face{font-family:'Sora';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/sora-400.woff2') format('woff2');}
@font-face{font-family:'Sora';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/sora-600.woff2') format('woff2');}
@font-face{font-family:'Sora';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/sora-700.woff2') format('woff2');}
@font-face{font-family:'Sora';font-style:normal;font-weight:800;font-display:swap;src:url('/fonts/sora-800.woff2') format('woff2');}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/jetbrainsmono-400.woff2') format('woff2');}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/jetbrainsmono-500.woff2') format('woff2');}
.ti{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask:var(--ti) center/contain no-repeat;mask:var(--ti) center/contain no-repeat;vertical-align:-0.125em;flex-shrink:0;}
.ti-chevron-down{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}
.ti-x{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6L6 18M6 6l12 12'/%3E%3C/svg%3E")}
.ti-users{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='7' r='3.2'/%3E%3Cpath d='M2.5 21v-1a5 5 0 0 1 5-5h3a5 5 0 0 1 5 5v1'/%3E%3Cpath d='M16 4a3 3 0 0 1 0 6'/%3E%3Cpath d='M21.5 21v-1a5 5 0 0 0-3-4.6'/%3E%3C/svg%3E")}
.ti-chart-line{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4v16h16'/%3E%3Cpath d='M7 14l3-3 3 3 5-6'/%3E%3C/svg%3E")}
.ti-share{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='12' r='2.4'/%3E%3Ccircle cx='18' cy='6' r='2.4'/%3E%3Ccircle cx='18' cy='18' r='2.4'/%3E%3Cpath d='M8.2 10.9l7.6-3.7M8.2 13.1l7.6 3.7'/%3E%3C/svg%3E")}
.ti-lock{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='9' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E")}
.ti-check{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-11'/%3E%3C/svg%3E")}
.ti-camera{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8h3l2-2h6l2 2h3a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1z'/%3E%3Ccircle cx='12' cy='13' r='3.3'/%3E%3C/svg%3E")}
.ti-user-question{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='7' r='3.3'/%3E%3Cpath d='M3 21v-1a5 5 0 0 1 5-5h2'/%3E%3Cpath d='M15.5 14a2 2 0 1 1 3 1.7c-.6.4-1 .8-1 1.8'/%3E%3Cpath d='M17.5 21h.01'/%3E%3C/svg%3E")}
.ti-user-plus{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='7' r='3.3'/%3E%3Cpath d='M3 21v-1a5 5 0 0 1 5-5h3'/%3E%3Cpath d='M16 11h6M19 8v6'/%3E%3C/svg%3E")}
.ti-settings{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M12 2v3M12 19v3M4.2 4.2l2.1 2.1M17.7 17.7l2.1 2.1M2 12h3M19 12h3M4.2 19.8l2.1-2.1M17.7 6.3l2.1-2.1'/%3E%3C/svg%3E")}
.ti-repeat{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 4l3 3-3 3'/%3E%3Cpath d='M20 7H8a4 4 0 0 0-4 4'/%3E%3Cpath d='M7 20l-3-3 3-3'/%3E%3Cpath d='M4 17h12a4 4 0 0 0 4-4'/%3E%3C/svg%3E")}
.ti-radar-2{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Ccircle cx='12' cy='12' r='4.5'/%3E%3Cpath d='M12 12l6.5-3.2'/%3E%3C/svg%3E")}
.ti-plus{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E")}
.ti-heart{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20s-7-4.4-9-8.8a4.5 4.5 0 0 1 9-2 4.5 4.5 0 0 1 9 2C19 15.6 12 20 12 20z'/%3E%3C/svg%3E")}
.ti-eye{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7-10-7-10-7z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E")}
.ti-download{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12M7 11l5 5 5-5'/%3E%3Cpath d='M4 21h16'/%3E%3C/svg%3E")}
.ti-currency-bitcoin{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 5h6a3 3 0 0 1 0 6H8zM8 11h7a3 3 0 0 1 0 6H8zM8 5v12M10.5 5V3M14 5V3M10.5 19v-2M14 19v-2'/%3E%3C/svg%3E")}
.ti-circle-check{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12l3 3 5-6'/%3E%3C/svg%3E")}
.ti-arrow-right{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E")}
.ti-adjustments-horizontal{--ti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h9M17 6h3M4 12h3M11 12h9M4 18h6M14 18h6'/%3E%3Ccircle cx='15' cy='6' r='1.9'/%3E%3Ccircle cx='9' cy='12' r='1.9'/%3E%3Ccircle cx='12' cy='18' r='1.9'/%3E%3C/svg%3E")}



    *{box-sizing:border-box;margin:0;padding:0;}
    :root{
      --orange:#F7931A;
      --orange-dim:#c97615;
      --orange-glow:rgba(247,147,26,0.22);
      --orange-bg:rgba(247,147,26,0.08);
      --orange-border:rgba(247,147,26,0.25);
      --green:#34D399;
      --red:#ef4444;
      --bg:#04060C;
      --bg2:#080C18;
      --bg3:#0d1220;
      --border:rgba(255,255,255,0.06);
      --border2:rgba(247,147,26,0.15);
      --text:#e8e0d0;
      --muted:#857a62;       /* schwacher Text – WCAG AA 4.8:1 (vorher 1.7:1, unlesbar) */
      --muted2:#9a8f78;      /* sekundärer Text – WCAG AA 6.3:1 (vorher 2.6:1) */

      /* ═══ FARB-KONTRAKT (Bedeutung je Farbe – bitte einhalten) ═══
         Orange  = Marke + primäre Aktion (CTA). NICHT für Daten/Status.
         Sentiment (Markt): bull/bear/neutral – NUR für Bias/Kursrichtung.
         Status (Feedback): error/success/info/warn – NUR für System-Rückmeldung. */

      /* === SENTIMENT (Markt) === */
      --bull:#34d399;        /* bullisch / positiv */
      --bull-soft:#86efac;   /* leicht bullisch */
      --bear:#ef4444;        /* bärisch / negativ */
      --bear-soft:#fca5a5;   /* leicht bärisch */
      --neutral:#9ca3af;     /* neutral / grau */
      --sent-neutral:#c4cbd6;/* neutraler Post (heller) */

      /* === STATUS (Feedback – getrennt vom Sentiment) === */
      --error:#ef4444;       /* Fehler */
      --success:#34d399;     /* Erfolg */
      --info:#60a5fa;        /* Info / KI-Vorschlag */
      --warn:#EAB308;        /* Warnung / unklar / kein klares Bias */

      --grey:#828a98;        /* offen / inaktiv – WCAG AA 5.8:1 (vorher 4.2:1) */
      --text-strong:#f0e8d8; /* kräftiger Text */
      --gold:#c8a87a;        /* Akzent-Text (Kurse, Werte) */

      /* === TYPOGRAFIE-SKALA ===
         Lesbarkeits-Boden angehoben (kein 8px mehr); Display-Größen unverändert,
         damit große Zahlen/Layout stabil bleiben. */
      --fs-2xs: 9px;
      --fs-xs: 10px;
      --fs-sm: 11px;
      --fs-base: 12px;
      --fs-md: 13px;
      --fs-lg: 15px;
      --fs-xl: 17px;
      --fs-2xl: 22px;
      --fs-3xl: 28px;
      --fs-4xl: 36px;
      --fs-5xl: 40px;

      /* === RADIUS-SKALA === */
      --r-xs: 4px;
      --r-sm: 6px;
      --r-md: 8px;
      --r-lg: 10px;
      --r-xl: 16px;
      --r-2xl: 20px;

      /* === SPACING-SKALA (4-basiert; auch Sektions-Ebene tokenisiert) === */
      --sp-1: 4px;
      --sp-2: 6px;
      --sp-3: 8px;
      --sp-4: 10px;
      --sp-5: 12px;
      --sp-6: 16px;
      --sp-7: 20px;   /* Sektions-Abstand (Inhaltsseiten) */
      --sp-8: 24px;   /* Karten-Innenabstand */
      --sp-9: 32px;   /* großer Block-Abstand */
      --sp-10: 48px;  /* Seiten-Fußraum */
    }
    html,body{height:100%;background:var(--bg);overflow-x:hidden;max-width:100vw;font-family:'Sora',sans-serif;font-variant-numeric:tabular-nums;}
    canvas,img,table{max-width:100%;}
    #app{background:var(--bg);min-height:100vh;max-width:100vw;font-family:'Sora',sans-serif;color:var(--text);display:flex;flex-direction:column;overflow-x:hidden;}

    /* NAV */
    .nav{display:flex;align-items:center;padding:0 1.25rem;gap:var(--sp-1);border-bottom:1px solid var(--border2);background:rgba(4,6,12,0.98);flex-shrink:0;position:sticky;top:0;z-index:50;max-width:100vw;overflow-x:auto;scrollbar-width:none;}
    .nav::-webkit-scrollbar{display:none;}
    .nav-brand{display:flex;flex-direction:column;margin-right:2rem;padding:0.85rem 0;}
    .nav-brand-name{font-size:var(--fs-lg);font-weight:800;letter-spacing:0.5px;color:var(--orange);}
    .nav-brand-sub{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);letter-spacing:1px;margin-top:1px;}
    .tab{display:flex;align-items:center;gap:var(--sp-2);padding:6px 10px;margin:0 2px;font-size:var(--fs-xs);font-weight:700;letter-spacing:1.2px;font-family:'JetBrains Mono',monospace;color:var(--muted2);cursor:pointer;border:1px solid transparent;border-radius:var(--r-sm);transition:all 0.2s;user-select:none;white-space:nowrap;}
    .tab i{font-size:var(--fs-lg);line-height:1;}
    .tab:hover{color:var(--gold);background:rgba(255,255,255,0.04);}
    .tab.active{color:var(--orange);background:rgba(247,147,26,0.08);border-color:rgba(247,147,26,0.25);}
    .nav-right{margin-left:auto;display:flex;align-items:center;gap:var(--sp-4);}
    .live-wrap{display:flex;align-items:center;gap:var(--sp-2);}
    .live-dot{width:6px;height:6px;border-radius:50%;background:var(--orange);animation:pulse 2.5s infinite;}
    .live-lbl{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    @keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.2;}}
    

    /* PAGES */
    .page{display:none;flex:1;flex-direction:column;overflow:hidden;}
    .page.active{display:flex;}

    /* ══ LANDING ══ */
    #page-landing{position:relative;overflow-y:auto;overflow-x:hidden;min-height:calc(100vh - 57px);}
    .stars{position:absolute;inset:0;pointer-events:none;z-index:0;}
    .star{position:absolute;background:var(--gold);border-radius:50%;animation:twinkle var(--d) ease-in-out infinite alternate;opacity:var(--o);}
    @keyframes twinkle{0%{opacity:var(--o);}50%{opacity:calc(var(--o)*0.25);transform:scale(1.4);}100%{opacity:0.04;transform:scale(0.8);}}
    .grid-overlay{position:absolute;inset:0;pointer-events:none;z-index:0;
      background-image:linear-gradient(rgba(247,147,26,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(247,147,26,0.04) 1px,transparent 1px);
      background-size:40px 40px;}
    .landing-header{text-align:center;padding:0.5rem 1rem 0;position:relative;z-index:2;flex-shrink:0;}
    .landing-header .brand-line{font-size:var(--fs-base);font-weight:700;letter-spacing:3px;color:var(--orange);font-family:'JetBrains Mono',monospace;margin-bottom:6px;}
    .landing-header h1{font-size:var(--fs-3xl);font-weight:800;color:var(--text-strong);letter-spacing:-0.5px;}
    .landing-header h1 span{color:var(--orange);}
    .landing-header p{font-size:var(--fs-sm);color:var(--muted2);font-family:'JetBrains Mono',monospace;margin-top:6px;letter-spacing:1px;}
    .bubble-stage{position:relative;width:100%;height:clamp(300px,44vh,480px);min-height:300px;z-index:1;overflow:hidden;flex-shrink:0;}

    /* ── Rangliste (unter dem Radar-Hero) ─────────────────────────────────── */
    .rank-wrap{width:100%;max-width:760px;margin:0 auto;padding:0 var(--sp-6) var(--sp-7);}
    .rank-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-4);flex-wrap:wrap;}
    .rank-title{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--orange);letter-spacing:1.5px;}
    .rank-sort{display:inline-flex;gap:var(--sp-1);flex-shrink:0;}
    .rank-sort-btn{background:transparent;border:1px solid var(--border2);color:var(--muted2);font-family:'JetBrains Mono',monospace;font-size:var(--fs-2xs);padding:4px 9px;border-radius:var(--r-sm);cursor:pointer;letter-spacing:0.3px;transition:all 0.15s;}
    .rank-sort-btn.active,.rank-sort-btn:hover{background:var(--orange-bg);border-color:var(--orange-border);color:var(--orange);}
    .rank-list{display:flex;flex-direction:column;gap:var(--sp-2);}
    .rank-row{display:grid;grid-template-columns:22px 30px 1fr auto;align-items:center;gap:var(--sp-3);padding:8px 10px;border-radius:var(--r-md);background:rgba(255,255,255,0.02);border:0.5px solid var(--border2);cursor:pointer;transition:background 0.15s,transform 0.15s;}
    .rank-meta{display:flex;align-items:center;gap:var(--sp-5);}
    .rank-row:hover{background:rgba(255,255,255,0.05);transform:translateX(3px);}
    .rank-num{font-size:var(--fs-xs);color:var(--muted);font-family:'JetBrains Mono',monospace;text-align:center;}
    .rank-av{width:30px;height:30px;border-radius:50%;object-fit:cover;border:1.5px solid var(--border2);}
    .rank-id{min-width:0;}
    .rank-name{font-size:var(--fs-sm);font-weight:700;color:var(--text);font-family:'JetBrains Mono',monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
    .rank-sub{font-size:var(--fs-2xs);color:var(--muted2);font-family:'JetBrains Mono',monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
    .rank-rel{text-align:right;}
    .rank-rel-lbl{font-size:var(--fs-2xs);font-weight:700;font-family:'JetBrains Mono',monospace;white-space:nowrap;}
    .rank-rel-n{font-size:var(--fs-2xs);color:var(--muted);font-family:'JetBrains Mono',monospace;}
    .rank-bias{text-align:right;min-width:64px;}
    .rank-bias-lbl{font-size:var(--fs-2xs);font-weight:700;font-family:'JetBrains Mono',monospace;white-space:nowrap;}
    .rank-bias-val{font-size:var(--fs-md);font-weight:800;font-family:'JetBrains Mono',monospace;}
    .rank-empty{font-size:var(--fs-sm);color:var(--muted);font-family:'JetBrains Mono',monospace;text-align:center;padding:16px 0;}
    @media(max-width:520px){
      .rank-row{grid-template-columns:18px 26px 1fr auto;}
      .rank-meta{flex-direction:column;align-items:flex-end;gap:1px;}
      .rank-rel-n{display:none;}   /* "N bewertet" auf Mobile ausblenden, Verlässlichkeits-Label bleibt */
    }
    .bubble-wrap{position:absolute;cursor:pointer;transform:translate(-50%,-50%);transition:transform 0.2s;user-select:none;}
    .bubble-wrap:hover{transform:translate(-50%,-50%) scale(1.08);}
    .bubble{border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:visible;border:1px solid rgba(247,147,26,0.1);animation:float var(--fd) ease-in-out infinite alternate;box-shadow:0 0 40px var(--glow),0 8px 40px rgba(0,0,0,0.4),inset 0 0 24px rgba(0,0,0,0.5);}
    @keyframes float{from{transform:translateY(0) rotate(-0.4deg);}to{transform:translateY(var(--fy,-12px)) rotate(0.4deg);}}

    /* ══ INTRO ANIMATION ══ */
    .intro-canvas{position:absolute;inset:0;pointer-events:none;z-index:10;}
    .intro-logo{position:absolute;inset:0;z-index:11;pointer-events:none;}
    .intro-elem{position:absolute;transform:translate(-50%,-50%);
      line-height:1;white-space:nowrap;}
    .bubble-wrap{opacity:0;} /* start hidden */
    .bubble-wrap.visible{opacity:1;transition:opacity 0.4s ease,transform 0.5s cubic-bezier(0.34,1.56,0.64,1);}

    /* ── Radar Blip Echo (Intro) ──────────────────────────────────────────── */
    @keyframes radar-blip-pulse {
      0%   { opacity:0;   transform:translate(-50%,-50%) scale(0.3); filter:brightness(1); }
      12%  { opacity:1;   transform:translate(-50%,-50%) scale(1.35); filter:brightness(2.2); }
      30%  { opacity:0.55;transform:translate(-50%,-50%) scale(0.92); filter:brightness(1.4); }
      45%  { opacity:1;   transform:translate(-50%,-50%) scale(1.08); filter:brightness(1.6); }
      65%  { opacity:0.8; transform:translate(-50%,-50%) scale(0.98); filter:brightness(1.1); }
      100% { opacity:1;   transform:translate(-50%,-50%) scale(1);    filter:brightness(1); }
    }
    .bubble-wrap.radar-blip{animation:radar-blip-pulse 0.7s cubic-bezier(0.22,0.61,0.36,1) both;}
    .bubble-wrap.radar-blip .bubble{box-shadow:0 0 0 2px rgba(247,147,26,0.0),0 0 40px var(--glow),0 8px 40px rgba(0,0,0,0.4),inset 0 0 24px rgba(0,0,0,0.5);}
    .suggest-wrap{opacity:0;}
    .suggest-wrap.visible{opacity:1;transition:opacity 0.4s ease;}
    .bubble img{border-radius:50%;object-fit:cover;border:2px solid rgba(247,147,26,0.2);}
    .bubble-name{font-size:var(--fs-xs);font-weight:700;margin-top:3px;color:var(--text-strong);text-shadow:0 0 10px #000;text-align:center;padding:0 6px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
    .bubble-tag{font-size:var(--fs-2xs);color:rgba(200,168,120,0.62);font-family:'JetBrains Mono',monospace;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;}
    /* ── Halbkreis-Achse: Bärisch ←→ Bullisch ── */
    .bias-axis-lbl{position:absolute;font-size:var(--fs-2xs);font-weight:700;font-family:'JetBrains Mono',monospace;letter-spacing:1px;white-space:nowrap;transform:translate(-50%,-50%);pointer-events:none;}
    @keyframes cb-glow-pulse{
      0%,100%{ box-shadow:0 0 3px 0.5px rgba(52,211,153,0.45); }
      50%{ box-shadow:0 0 7px 2px rgba(52,211,153,0.8); }
    }
    .cb-glow{ animation:cb-glow-pulse 1.8s ease-in-out infinite; }
    .bubble-inner{position:absolute;inset:0;border-radius:50%;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;}
    .bias-ring{position:absolute;inset:2px;border-radius:50%;border:2.5px solid var(--bc);opacity:0.2;animation:ring-pulse var(--rs) ease-in-out infinite;}
    .bias-echo{position:absolute;inset:2px;border-radius:50%;border:2.5px solid var(--bc);opacity:0;pointer-events:none;animation:ring-echo var(--rs) ease-in-out infinite;}
    @keyframes ring-pulse{
      0%   {opacity:0.2;}
      50%  {opacity:0.9;}
      100% {opacity:0.2;}
    }
    @keyframes btc-pulse{
      0%,100%{color:rgba(247,147,26,0.45);text-shadow:none;}
      50%{color:#F7931A;text-shadow:0 0 12px rgba(247,147,26,0.9),0 0 28px rgba(247,147,26,0.5);}
    }
    @keyframes ring-echo{
      0%   {transform:scale(1);   opacity:0;}
      45%  {transform:scale(1);   opacity:0;}
      50%  {transform:scale(1);   opacity:0.7;}
      100% {transform:scale(1.35);opacity:0;}
    }

    /* ══ DASHBOARD OVERLAY ══ */
    .overlay{display:none;position:fixed;inset:0;background:rgba(2,4,8,0.88);z-index:200;align-items:center;justify-content:center;}
    .overlay.open{display:flex;}
    .dashboard{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-xl);width:92%;max-width:640px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 0 60px rgba(247,147,26,0.08),0 24px 80px rgba(0,0,0,0.95);}
    .dashboard::-webkit-scrollbar{width:3px;}
    .dashboard::-webkit-scrollbar-thumb{background:#1a1510;border-radius:var(--r-xs);}
    .d-header{display:flex;align-items:center;gap:var(--sp-5);padding:1.25rem 1.5rem;border-bottom:1px solid var(--border2);position:relative;}
    .d-avatar{width:62px;height:62px;border-radius:50%;object-fit:cover;border:2px solid var(--orange-border);flex-shrink:0;}
    .d-name{font-size:var(--fs-xl);font-weight:700;color:var(--text-strong);}
    .d-handle{font-family:'JetBrains Mono',monospace;font-size:var(--fs-base);color:var(--muted2);margin-top:2px;}
    .d-followers{display:inline-block;margin-top:5px;font-size:var(--fs-base);font-weight:600;padding:2px 10px;border-radius:var(--r-2xl);background:var(--orange-bg);color:var(--orange);border:1px solid var(--orange-border);font-family:'JetBrains Mono',monospace;}
    /* Filter button */
    .filter-btn{background:rgba(247,147,26,0.08);border:1px solid var(--orange-border);color:var(--orange);font-family:'JetBrains Mono',monospace;font-size:var(--fs-sm);font-weight:700;padding:6px 14px;border-radius:var(--r-md);cursor:pointer;letter-spacing:1px;display:flex;align-items:center;gap:var(--sp-2);transition:all 0.2s;margin-bottom:4px;}
    .filter-btn:hover{background:rgba(247,147,26,0.16);}
    .filter-count{background:var(--orange);color:#04060C;border-radius:var(--r-lg);padding:1px 6px;font-size:var(--fs-xs);font-weight:800;}
    /* Filter panel */
    .filter-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:200;display:none;backdrop-filter:blur(2px);}
    .filter-overlay.open{display:block;}
    .filter-panel{position:fixed;top:0;right:0;height:100vh;width:min(380px,95vw);background:#0a0d14;border-left:1px solid var(--border2);z-index:201;display:flex;flex-direction:column;transform:translateX(100%);transition:transform 0.28s cubic-bezier(0.4,0,0.2,1);}
    .filter-panel.open{transform:translateX(0);}
    .filter-panel-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.25rem 0.5rem;}
    .filter-panel-title{font-size:var(--fs-base);font-weight:700;font-family:'JetBrains Mono',monospace;color:var(--orange);letter-spacing:1.5px;}
    .filter-panel-close{background:none;border:none;color:var(--muted2);cursor:pointer;font-size:var(--fs-xl);padding:2px;}
    .filter-panel-close:hover{color:#fff;}
    .filter-panel-sub{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);padding:0 1.25rem 0.75rem;letter-spacing:0.3px;}
    .filter-tag-row{display:flex;flex-wrap:wrap;gap:var(--sp-2);padding:0 1.25rem 0.75rem;border-bottom:1px solid var(--border2);}
    .filter-tag-pill{font-size:var(--fs-2xs);font-weight:700;font-family:'JetBrains Mono',monospace;letter-spacing:0.8px;padding:3px 9px;border-radius:var(--r-xs);cursor:pointer;border:1px solid var(--border2);background:transparent;color:var(--muted2);transition:all 0.15s;}
    .filter-tag-pill.active{color:#fff;border-color:var(--orange);background:rgba(247,147,26,0.12);}
    .filter-list{flex:1;overflow-y:auto;padding:0.75rem 1.25rem;display:flex;flex-direction:column;gap:var(--sp-2);}
    .filter-item{display:flex;align-items:center;gap:var(--sp-4);padding:8px 10px;border-radius:var(--r-md);border:1px solid var(--border2);cursor:pointer;transition:all 0.15s;background:rgba(255,255,255,0.01);}
    .filter-item:hover{border-color:var(--orange-border);background:rgba(247,147,26,0.04);}
    .filter-item.selected{border-color:var(--orange-border);background:rgba(247,147,26,0.06);}
    .filter-item.disabled{opacity:0.35;cursor:not-allowed;}
    .filter-item.disabled:hover{border-color:var(--border2);background:rgba(255,255,255,0.01);}
    .filter-item-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;border:1px solid var(--border2);flex-shrink:0;}
    .filter-item-info{flex:1;min-width:0;}
    .filter-item-name{font-size:var(--fs-md);font-weight:600;color:var(--text-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
    .filter-item-handle{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    .filter-item-tags{display:flex;flex-wrap:wrap;gap:var(--sp-1);margin-top:3px;}
    .filter-check{width:18px;height:18px;border-radius:var(--r-xs);border:2px solid var(--border2);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-base);transition:all 0.15s;}
    .filter-item.selected .filter-check{background:var(--orange);border-color:var(--orange);color:#04060C;}
    .filter-panel-footer{padding:1rem 1.25rem;border-top:1px solid var(--border2);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);}
    .filter-reset-btn{font-family:'JetBrains Mono',monospace;font-size:var(--fs-xs);font-weight:700;letter-spacing:0.8px;background:transparent;border:1px solid var(--border2);color:var(--muted2);padding:6px 12px;border-radius:var(--r-sm);cursor:pointer;transition:all 0.15s;}
    .filter-reset-btn:hover{border-color:var(--orange-border);color:var(--orange);}
    .filter-status{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    .inf-tags{display:flex;flex-wrap:wrap;gap:var(--sp-1);margin-top:6px;}
    .inf-tag{font-size:var(--fs-2xs);font-weight:700;font-family:'JetBrains Mono',monospace;letter-spacing:0.8px;padding:2px 7px;border-radius:var(--r-xs);border:1px solid;}
    .inf-tag-hodler{background:rgba(52,211,153,0.08);color:var(--bull);border-color:rgba(52,211,153,0.3);}
    .inf-tag-trader{background:rgba(239,68,68,0.08);color:var(--bear);border-color:rgba(239,68,68,0.3);}
    .inf-tag-dca{background:rgba(96,165,250,0.08);color:#60a5fa;border-color:rgba(96,165,250,0.3);}
    .inf-tag-onchain{background:rgba(167,139,250,0.08);color:#a78bfa;border-color:rgba(167,139,250,0.3);}
    .inf-tag-technisch{background:rgba(251,191,36,0.08);color:#fbbf24;border-color:rgba(251,191,36,0.3);}
    .inf-tag-fundamental{background:rgba(249,115,22,0.08);color:#f97316;border-color:rgba(249,115,22,0.3);}
    .inf-tag-sentiment{background:rgba(236,72,153,0.08);color:#ec4899;border-color:rgba(236,72,153,0.3);}
    .close-btn{position:absolute;top:1rem;right:1rem;background:rgba(247,147,26,0.06);border:1px solid var(--border2);border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--muted2);font-size:var(--fs-xl);transition:all 0.2s;}
    .close-btn:hover{background:var(--orange-bg);color:var(--orange);}
    .d-body{padding:var(--sp-8);}
    .sec-lbl{font-size:var(--fs-sm);font-weight:700;letter-spacing:2px;color:var(--muted);font-family:'JetBrains Mono',monospace;margin-bottom:10px;}
    .sec-block{margin-bottom:1.5rem;}
    .divider{height:1px;background:var(--border2);margin-bottom:1.5rem;}
    .bias-row2{display:flex;align-items:center;gap:var(--sp-5);}
    .bias-bar-bg{flex:1;height:8px;background:rgba(255,255,255,0.04);border-radius:var(--r-xs);overflow:hidden;}
    .bias-bar-fill{height:100%;border-radius:var(--r-xs);}
    .bias-score-big{font-size:var(--fs-4xl);font-weight:800;margin-bottom:5px;}
    .btc-dir{font-size:var(--fs-xl);font-weight:800;letter-spacing:0;}
    .detail-pill{display:inline-flex;align-items:center;gap:var(--sp-1);font-size:var(--fs-2xs);font-weight:700;font-family:'JetBrains Mono',monospace;letter-spacing:0.5px;padding:3px 8px;border-radius:var(--r-2xl);border:1px solid rgba(247,147,26,0.3);background:rgba(247,147,26,0.06);color:var(--orange);cursor:pointer;transition:all 0.15s;user-select:none;margin-left:8px;vertical-align:middle;}
    .detail-pill:hover{background:rgba(247,147,26,0.12);border-color:rgba(247,147,26,0.5);}
    .detail-pill i{font-size:var(--fs-sm);transition:transform 0.2s;}
    .detail-pill.open i{transform:rotate(180deg);}
    .detail-box{overflow:hidden;max-height:0;transition:max-height 0.3s ease,opacity 0.3s ease;opacity:0;}
    .detail-box.open{max-height:200px;opacity:1;}
    .detail-box-inner{margin-top:8px;padding:10px 12px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:var(--r-md);font-size:var(--fs-base);font-family:'JetBrains Mono',monospace;color:var(--gold);line-height:1.6;white-space:pre-wrap;}
    .btc-badge{display:inline-block;font-size:var(--fs-base);font-weight:700;padding:3px 10px;border-radius:var(--r-2xl);font-family:'JetBrains Mono',monospace;margin-top:4px;}
    .trade-card-d{background:rgba(247,147,26,0.03);border:1px solid var(--border2);border-radius:var(--r-lg);overflow:hidden;margin-bottom:8px;}
    .trade-card-d-hdr{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid var(--border2);}
    .trade-type-lbl{font-size:var(--fs-md);font-weight:700;font-family:'JetBrains Mono',monospace;}
    .trade-date-lbl{font-size:var(--fs-sm);color:var(--muted);font-family:'JetBrains Mono',monospace;}
    .trade-tbl{width:100%;border-collapse:collapse;}
    .trade-tbl td{padding:7px 12px;font-size:var(--fs-md);font-family:'JetBrains Mono',monospace;border-bottom:1px solid rgba(247,147,26,0.05);}
    .trade-tbl td:first-child{color:var(--muted2);width:38%;}
    .trade-tbl td:last-child{color:var(--gold);text-align:right;}
    .trade-tbl tr:last-child td{border-bottom:none;}
    .post-item{background:rgba(247,147,26,0.02);border:1px solid var(--border2);border-radius:var(--r-lg);padding:12px;margin-bottom:8px;}
    /* BTC Chart */
    .chart-wrap{position:relative;width:100%;min-height:200px;margin-bottom:1.25rem;background:rgba(247,147,26,0.02);border-radius:var(--r-lg);border:1px solid rgba(247,147,26,0.08);overflow:visible;}
    .chart-svg{width:100%;display:block;}
    .chart-post-list{margin-top:10px;display:flex;flex-direction:column;gap:var(--sp-1);}
    .chart-post-item{border-radius:var(--r-md);border:1px solid rgba(247,147,26,0.08);background:rgba(255,255,255,0.02);overflow:hidden;cursor:pointer;transition:border-color 0.15s;}
    .chart-post-item.highlighted{border-color:rgba(247,147,26,0.4);background:rgba(247,147,26,0.06);box-shadow:0 0 8px rgba(247,147,26,0.1);}
    .chart-post-header{display:flex;align-items:center;gap:var(--sp-3);padding:7px 10px;}
    .chart-post-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
    .chart-post-date{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);flex-shrink:0;}
    .chart-post-preview{font-size:var(--fs-sm);color:#8a7a60;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:'Sora',sans-serif;}
    .chart-post-chevron{font-size:var(--fs-base);color:var(--muted2);flex-shrink:0;transition:transform 0.2s;}
    .chart-post-item.open .chart-post-chevron{transform:rotate(180deg);}
    .chart-post-body{max-height:0;overflow:hidden;transition:max-height 0.3s ease,opacity 0.3s ease;opacity:0;padding:0 10px;}
    .chart-post-item.open .chart-post-body{max-height:200px;opacity:1;padding:0 10px 10px;}
    .chart-post-tag{display:inline-block;font-size:var(--fs-2xs);font-weight:700;font-family:'JetBrains Mono',monospace;padding:2px 7px;border-radius:var(--r-2xl);margin-bottom:6px;}
    .chart-post-text{font-size:var(--fs-base);color:#8a7a60;line-height:1.55;font-family:'Sora',sans-serif;margin-bottom:6px;}
    .chart-post-stats{display:flex;gap:var(--sp-4);font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    .chart-post-price{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:var(--muted);margin-left:auto;}
    .post-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;}
    .post-date-lbl{font-size:var(--fs-sm);color:var(--muted);font-family:'JetBrains Mono',monospace;}
    .post-txt{font-size:var(--fs-md);color:#8a7a60;line-height:1.6;}
    .post-stats{display:flex;gap:var(--sp-5);margin-top:8px;}
    .post-stat{font-size:var(--fs-base);color:var(--muted2);font-family:'JetBrains Mono',monospace;display:flex;align-items:center;gap:var(--sp-1);}
    .stag{display:inline-block;font-size:var(--fs-xs);font-weight:700;padding:2px 8px;border-radius:var(--r-2xl);font-family:'JetBrains Mono',monospace;}
    .sbull{background:rgba(52,211,153,0.12);color:var(--bull);border:1px solid rgba(52,211,153,0.25);}
    .sbear{background:rgba(239,68,68,0.12);color:var(--bear);border:1px solid rgba(239,68,68,0.25);}
    .sneu{background:rgba(156,163,175,0.12);color:var(--neutral);border:1px solid rgba(156,163,175,0.25);}
    .no-trade-lbl{font-size:var(--fs-md);color:var(--muted);font-family:'JetBrains Mono',monospace;padding:8px 0;}

    /* ══ ADMIN ══ */
    #page-admin{min-height:calc(100vh - 57px);}
    .admin-layout{display:grid;grid-template-columns:200px 1fr;flex:1;height:calc(100vh - 100px);overflow:hidden;transition:grid-template-columns 0.2s ease;}
    .admin-layout.sidebar-collapsed{grid-template-columns:52px 1fr;}
    .admin-sidebar{border-right:1px solid var(--border2);overflow-y:auto;padding:0.75rem 0;transition:width 0.2s ease;}
    .sb-lbl{font-size:var(--fs-xs);font-weight:700;letter-spacing:2px;color:var(--muted);padding:0 1rem;margin-bottom:6px;font-family:'JetBrains Mono',monospace;}
    .inf-item{display:flex;align-items:center;gap:var(--sp-3);padding:9px 1rem;cursor:pointer;border-left:2px solid transparent;transition:all 0.15s;}
    .inf-item:hover{background:rgba(247,147,26,0.04);}
    .inf-item.active{background:rgba(247,147,26,0.07);border-left-color:var(--orange);}
    /* Collapsed sidebar: icons only */
    .admin-sidebar.collapsed{width:52px!important;min-width:52px!important;}
    .admin-sidebar.collapsed .inf-nm,.admin-sidebar.collapsed .inf-hd,.admin-sidebar.collapsed .inf-dot-sb,.admin-sidebar.collapsed .sb-lbl-text{display:none;}
    .admin-sidebar.collapsed .inf-item{padding:8px;justify-content:center;gap:0;}
    .admin-sidebar.collapsed .sb-lbl{padding:0;display:flex;justify-content:center;}
    .sb-toggle{background:none;border:none;cursor:pointer;color:var(--muted2);font-size:var(--fs-lg);padding:2px 4px;border-radius:var(--r-xs);transition:color 0.15s;flex-shrink:0;}
    .sb-toggle:hover{color:var(--orange);}
    .inf-av{width:32px;height:32px;border-radius:50%;object-fit:cover;border:1px solid var(--border2);flex-shrink:0;}
    .inf-nm{font-size:var(--fs-base);font-weight:700;color:var(--gold);}
    .inf-hd{font-size:var(--fs-xs);color:var(--muted);font-family:'JetBrains Mono',monospace;}
    .inf-dot-sb{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin-left:auto;}
    .editor-wrap{overflow-y:auto;padding:1rem;}
    .ed-hdr{display:flex;align-items:flex-start;gap:var(--sp-5);margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border2);}
    .ed-av{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid var(--orange-border);flex-shrink:0;}
    .ed-nm{font-size:var(--fs-lg);font-weight:700;color:var(--text-strong);}
    .ed-hd2{font-size:var(--fs-base);color:var(--muted2);font-family:'JetBrains Mono',monospace;}
    .ed-badge{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;border:1px solid var(--border2);border-radius:var(--r-xs);padding:2px 7px;color:var(--muted2);background:rgba(255,255,255,0.02);}
    .auto-saved{flex-shrink:0;font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--orange);opacity:0;transition:opacity 0.4s;}
    .auto-saved.show{opacity:1;}
    /* Cards replace ed-sec + divider */
    .ed-card{background:rgba(247,147,26,0.025);border:1px solid var(--border2);border-radius:var(--r-lg);padding:12px 14px;margin-bottom:10px;}
    .ed-txt{width:100%;background:rgba(255,255,255,0.03);border:1px solid var(--border2);border-radius:var(--r-sm);padding:8px 9px;color:var(--text-strong);font-family:'JetBrains Mono',monospace;font-size:var(--fs-sm);outline:none;box-sizing:border-box;}
    .ed-txt:focus{border-color:var(--orange);}
    .ed-fld-lbl{display:block;font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);letter-spacing:1px;text-transform:uppercase;margin-bottom:4px;}
    .ed-card-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
    .ed-sec{margin-bottom:1.25rem;}
    .ed-sec-title{font-size:var(--fs-sm);font-weight:700;letter-spacing:2px;color:var(--muted);font-family:'JetBrains Mono',monospace;margin-bottom:9px;}
    .field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3);margin-bottom:8px;}
    .field{display:flex;flex-direction:column;gap:var(--sp-1);}
    .field label{font-size:var(--fs-sm);color:var(--muted2);font-family:'JetBrains Mono',monospace;}
    .field input[type=date]{color-scheme:dark;}
    .field input,.field select{background:rgba(247,147,26,0.04);border:1px solid var(--border2);border-radius:var(--r-sm);color:var(--gold);font-family:'JetBrains Mono',monospace;font-size:var(--fs-md);padding:7px 10px;outline:none;transition:border 0.2s;width:100%;}
    .field input:focus,.field select:focus{border-color:rgba(247,147,26,0.5);}
    .field select option{background:#080C18;color:var(--gold);}
    .bias-slider-row{display:flex;align-items:center;gap:var(--sp-4);margin-bottom:6px;}
    .bias-num-big{font-size:var(--fs-2xl);font-weight:800;min-width:36px;text-align:center;}
    input[type=range].bslider{flex:1;height:5px;border-radius:var(--r-xs);-webkit-appearance:none;appearance:none;outline:none;background:rgba(247,147,26,0.12);border:none;padding:0;}
    input[type=range].bslider::-webkit-slider-thumb{-webkit-appearance:none;width:17px;height:17px;border-radius:50%;background:var(--orange);cursor:pointer;border:2px solid #080C18;}
    .bias-ends{display:flex;justify-content:space-between;margin-top:4px;}
    .bias-end-lbl{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;}
    .dir-pills{display:flex;gap:var(--sp-2);margin-bottom:12px;}
    .dir-pill{flex:1;padding:8px 0;text-align:center;border-radius:var(--r-md);font-size:var(--fs-base);font-weight:700;font-family:'JetBrains Mono',monospace;cursor:pointer;border:1px solid var(--border2);color:var(--muted);background:rgba(247,147,26,0.02);transition:all 0.15s;user-select:none;}
    .dir-pill:hover{border-color:rgba(247,147,26,0.3);}
    .dir-pill.al{background:rgba(52,211,153,0.12);border-color:rgba(52,211,153,0.35);color:var(--bull);}
    .dir-pill.as{background:rgba(239,68,68,0.12);border-color:rgba(239,68,68,0.35);color:var(--bear);}
    .dir-pill.an{background:rgba(156,163,175,0.1);border-color:rgba(156,163,175,0.3);color:var(--neutral);}
    /* compact trade cards */
    .trade-ed{background:rgba(247,147,26,0.03);border:1px solid var(--border2);border-radius:var(--r-md);padding:10px;margin-bottom:8px;}
    .trade-ed-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}
    .trade-price-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--sp-2);margin-bottom:6px;}
    .trade-price-cell{display:flex;flex-direction:column;gap:var(--sp-1);}
    .trade-price-label{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    .trade-price-input{background:rgba(247,147,26,0.04);border:1px solid var(--border2);border-radius:var(--r-sm);color:var(--gold);font-family:'JetBrains Mono',monospace;font-size:var(--fs-md);padding:5px 8px;outline:none;transition:border 0.2s;width:100%;box-sizing:border-box;}
    .trade-price-input:focus{border-color:rgba(247,147,26,0.5);}
    .ttype-sel{background:rgba(247,147,26,0.05);border:1px solid var(--border2);border-radius:var(--r-sm);color:var(--gold);font-family:'JetBrains Mono',monospace;font-size:var(--fs-base);padding:4px 8px;cursor:pointer;}
    .ttype-sel option{background:#080C18;}
    .rm-trade{background:rgba(239,68,68,0.08);border:1px solid rgba(239,68,68,0.2);color:var(--bear);border-radius:var(--r-sm);padding:4px 10px;font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;cursor:pointer;transition:background 0.2s;}
    .rm-trade:hover{background:rgba(239,68,68,0.18);}
    .add-trade-btn{background:rgba(247,147,26,0.04);border:1px dashed var(--orange-border);color:var(--muted2);border-radius:var(--r-md);padding:9px;width:100%;font-size:var(--fs-base);font-family:'JetBrains Mono',monospace;cursor:pointer;transition:all 0.2s;letter-spacing:1px;}
    .add-trade-btn:hover{background:var(--orange-bg);color:var(--orange);}
    /* ── Perf Post Accordion ─────────────────────────────── */
    .pp-acc-item{background:rgba(247,147,26,0.02);border:1px solid var(--border2);border-radius:var(--r-md);margin-bottom:6px;overflow:hidden;transition:border-color 0.2s;}
    .pp-acc-item.pp-acc-open{border-color:rgba(247,147,26,0.35);}
    .pp-acc-row{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;cursor:pointer;gap:var(--sp-3);min-height:42px;-webkit-tap-highlight-color:transparent;}
    .pp-acc-row:active{background:rgba(247,147,26,0.06);}
    .pp-acc-left{display:flex;align-items:center;gap:var(--sp-2);flex:1;min-width:0;}
    .pp-acc-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
    .pp-acc-date{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);flex-shrink:0;}
    .pp-acc-text{font-size:var(--fs-base);color:#a89070;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;}
    .pp-acc-right{display:flex;align-items:center;gap:var(--sp-2);flex-shrink:0;}
    .pp-acc-badge-bias{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;background:rgba(247,147,26,0.15);color:var(--orange);border-radius:var(--r-xs);padding:2px 5px;letter-spacing:0.5px;}
    .pp-acc-badge-14{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;background:rgba(247,147,26,0.08);color:var(--orange);border:1px solid rgba(247,147,26,0.25);border-radius:var(--r-xs);padding:2px 5px;}
    .pp-acc-result{font-size:var(--fs-md);font-weight:700;width:16px;text-align:center;}
    .pp-acc-chevron{font-size:var(--fs-xs);color:var(--muted);margin-left:2px;}
    .pp-acc-body{padding:10px 12px 12px;border-top:1px solid var(--border2);}
    .pp-acc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:var(--sp-3);flex-wrap:wrap;}
    .pp-acc-filter-btn{background:transparent;border:1px solid var(--border2);color:var(--muted2);border-radius:var(--r-sm);padding:3px 9px;font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;cursor:pointer;letter-spacing:0.5px;transition:all 0.15s;}
    .pp-acc-filter-btn.active,.pp-acc-filter-btn:hover{background:rgba(247,147,26,0.1);border-color:rgba(247,147,26,0.4);color:var(--orange);}
    /* Admin Bias-Grundlage Sektion (über den Monatskarten) */
    .pp-bg-section{background:rgba(247,147,26,0.05);border:1px solid var(--orange-border);border-radius:var(--r-md);padding:10px 12px;margin-bottom:12px;}
    .pp-bg-head{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);letter-spacing:1px;margin-bottom:8px;}
    .pp-bg-empty{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted);line-height:1.5;}
    .pp-bg-row{display:flex;align-items:center;gap:var(--sp-2);padding:7px 8px;border:1px solid var(--border2);border-radius:var(--r-sm);background:rgba(255,255,255,0.02);margin-bottom:6px;cursor:pointer;transition:border-color 0.15s;}
    .pp-bg-row:last-child{margin-bottom:0;}
    .pp-bg-row:hover{border-color:var(--orange-border);}
    .pp-bg-text{font-size:var(--fs-base);color:#a89070;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;font-family:'Sora',sans-serif;}
    .pp-bg-unflag{background:transparent;border:none;color:var(--muted2);font-size:var(--fs-md);cursor:pointer;padding:0 2px;flex-shrink:0;line-height:1;}
    .pp-bg-unflag:hover{color:var(--bear);}
    /* Bewertung-ausstehend Sektion (≥30 Tage, noch offen) */
    .pp-rate-section{background:rgba(234,179,8,0.06);border-color:rgba(234,179,8,0.3);}
    .pp-rate-row:hover{border-color:rgba(234,179,8,0.5);}
    .pp-rate-age{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;background:rgba(234,179,8,0.12);color:var(--warn);border:1px solid rgba(234,179,8,0.3);border-radius:var(--r-xs);padding:2px 5px;flex-shrink:0;}
    .pp-rate-cta{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:var(--warn);flex-shrink:0;letter-spacing:0.5px;white-space:nowrap;}
    /* Entwürfe aus X (blau) */
    .pp-xd-section{background:rgba(96,165,250,0.06);border-color:rgba(96,165,250,0.3);}
    .pp-xd-row:hover{border-color:rgba(96,165,250,0.5);}
    .pp-xd-sent{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;flex-shrink:0;letter-spacing:0.5px;}
    .pp-xd-cta{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:#60a5fa;flex-shrink:0;white-space:nowrap;}
    .pp-xd-refresh{background:transparent;border:1px solid rgba(96,165,250,0.3);color:#60a5fa;border-radius:var(--r-sm);padding:1px 7px;font-family:'JetBrains Mono',monospace;font-size:var(--fs-2xs);cursor:pointer;margin-left:8px;}
    .pp-xd-refresh:hover{background:rgba(96,165,250,0.12);}
    .pp-xd-sum{background:rgba(96,165,250,0.1);border:1px solid rgba(96,165,250,0.35);color:#60a5fa;border-radius:var(--r-sm);padding:2px 8px;font-family:'JetBrains Mono',monospace;font-size:var(--fs-2xs);cursor:pointer;white-space:nowrap;flex-shrink:0;}
    .pp-xd-sum:hover{background:rgba(96,165,250,0.2);}
    .pp-xd-sum:disabled{opacity:0.6;cursor:default;}
    .pp-xd-import{background:rgba(96,165,250,0.1);border:1px solid rgba(96,165,250,0.35);color:#60a5fa;border-radius:var(--r-sm);padding:4px 10px;font-family:'JetBrains Mono',monospace;font-size:var(--fs-2xs);cursor:pointer;white-space:nowrap;letter-spacing:0.3px;}
    .pp-xd-import:hover{background:rgba(96,165,250,0.18);}
    .pp-xd-import:disabled{opacity:0.6;cursor:default;}
    .pp-xd-panel{background:rgba(96,165,250,0.05);border:1px solid rgba(96,165,250,0.25);border-radius:var(--r-md);padding:10px 12px;margin:2px 0 8px;display:flex;flex-direction:column;gap:6px;}
    .pp-xd-src{font-size:var(--fs-2xs);color:var(--muted2);font-family:'JetBrains Mono',monospace;line-height:1.5;}
    .pp-xd-src span{color:var(--gold);}
    .pp-xd-link{font-size:var(--fs-2xs);color:#60a5fa;text-decoration:none;font-family:'JetBrains Mono',monospace;}
    .pp-xd-lbl{font-size:var(--fs-2xs);color:var(--muted2);font-family:'JetBrains Mono',monospace;margin-top:2px;}
    .pp-xd-input{background:rgba(247,147,26,0.04);border:1px solid var(--border2);border-radius:var(--r-sm);color:var(--gold);font-family:'JetBrains Mono',monospace;font-size:var(--fs-sm);padding:5px 7px;width:100%;box-sizing:border-box;resize:vertical;}
    .pp-xd-actions{display:flex;gap:8px;margin-top:4px;}
    .pp-ctrl-box{margin-top:6px;background:rgba(96,165,250,0.05);border:1px solid rgba(96,165,250,0.25);border-radius:var(--r-md);padding:8px 10px;display:flex;flex-direction:column;gap:5px;}
    .pp-ctrl-row{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:var(--gold);line-height:1.5;}
    .pp-xd-reason{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:#8aa6c0;line-height:1.5;margin:-2px 0 2px;}
    .pp-xd-btn{flex:1;border-radius:var(--r-sm);padding:7px;font-family:'JetBrains Mono',monospace;font-size:var(--fs-2xs);letter-spacing:0.5px;cursor:pointer;border:1px solid;}
    .pp-xd-btn.ok{background:rgba(52,211,153,0.12);border-color:rgba(52,211,153,0.4);color:var(--bull);}
    .pp-xd-btn.ok:hover{background:rgba(52,211,153,0.22);}
    .pp-xd-btn.no{background:rgba(239,68,68,0.1);border-color:rgba(239,68,68,0.35);color:var(--bear);}
    .pp-xd-btn.no:hover{background:rgba(239,68,68,0.2);}
    /* Sidebar add-influencer button */
    .sb-add-btn{background:rgba(247,147,26,0.08);border:1px solid rgba(247,147,26,0.25);color:var(--orange);border-radius:var(--r-sm);width:26px;height:26px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.2s;padding:0;}
    .sb-add-btn:hover{background:rgba(247,147,26,0.18);}
    .sb-add-btn i{font-size:var(--fs-lg);}
    .statusbar{display:flex;align-items:center;gap:var(--sp-2);padding:8px 1.5rem;border-top:1px solid var(--border2);background:rgba(0,0,0,0.5);flex-shrink:0;}
    .status-txt{font-size:var(--fs-sm);color:var(--muted);font-family:'JetBrains Mono',monospace;}
    /* ══ TAB-SPERRE ══════════════════════════════════════════════════════════ */
    @keyframes tab-stripe-move {
      from { background-position: 0 0; }
      to   { background-position: 28px 0; }
    }
    .tab.tab-locked {
      position: relative;
      outline: 2px solid var(--warn);
      outline-offset: -2px;
      border-radius:var(--r-md);
      background: repeating-linear-gradient(
        -45deg,
        rgba(234,179,8,0.18) 0px, rgba(234,179,8,0.18) 7px,
        rgba(0,0,0,0.35) 7px, rgba(0,0,0,0.35) 14px
      ) !important;
      background-size: 28px 28px !important;
      animation: tab-stripe-move 1.2s linear infinite;
    }
    .tab.tab-locked::after {
      content: '⚠';
      font-size:var(--fs-xs);
      position: absolute;
      top: -5px;
      right: -4px;
      background: var(--warn);
      color: #000;
      width: 13px;
      height: 13px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      line-height: 13px;
      text-align: center;
    }
    /* Blur overlay on locked page content */
    .page-lock-overlay {
      position: absolute;
      inset: 0;
      z-index: 40;
      backdrop-filter: blur(18px);
      -webkit-backdrop-filter: blur(18px);
      background: rgba(4,6,12,0.55);
      display: flex;
      align-items: center;
      justify-content: center;
      pointer-events: all;
    }
    .page-lock-box {
      background: rgba(10,14,26,0.96);
      border: 1.5px solid var(--warn);
      border-radius:var(--r-xl);
      padding: 28px 32px;
      text-align: center;
      max-width: 340px;
      width: 90%;
    }
    .page-lock-icon {
      font-size:var(--fs-4xl);
      margin-bottom: 12px;
      display: block;
    }
    .page-lock-title {
      font-size:var(--fs-md);
      font-weight: 700;
      font-family: 'JetBrains Mono', monospace;
      color: var(--warn);
      letter-spacing: 2px;
      margin-bottom: 8px;
    }
    .page-lock-reason {
      font-size:var(--fs-base);
      font-family: 'JetBrains Mono', monospace;
      color: var(--neutral);
      letter-spacing: 1px;
      margin-bottom: 6px;
    }
    .page-lock-sub {
      font-size:var(--fs-sm);
      color: var(--muted);
      font-family: 'JetBrains Mono', monospace;
    }
    /* Admin: tab lock controls */
    .lock-control-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 9px 12px;
      border: 1px solid var(--border2);
      border-radius:var(--r-md);
      margin-bottom: 7px;
      background: rgba(234,179,8,0.02);
    }
    .lock-control-row.is-locked {
      border-color: rgba(234,179,8,0.35);
      background: rgba(234,179,8,0.05);
    }
    .lock-tab-name {
      font-size:var(--fs-base);
      font-weight: 700;
      font-family: 'JetBrains Mono', monospace;
      color: var(--gold);
      min-width: 90px;
    }
    .lock-reason-sel {
      background: rgba(247,147,26,0.04);
      border: 1px solid var(--border2);
      border-radius:var(--r-sm);
      color: var(--gold);
      font-family: 'JetBrains Mono', monospace;
      font-size:var(--fs-sm);
      padding: 4px 7px;
      outline: none;
      flex: 1;
      margin: 0 8px;
    }
    .lock-reason-sel option { background: #080C18; }
    .lock-toggle-btn {
      font-size:var(--fs-sm);
      font-family: 'JetBrains Mono', monospace;
      padding: 5px 12px;
      border-radius:var(--r-sm);
      cursor: pointer;
      border: 1px solid var(--border2);
      background: transparent;
      color: var(--muted2);
      transition: all 0.15s;
      white-space: nowrap;
    }
    .lock-toggle-btn.active {
      background: rgba(234,179,8,0.12);
      border-color: rgba(234,179,8,0.4);
      color: var(--warn);
    }
    .pp-wrap{background:rgba(247,147,26,0.02);border:1px solid var(--border2);border-radius:var(--r-lg);padding:1.25rem;display:none;}
    .pp-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;}
    .pp-title{font-size:var(--fs-base);font-weight:700;font-family:'JetBrains Mono',monospace;color:var(--orange);letter-spacing:1.5px;}
    .pp-stats{display:flex;gap:var(--sp-5);flex-wrap:wrap;}
    .pp-stat{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    .pp-stat span{font-weight:700;}
    .pp-filter{display:flex;gap:var(--sp-2);margin-bottom:1rem;flex-wrap:wrap;}
    .pp-filter-btn{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;padding:3px 10px;border-radius:var(--r-2xl);cursor:pointer;border:1px solid var(--border2);color:var(--muted2);background:transparent;transition:all 0.15s;letter-spacing:0.5px;}
    .pp-filter-btn.active{background:var(--orange-bg);border-color:var(--orange-border);color:var(--orange);}
    .pp-list{display:flex;flex-direction:column;gap:var(--sp-3);}
    .pp-month-folder{border:1px solid var(--border2);border-radius:var(--r-md);overflow:hidden;}
    .pp-month-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;cursor:pointer;background:rgba(247,147,26,0.03);transition:background 0.15s;user-select:none;}
    .pp-month-header:hover{background:rgba(247,147,26,0.06);}
    .pp-month-title{font-size:var(--fs-sm);font-weight:700;font-family:'JetBrains Mono',monospace;color:var(--gold);letter-spacing:1px;}
    .pp-month-meta{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);display:flex;align-items:center;gap:var(--sp-3);}
    .pp-month-chevron{font-size:var(--fs-md);color:var(--muted2);transition:transform 0.2s;}
    .pp-month-folder.open .pp-month-chevron{transform:rotate(180deg);}
    .pp-month-posts{display:none;padding:6px 8px;display:flex;flex-direction:column;gap:var(--sp-2);}
    .pp-month-folder:not(.open) .pp-month-posts{display:none;}
    .pp-month-folder.open .pp-month-posts{display:flex;}
    .pp-item{background:rgba(255,255,255,0.02);border:1px solid var(--border2);border-radius:var(--r-md);padding:10px 12px;display:grid;grid-template-columns:10px 1fr auto;gap:var(--sp-4);align-items:start;cursor:pointer;transition:border-color 0.15s;}
    .pp-item:hover{border-color:var(--orange-border);}
    .pp-dot{width:10px;height:10px;border-radius:50%;margin-top:3px;flex-shrink:0;}
    .pp-meta{display:flex;gap:var(--sp-3);align-items:center;margin-bottom:3px;flex-wrap:wrap;}
    .pp-date{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    .pp-type{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted);border:1px solid var(--border);padding:1px 6px;border-radius:var(--r-lg);}
    .pp-target{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:rgba(247,147,26,0.6);}
    .pp-text{font-size:var(--fs-md);color:#8a7a60;line-height:1.5;font-family:'Sora',sans-serif;}
    .pp-item:not(.open) .pp-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
    .pp-chevron{font-size:var(--fs-lg);flex-shrink:0;margin-top:2px;transition:transform 0.25s ease;opacity:0.7;}
    .pp-item.open .pp-chevron{transform:rotate(180deg);}
    .pp-result{font-size:var(--fs-xl);flex-shrink:0;}
    .pp-empty{font-size:var(--fs-base);font-family:'JetBrains Mono',monospace;color:var(--muted);text-align:center;padding:1rem 0;}

    /* ══ COMMUNITY BIAS ══ */
    .cb-wrap{background:rgba(247,147,26,0.02);border:1px solid var(--border2);border-radius:var(--r-lg);padding:1.25rem;display:none;}
    .cb-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;}
    .cb-title{font-size:var(--fs-base);font-weight:700;font-family:'JetBrains Mono',monospace;color:var(--orange);letter-spacing:1.5px;}
    .cb-count{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    /* Vote options: vertical list */
    .cb-vote-label{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);letter-spacing:1px;margin-bottom:0.75rem;}
    /* Submit button */
    .cb-confirm-btn{width:100%;margin-top:10px;padding:11px;border-radius:var(--r-md);font-size:var(--fs-base);font-weight:700;font-family:'JetBrains Mono',monospace;cursor:pointer;border:1px solid var(--orange-border);background:rgba(247,147,26,0.12);color:var(--orange);letter-spacing:1px;transition:all 0.2s;display:none;}
    .cb-confirm-btn:hover{background:rgba(247,147,26,0.22);}
    /* After-vote state */
    .cb-voted-wrap{display:none;padding:4px 0;}
    .cb-voted-val{font-size:var(--fs-3xl);font-weight:800;font-family:'JetBrains Mono',monospace;line-height:1;}
    .cb-voted-lbl{font-size:var(--fs-base);font-family:'JetBrains Mono',monospace;font-weight:700;margin-top:2px;}
    .cb-compare-row{display:flex;align-items:stretch;gap:10px;text-align:center;}
    .cb-compare-col{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;}
    .cb-compare-head{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);letter-spacing:1px;margin-bottom:8px;white-space:nowrap;}
    .cb-compare-divider{width:1px;align-self:stretch;background:var(--border2);flex-shrink:0;}
    .cb-voted-sub{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);margin-top:6px;letter-spacing:0.5px;}
    .cb-undo-btn{width:100%;margin-top:10px;padding:8px;border-radius:var(--r-md);font-size:var(--fs-sm);font-weight:700;font-family:'JetBrains Mono',monospace;cursor:pointer;border:1px solid rgba(239,68,68,0.25);background:rgba(239,68,68,0.06);color:var(--bear);letter-spacing:0.5px;transition:all 0.2s;}
    .cb-undo-btn:hover{background:rgba(239,68,68,0.14);}
    /* History + hourly */
    .cb-history{margin-top:14px;display:none;}
    .cb-history-title{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);letter-spacing:1px;margin-bottom:8px;}
    .cb-history-bars{display:flex;align-items:flex-end;gap:var(--sp-1);height:40px;}
    .cb-history-legend{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-bottom:8px;font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    .cb-history-legend .lg{display:inline-flex;align-items:center;gap:5px;}
    .cb-history-legend .lg-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
    .cb-history-legend .lg-line{width:14px;height:0;border-top:2px solid;flex-shrink:0;}
    .cb-history-legend b{font-weight:700;}
    .cb-history-bar-wrap{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);height:100%;justify-content:flex-end;cursor:default;position:relative;}
    .cb-history-bar{width:100%;border-radius:var(--r-xs) 2px 0 0;transition:opacity 0.2s;min-height:2px;}
    .cb-history-bar-wrap:hover .cb-history-bar{opacity:0.7;}
    .cb-history-date{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);white-space:nowrap;overflow:hidden;max-width:100%;}
    .cb-hourly{margin-top:14px;display:none;}
    .cb-hourly-title{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);letter-spacing:1px;margin-bottom:8px;}
    .cb-hourly-canvas-wrap{width:100%;}
    .cb-share-btn{width:100%;margin-top:10px;background:rgba(247,147,26,0.06);border:1px solid var(--orange-border);color:var(--orange);font-family:'JetBrains Mono',monospace;font-size:var(--fs-sm);font-weight:700;padding:9px;border-radius:var(--r-md);cursor:pointer;letter-spacing:1px;transition:all 0.2s;}
    .cb-share-btn:hover{background:rgba(247,147,26,0.15);}

    /* Blur while undo window active */
    .cb-history.blurred,.cb-hourly.blurred{filter:blur(5px);pointer-events:none;user-select:none;opacity:0.4;transition:filter 0.3s,opacity 0.3s;}
    .cb-history.unblurred,.cb-hourly.unblurred{filter:none;pointer-events:auto;opacity:1;transition:filter 0.6s ease,opacity 0.6s ease;}

    /* ══ SUGGESTION BUBBLE ══ */
    .suggest-wrap{position:absolute;cursor:pointer;transform:translate(-50%,-50%);transition:transform 0.2s;z-index:3;}
    .suggest-wrap:hover{transform:translate(-50%,-50%) scale(1.08);}
    .suggest-bubble{border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;
      background:rgba(75,85,99,0.15);border:1.5px dashed rgba(156,163,175,0.3);
      box-shadow:0 0 20px rgba(156,163,175,0.08);}
    .suggest-icon{font-size:var(--fs-2xl);color:rgba(156,163,175,0.5);line-height:1;}
    .suggest-label{font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:rgba(156,163,175,0.45);
      margin-top:4px;text-align:center;padding:0 4px;letter-spacing:0.3px;}
    /* Suggestion form popup */
    .suggest-popup{position:fixed;inset:0;background:rgba(2,4,8,0.82);z-index:300;
      display:none;align-items:center;justify-content:center;}
    .suggest-popup.open{display:flex;}
    .suggest-box{background:#0a0e1a;border:1px solid var(--border2);border-radius:var(--r-xl);
      width:92%;max-width:420px;padding:1.75rem;box-shadow:0 0 60px rgba(247,147,26,0.06),0 24px 60px rgba(0,0,0,0.9);}
    .suggest-box h3{font-size:var(--fs-xl);font-weight:700;color:var(--text-strong);margin-bottom:4px;}
    .suggest-box p{font-size:var(--fs-base);color:var(--muted2);font-family:'JetBrains Mono',monospace;
      letter-spacing:0.5px;margin-bottom:1.25rem;}
    .suggest-field{display:flex;flex-direction:column;gap:var(--sp-1);margin-bottom:0.9rem;}
    .suggest-field label{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);letter-spacing:1px;}
    .suggest-field input,.suggest-field textarea{background:rgba(247,147,26,0.04);border:1px solid var(--border2);
      border-radius:var(--r-md);color:var(--gold);font-family:'JetBrains Mono',monospace;font-size:var(--fs-md);
      padding:8px 10px;outline:none;transition:border 0.2s;width:100%;}
    .suggest-field input:focus,.suggest-field textarea:focus{border-color:rgba(247,147,26,0.45);}
    .suggest-field textarea{resize:vertical;min-height:70px;font-family:'Sora',sans-serif;font-size:var(--fs-md);}
    .suggest-field select option{background:#0a0e1a;}
    .suggest-actions{display:flex;gap:var(--sp-3);margin-top:1.25rem;}
    .suggest-submit{flex:1;background:var(--orange-bg);border:1px solid var(--orange-border);
      color:var(--orange);font-family:'JetBrains Mono',monospace;font-size:var(--fs-base);font-weight:700;
      padding:10px;border-radius:var(--r-md);cursor:pointer;letter-spacing:1px;transition:all 0.2s;}
    .suggest-submit:hover{background:rgba(247,147,26,0.18);}
    .suggest-cancel{background:rgba(255,255,255,0.03);border:1px solid var(--border);
      color:var(--muted2);font-family:'JetBrains Mono',monospace;font-size:var(--fs-base);
      padding:10px 16px;border-radius:var(--r-md);cursor:pointer;transition:all 0.2s;}
    .suggest-cancel:hover{background:rgba(255,255,255,0.07);}
    .suggest-success{text-align:center;padding:0.5rem 0;}
    .suggest-success-icon{font-size:var(--fs-4xl);color:var(--green);margin-bottom:8px;}
    .suggest-success p{color:var(--green);font-size:var(--fs-md);font-family:'JetBrains Mono',monospace;}
    /* Admin suggestions panel */
    .suggest-admin-item{background:rgba(247,147,26,0.02);border:1px solid var(--border2);
      border-radius:var(--r-lg);padding:12px;margin-bottom:8px;display:flex;align-items:flex-start;gap:var(--sp-5);}
    .suggest-admin-info{flex:1;}
    .suggest-admin-name{font-size:var(--fs-md);font-weight:700;color:var(--text-strong);}
    .suggest-admin-handle{font-size:var(--fs-base);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    .suggest-admin-reason{font-size:var(--fs-md);color:#8a7a60;margin-top:4px;font-family:'Sora',sans-serif;}
    .suggest-admin-date{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted);margin-top:3px;}
    .suggest-admin-actions{display:flex;gap:var(--sp-2);flex-shrink:0;}
    .suggest-del-btn{background:rgba(239,68,68,0.08);border:1px solid rgba(239,68,68,0.2);
      color:var(--bear);border-radius:var(--r-sm);padding:4px 10px;font-size:var(--fs-sm);
      font-family:'JetBrains Mono',monospace;cursor:pointer;}
    .suggest-del-btn:hover{background:rgba(239,68,68,0.18);}

    /* ══ PERFORMANCE ══ */
    .perf-ticker-wrap{overflow:hidden;border-bottom:1px solid var(--border2);background:rgba(247,147,26,0.03);padding:clamp(10px,2vw,18px) 0;position:relative;flex-shrink:0;}
    .perf-ticker-wrap::before,.perf-ticker-wrap::after{content:'';position:absolute;top:0;bottom:0;width:60px;z-index:2;pointer-events:none;}
    .perf-ticker-wrap::before{left:0;background:linear-gradient(90deg,#04060C,transparent);}
    .perf-ticker-wrap::after{right:0;background:linear-gradient(-90deg,#04060C,transparent);}
    .perf-ticker{display:flex;gap:clamp(14px,2.5vw,32px);width:max-content;cursor:grab;touch-action:pan-y;}
    .perf-ticker:active{cursor:grabbing;}
    @keyframes ticker-scroll{from{transform:translateX(0);}to{transform:translateX(var(--ticker-shift,-25%))}}
    .perf-avatar-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);flex-shrink:0;transition:transform 0.2s;}
    .perf-avatar-wrap:hover{transform:scale(1.1);}
    .perf-avatar-wrap.selected .perf-avatar{border-color:var(--orange);box-shadow:0 0 12px rgba(247,147,26,0.5);}
    .perf-avatar{width:clamp(60px,8vw,88px);height:clamp(60px,8vw,88px);border-radius:50%;object-fit:cover;border:2px solid rgba(247,147,26,0.2);transition:all 0.2s;}
    .perf-avatar-name{font-size:clamp(8px,1vw,10px);font-family:'JetBrains Mono',monospace;color:var(--muted2);text-align:center;max-width:clamp(60px,8vw,90px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
    .perf-body{flex:1;padding:var(--sp-7) var(--sp-8);overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-7);}
    .perf-header{display:flex;align-items:center;justify-content:center;padding:1rem 0;}
    .perf-inf-info{display:flex;align-items:center;gap:var(--sp-5);}
    .perf-inf-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid var(--orange-border);}
    .perf-inf-name{font-size:var(--fs-lg);font-weight:700;color:var(--text-strong);}
    .perf-inf-handle{font-size:var(--fs-base);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    .perf-inf-bar{display:flex;align-items:center;padding:0.5rem 0 0.75rem;}
    /* ── 12-Monats-Ansicht ── */
    .pm-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-3);margin-bottom:1rem;}
    .pm-stat{background:rgba(247,147,26,0.04);border:1px solid rgba(247,147,26,0.10);border-radius:var(--r-md);padding:8px 10px;}
    .pm-stat-val{font-size:var(--fs-xl);font-weight:700;color:var(--gold);line-height:1;font-family:'JetBrains Mono',monospace;}
    .pm-stat-label{font-size:var(--fs-2xs);color:var(--muted2);letter-spacing:0.7px;margin-top:3px;font-family:'JetBrains Mono',monospace;}
    .pm-year-chg{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:0.75rem;font-family:'JetBrains Mono',monospace;}
    .pm-year-price{font-size:var(--fs-md);font-weight:700;color:var(--gold);}
    .pm-year-pct{font-size:var(--fs-base);}
    .pm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2);margin-bottom:6px;}
    .pm-card{border:1px solid rgba(247,147,26,0.08);border-radius:var(--r-lg);background:rgba(247,147,26,0.02);cursor:pointer;transition:background 0.15s,border-color 0.15s;padding:10px 10px 8px;-webkit-tap-highlight-color:transparent;display:flex;flex-direction:column;gap:var(--sp-2);position:relative;overflow:hidden;}
    .pm-card-bg{position:absolute;inset:0;width:100%;height:100%;filter:blur(3px) saturate(0.7);opacity:0.22;pointer-events:none;z-index:0;}
    .pm-card-top,.pm-sentrow{position:relative;z-index:1;}
    .pm-card:hover,.pm-card.open{background:rgba(247,147,26,0.07);border-color:rgba(247,147,26,0.30);}
    .pm-card-top{display:flex;align-items:baseline;justify-content:space-between;}
    .pm-label{font-size:var(--fs-md);font-weight:700;color:var(--gold);font-family:'JetBrains Mono',monospace;}
    .pm-chg{font-size:var(--fs-xs);font-weight:700;font-family:'JetBrains Mono',monospace;}
    .pm-sentrow{display:flex;gap:var(--sp-2);align-items:center;flex-wrap:wrap;}
    .pm-sent-item{display:flex;align-items:center;gap:var(--sp-1);}
    .pm-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}
    .pm-sent-count{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    .pm-detail{display:none;margin-bottom:4px;grid-column:1/-1;}
    .pm-detail.open{display:block;}
    .pm-chart-box{border:1px solid rgba(247,147,26,0.10);border-radius:var(--r-lg);padding:10px 10px 6px;background:rgba(247,147,26,0.02);margin-bottom:8px;position:relative;overflow:hidden;}
    .pm-chart-box svg{width:100%;display:block;overflow:visible;}
    .pm-tip{position:absolute;pointer-events:none;background:#0d1117;border:1px solid rgba(247,147,26,0.3);border-radius:var(--r-sm);padding:5px 8px;font-size:var(--fs-xs);white-space:nowrap;display:none;z-index:10;font-family:'JetBrains Mono',monospace;}
    .pm-tip-date{color:#6a5a40;}
    .pm-tip-price{color:#f7931a;font-weight:700;font-size:var(--fs-base);}
    .pm-tip-posts{color:var(--neutral);}
    .perf-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:200px;}
        /* Navigator */

    #page-truebias{overflow-y:auto;}
    .truebias-body{width:100%;max-width:760px;margin:0 auto;padding:var(--sp-9) var(--sp-7) var(--sp-10);display:flex;flex-direction:column;gap:var(--sp-7);min-width:0;}
    .tb-loading,.tb-empty{font-family:'JetBrains Mono',monospace;color:var(--muted2);letter-spacing:1px;text-align:center;padding:3rem 0;font-size:var(--fs-base);line-height:1.7;}
    .tb-title{font-size:var(--fs-2xl);font-weight:800;font-family:'JetBrains Mono',monospace;color:var(--orange);letter-spacing:1px;}
    .tb-framing{font-size:var(--fs-sm);color:var(--muted2);font-family:'JetBrains Mono',monospace;line-height:1.6;margin-top:6px;}
    .tb-hero{background:rgba(247,147,26,0.03);border:1px solid var(--border2);border-radius:var(--r-lg);padding:1.5rem 1rem 1.1rem;display:flex;flex-direction:column;align-items:center;}
    .tb-gauge-svg{width:100%;max-width:330px;height:auto;display:block;}
    .tb-conf{margin-top:8px;font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);display:flex;align-items:center;gap:6px;}
    .tb-section{background:rgba(255,255,255,0.015);border:1px solid var(--border2);border-radius:var(--r-lg);padding:1rem 1.1rem;}
    .tb-sec-title{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);letter-spacing:1px;margin-bottom:0.9rem;display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
    .tb-contrib{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid rgba(255,255,255,0.04);}
    .tb-contrib:last-child{border-bottom:none;}
    .tb-av{width:34px;height:34px;border-radius:50%;object-fit:cover;background:#1a1410;flex-shrink:0;}
    .tb-contrib-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px;}
    .tb-contrib-name{font-size:var(--fs-base);color:#e8e0d0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
    .tb-contrib-bias{font-size:var(--fs-base);font-family:'JetBrains Mono',monospace;font-weight:700;flex-shrink:0;}
    .tb-mini-bar{position:relative;height:5px;border-radius:3px;margin:5px 0;background:linear-gradient(90deg,var(--bear),var(--bear-soft),var(--neutral),var(--bull-soft),var(--bull));opacity:0.45;}
    .tb-mini-marker{position:absolute;top:-2px;width:3px;height:9px;border-radius:2px;transform:translateX(-50%);}
    .tb-contrib-sub{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);}
    .tb-weight{font-weight:700;}
    .tb-muted{color:var(--muted2);font-family:'JetBrains Mono',monospace;font-size:var(--fs-sm);line-height:1.6;}
    .tb-method{font-size:var(--fs-sm);color:#8a7a60;line-height:1.7;font-family:'Sora',sans-serif;}
    .tb-method li{margin-bottom:7px;}
    .tb-disc{font-size:var(--fs-xs);color:var(--muted2);font-family:'JetBrains Mono',monospace;line-height:1.6;border-top:1px solid var(--border2);padding-top:0.9rem;margin-top:0.9rem;}
    .tb-chart-svg{width:100%;height:auto;display:block;}
    .tb-details summary{cursor:pointer;color:var(--muted2);font-family:'JetBrains Mono',monospace;font-size:var(--fs-sm);letter-spacing:1px;list-style:none;}
    .tb-details summary::-webkit-details-marker{display:none;}
    .tb-details summary::before{content:'▸ ';}
    .tb-details[open] summary::before{content:'▾ ';}
    .tb-contrib-head{justify-content:space-between;gap:8px;}
    .tb-sort{display:inline-flex;gap:4px;flex-shrink:0;}
    .tb-sort-btn{background:transparent;border:1px solid var(--border2);color:var(--muted2);font-family:'JetBrains Mono',monospace;font-size:var(--fs-2xs);padding:3px 7px;border-radius:var(--r-sm);cursor:pointer;letter-spacing:0.3px;transition:all 0.15s;}
    .tb-sort-btn.active,.tb-sort-btn:hover{background:rgba(247,147,26,0.1);border-color:var(--orange-border);color:var(--orange);}
    .tb-retry{background:rgba(247,147,26,0.08);border:1px solid var(--orange-border);color:var(--orange);font-family:'JetBrains Mono',monospace;font-size:var(--fs-sm);padding:7px 16px;border-radius:var(--r-md);cursor:pointer;letter-spacing:0.5px;}
    .tb-retry:hover{background:rgba(247,147,26,0.16);}
    /* Voting-Widget lebt jetzt im Community-Tab */
    #page-community .cb-wrap{display:block!important;}
    /* Override cb-compare label */
    #page-landing .cb-side-label{font-size:var(--fs-2xs);}
    /* ══ LANDING VOTE WRAP (Community-Bias unter dem Halbkreis) ══ */
    .landing-vote-wrap{position:relative;z-index:2;width:100%;max-width:560px;margin:2.25rem auto 0;
      padding:0 1.25rem 2.5rem;display:flex;flex-direction:column;}
    .landing-vote-head{font-size:var(--fs-sm);font-weight:700;font-family:'JetBrains Mono',monospace;
      color:var(--orange);letter-spacing:1.5px;text-align:center;}
    .landing-vote-sub{font-size:var(--fs-xs);font-family:'JetBrains Mono',monospace;color:var(--muted2);
      letter-spacing:0.5px;text-align:center;margin-top:4px;margin-bottom:14px;}
    @media(max-width:480px){.landing-vote-wrap{margin-top:1.25rem;padding:0 1rem 2rem;}}
    .admin-outer{display:flex;flex-direction:column;height:calc(100vh - 57px);overflow:hidden;}

    /* ══ LOGIN OVERLAY ══ */
    .login-overlay{display:none;position:fixed;inset:0;background:rgba(2,4,8,0.97);z-index:500;align-items:center;justify-content:center;}
    .login-overlay.open{display:flex;}
    .login-box{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r-xl);width:92%;max-width:360px;padding:2.5rem 2rem;box-shadow:0 0 80px rgba(247,147,26,0.1),0 24px 80px rgba(0,0,0,0.95);text-align:center;}
    .login-icon{font-size:var(--fs-3xl);color:var(--orange);margin-bottom:0.75rem;}
    .login-brand{font-size:var(--fs-xl);font-weight:800;color:var(--orange);letter-spacing:0.5px;margin-bottom:3px;}
    .login-sub{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);letter-spacing:1px;margin-bottom:2rem;}
    .login-label{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted2);text-align:left;display:block;margin-bottom:5px;letter-spacing:1px;}
    .login-input{width:100%;background:rgba(247,147,26,0.05);border:1px solid var(--border2);border-radius:var(--r-md);color:var(--gold);font-family:'JetBrains Mono',monospace;font-size:var(--fs-lg);padding:12px 14px;outline:none;transition:border 0.2s;margin-bottom:0.75rem;text-align:center;letter-spacing:4px;}
    .login-input:focus{border-color:rgba(247,147,26,0.5);}
    .login-btn{width:100%;background:var(--orange);border:none;border-radius:var(--r-md);color:#04060C;font-family:'JetBrains Mono',monospace;font-size:var(--fs-md);font-weight:700;padding:12px;cursor:pointer;letter-spacing:2px;transition:all 0.2s;margin-bottom:0.75rem;}
    .login-btn:hover{background:#ffaa40;}
    .login-btn:active{transform:scale(0.98);}
    .login-error{font-size:var(--fs-base);font-family:'JetBrains Mono',monospace;color:var(--bear);min-height:16px;margin-bottom:0.25rem;}
    .login-hint{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted);margin-top:1.25rem;line-height:1.6;}
    .logout-btn{background:rgba(247,147,26,0.06);border:1px solid var(--border2);color:var(--muted2);font-family:'JetBrains Mono',monospace;font-size:var(--fs-sm);font-weight:700;padding:5px 12px;border-radius:var(--r-sm);cursor:pointer;letter-spacing:1px;transition:all 0.2s;}
    .logout-btn:hover{background:rgba(239,68,68,0.1);border-color:rgba(239,68,68,0.25);color:var(--bear);}
    .pw-section{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border2);}
    .pw-section-title{font-size:var(--fs-sm);font-family:'JetBrains Mono',monospace;color:var(--muted);letter-spacing:1px;margin-bottom:0.75rem;}

    /* ══ MODERN UI ENHANCEMENTS 2025 ══ */

    /* Glassmorphism Nav */
    .nav{
      backdrop-filter: blur(20px) saturate(180%);
      -webkit-backdrop-filter: blur(20px) saturate(180%);
      background: rgba(4,6,12,0.75) !important;
      border-bottom: 1px solid rgba(247,147,26,0.12) !important;
      box-shadow: 0 1px 0 rgba(247,147,26,0.05), 0 4px 24px rgba(0,0,0,0.4);
      transition: box-shadow 0.3s;
    }
    .nav:hover {
      box-shadow: 0 1px 0 rgba(247,147,26,0.08), 0 4px 32px rgba(0,0,0,0.5);
    }

    /* Brand glow pulse */
    .nav-brand-name {
      position: relative;
      transition: text-shadow 0.3s;
    }
    .nav-brand-name:hover {
      text-shadow: 0 0 20px rgba(247,147,26,0.6), 0 0 40px rgba(247,147,26,0.2);
    }

    /* Tab active glow */
    .tab.active {
      box-shadow: 0 0 10px rgba(247,147,26,0.1);
    }
    .tab:hover { color: var(--gold) !important; }

    /* Live dot: ripple effect */
    .live-dot {
      position: relative;
      box-shadow: 0 0 0 0 rgba(247,147,26,0.4);
      animation: live-ripple 2s infinite;
    }
    @keyframes live-ripple {
      0%   { box-shadow: 0 0 0 0 rgba(247,147,26,0.5); }
      70%  { box-shadow: 0 0 0 7px rgba(247,147,26,0); }
      100% { box-shadow: 0 0 0 0 rgba(247,147,26,0); }
    }

    /* Grid overlay: animated scroll */
    .grid-overlay {
      animation: grid-drift 30s linear infinite;
      opacity: 0.7;
    }
    @keyframes grid-drift {
      0%   { background-position: 0 0, 0 0; }
      100% { background-position: 40px 40px, 40px 40px; }
    }

    /* Landing header: fade-in-down */
    .landing-header {
      animation: fadeInDown 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
    }
    @keyframes fadeInDown {
      from { opacity: 0; transform: translateY(-18px); }
      to   { opacity: 1; transform: translateY(0); }
    }

    /* Filter button: shimmer on hover */
    .filter-btn {
      position: relative;
      overflow: hidden;
      transition: all 0.25s, box-shadow 0.25s !important;
    }
    .filter-btn::after {
      content: '';
      position: absolute;
      top: -50%; left: -60%;
      width: 30%; height: 200%;
      background: linear-gradient(105deg, transparent, rgba(247,147,26,0.18), transparent);
      transform: skewX(-15deg);
      transition: left 0.5s;
    }
    .filter-btn:hover::after { left: 130%; }
    .filter-btn:hover {
      box-shadow: 0 0 20px rgba(247,147,26,0.2), 0 4px 12px rgba(0,0,0,0.4) !important;
      transform: translateY(-1px);
    }
    .filter-btn:active { transform: translateY(0); }

    /* Dashboard overlay backdrop blur */
    .overlay {
      backdrop-filter: blur(12px) saturate(140%);
      -webkit-backdrop-filter: blur(12px) saturate(140%);
      animation: overlayFadeIn 0.2s ease both;
    }
    @keyframes overlayFadeIn {
      from { opacity: 0; }
      to   { opacity: 1; }
    }
    .dashboard {
      animation: dashboardSlideUp 0.35s cubic-bezier(0.34, 1.3, 0.64, 1) both;
    }
    @keyframes dashboardSlideUp {
      from { opacity: 0; transform: translateY(28px) scale(0.97); }
      to   { opacity: 1; transform: translateY(0) scale(1); }
    }

    /* Dashboard: top accent line */
    .dashboard::before {
      content: '';
      display: block;
      height: 2px;
      background: linear-gradient(90deg, transparent, var(--orange), transparent);
      border-radius:var(--r-xl) 18px 0 0;
    }

    /* Filter panel slide: smoother */
    .filter-panel {
      box-shadow: -20px 0 60px rgba(0,0,0,0.6), -1px 0 0 rgba(247,147,26,0.1);
    }

    /* Close button hover spin */
    .close-btn { transition: all 0.2s !important; }
    .close-btn:hover { transform: rotate(90deg); background: var(--orange-bg) !important; color: var(--orange) !important; }

    /* Post cards: hover lift */
    .post-item, .trade-card-d {
      transition: border-color 0.2s, transform 0.2s, box-shadow 0.2s;
    }
    .post-item:hover {
      border-color: rgba(247,147,26,0.25) !important;
      transform: translateY(-2px);
      box-shadow: 0 6px 20px rgba(0,0,0,0.3);
    }
    .trade-card-d:hover {
      border-color: rgba(247,147,26,0.2) !important;
      box-shadow: 0 4px 16px rgba(0,0,0,0.25);
    }

    /* Bias score big: count-up shimmer */
    .bias-score-big {
      font-size:var(--fs-4xl);font-weight:800;margin-bottom:5px;
      transition: color 0.3s ease;
    }

    /* Performance ticker: smoother */
    .perf-ticker-wrap {
      border-bottom: 1px solid rgba(247,147,26,0.08);
      box-shadow: 0 2px 12px rgba(0,0,0,0.3);
    }

    /* Performance pills removed – 12-month view replaces range pills */

    /* Login box: glow */
    .login-box {
      animation: loginAppear 0.4s cubic-bezier(0.34, 1.2, 0.64, 1) both;
      box-shadow: 0 0 80px rgba(247,147,26,0.1), 0 0 0 1px rgba(247,147,26,0.06), 0 24px 80px rgba(0,0,0,0.95) !important;
    }
    @keyframes loginAppear {
      from { opacity: 0; transform: scale(0.92); }
      to   { opacity: 1; transform: scale(1); }
    }
    .login-btn {
      transition: all 0.2s !important;
      box-shadow: 0 0 0 0 rgba(247,147,26,0);
    }
    .login-btn:hover {
      box-shadow: 0 0 24px rgba(247,147,26,0.35) !important;
      transform: translateY(-1px);
    }
    .login-btn:active { transform: translateY(0); }

    /* Input focus glow */
    .login-input:focus {
      border-color: rgba(247,147,26,0.5) !important;
      box-shadow: 0 0 0 3px rgba(247,147,26,0.08), 0 0 16px rgba(247,147,26,0.12);
    }

    /* Suggest popup */
    .suggest-box {
      animation: dashboardSlideUp 0.35s cubic-bezier(0.34, 1.3, 0.64, 1) both;
      border-radius:var(--r-xl);
      box-shadow: 0 0 60px rgba(247,147,26,0.1), 0 24px 80px rgba(0,0,0,0.9);
    }

    /* Community voting slider */
    .cb-slider {
      -webkit-appearance: none;
      appearance: none;
      width: 100%;
      height: 6px;
      border-radius:var(--r-xs);
      outline: none;
      cursor: pointer;
      border: none;
      padding: 0;
      display: block;
    }
    .cb-slider::-webkit-slider-thumb {
      -webkit-appearance: none;
      width: 22px; height: 22px;
      border-radius: 50%;
      background: #fff;
      cursor: pointer;
      border: 2px solid #04060C;
      box-shadow: 0 0 0 2px rgba(255,255,255,0.12), 0 2px 8px rgba(0,0,0,0.5);
      transition: box-shadow 0.15s;
    }
    .cb-slider::-webkit-slider-thumb:active {
      box-shadow: 0 0 0 4px rgba(255,255,255,0.08), 0 2px 8px rgba(0,0,0,0.5);
    }
    .cb-slider::-moz-range-thumb {
      width: 22px; height: 22px;
      border-radius: 50%;
      background: #fff;
      cursor: pointer;
      border: 2px solid #04060C;
    }
    .cb-slider-wrap { width: 100%; }
    .cb-slider:disabled { opacity: 0.4; cursor: default; }
    .cb-slider:disabled::-webkit-slider-thumb { cursor: default; }
    .cb-confirm-btn {
      transition: all 0.2s !important;
      position: relative;
      overflow: hidden;
    }
    .cb-confirm-btn::after {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(105deg, transparent, rgba(255,255,255,0.08), transparent);
      transform: translateX(-100%);
      transition: transform 0.4s;
    }
    .cb-confirm-btn:hover::after { transform: translateX(100%); }
    .cb-confirm-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 20px rgba(247,147,26,0.25) !important; }

    /* Bubble hover glow enhancement */
    .bubble-wrap {
      filter: drop-shadow(0 0 0px rgba(247,147,26,0));
      transition: filter 0.3s, opacity 0.4s ease, transform 0.5s cubic-bezier(0.34,1.56,0.64,1) !important;
    }
    .bubble-wrap:hover {
      filter: drop-shadow(0 0 18px rgba(247,147,26,0.3));
      transform: translate(-50%,-50%) scale(1.1) !important;
    }

    /* Card admin items */
    .inf-item {
      transition: all 0.15s cubic-bezier(0.4,0,0.2,1) !important;
    }
    .inf-item:hover { padding-left: 1.25rem !important; }
    .inf-item.active { padding-left: 1.25rem !important; }

    /* Page transitions */
    .page.active {
      animation: pageFadeIn 0.3s ease both;
    }
    @keyframes pageFadeIn {
      from { opacity: 0; transform: translateY(6px); }
      to   { opacity: 1; transform: translateY(0); }
    }

    /* Scrollbar global polish */
    ::-webkit-scrollbar { width: 4px; height: 4px; }
    ::-webkit-scrollbar-track { background: transparent; }
    ::-webkit-scrollbar-thumb { background: rgba(247,147,26,0.15); border-radius:var(--r-xs); }
    ::-webkit-scrollbar-thumb:hover { background: rgba(247,147,26,0.3); }

    /* Reduce motion: respect OS preference */
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after {
        animation-duration: 0.01ms !important;
        transition-duration: 0.01ms !important;
      }
    }

    /* Mobile: touch-friendly tab bar */
    @media (max-width: 640px) {
      .nav { padding: 0 0.75rem; }
      .nav-brand { margin-right: 0.5rem; }
      .tab { padding: 7px 8px; gap: 0px; font-size:var(--fs-2xs); letter-spacing: 0.8px; }
      .tab i { font-size:var(--fs-xl); }
      .tab span.tab-label { display: none; }
      .tab.active { gap:var(--sp-2); }
      .tab.active span.tab-label { display: inline; }
      /* Admin: stack sidebar above editor on mobile – fully scrollable */
      .admin-outer { height: auto; min-height: calc(100vh - 57px); display: flex; flex-direction: column; }
      .admin-layout { grid-template-columns: 1fr !important; grid-template-rows: auto auto; height: auto; overflow: visible; }
      .admin-sidebar { height: auto; max-height: 160px; overflow-y: auto; border-right: none; border-bottom: 1px solid var(--border2); flex-shrink: 0; }
      .editor-wrap { padding: 0.75rem; height: auto; overflow-y: visible; overflow-x: hidden; padding-bottom: 2rem; }
      .statusbar { position: sticky; bottom: 0; z-index: 10; }
      #page-admin { height: auto; min-height: calc(100vh - 57px); overflow-y: auto; -webkit-overflow-scrolling: touch; }
      .field-row { grid-template-columns: 1fr; }
      .trade-price-row { grid-template-columns: 1fr 1fr 1fr; }
      .bias-slider-row { flex-wrap: wrap; gap:var(--sp-2); }
      .dir-pill { padding: 10px 0; font-size:var(--fs-md); }
      .ed-card { padding: 10px 11px; }
    }
    /* Very small: active tab still shows label */
    @media (max-width: 400px) {
      .tab { padding: 7px 8px; }
    }
  
    /* ═══════════════════════════════════════════════════════════════
       SKELETON LOADING SYSTEM
       Shimmer-Pulse in Orange, passend zum Design-Token --orange
    ═══════════════════════════════════════════════════════════════ */
    @keyframes sk-shimmer {
      0%   { background-position: -600px 0; }
      100% { background-position:  600px 0; }
    }
    .sk {
      background: linear-gradient(
        90deg,
        rgba(247,147,26,0.05) 25%,
        rgba(247,147,26,0.13) 50%,
        rgba(247,147,26,0.05) 75%
      );
      background-size: 600px 100%;
      animation: sk-shimmer 1.6s ease-in-out infinite;
      border-radius:var(--r-sm);
    }
    /* Bubble Skeleton – rund */
    .sk-bubble {
      border-radius: 50%;
      background: linear-gradient(
        135deg,
        rgba(247,147,26,0.06) 25%,
        rgba(247,147,26,0.14) 50%,
        rgba(247,147,26,0.06) 75%
      );
      background-size: 400px 400px;
      animation: sk-shimmer 1.8s ease-in-out infinite;
      border: 1px solid rgba(247,147,26,0.10);
    }
    /* Ticker Skeleton – Avatar + Label */
    .sk-ticker-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap:var(--sp-2);
      flex-shrink: 0;
    }
    .sk-ticker-avatar {
      border-radius: 50%;
      background: linear-gradient(
        90deg,
        rgba(247,147,26,0.05) 25%,
        rgba(247,147,26,0.13) 50%,
        rgba(247,147,26,0.05) 75%
      );
      background-size: 400px 100%;
      animation: sk-shimmer 1.6s ease-in-out infinite;
    }
    /* Dashboard Skeleton */
    .sk-dashboard-header {
      display: flex;
      align-items: center;
      gap:var(--sp-5);
      padding: 1.25rem 1.5rem;
      border-bottom: 1px solid var(--border2);
    }
    .sk-dashboard-body {
      padding: 1.5rem;
      display: flex;
      flex-direction: column;
      gap: 1rem;
    }
    .sk-row {
      display: flex;
      align-items: center;
      gap:var(--sp-4);
    }
    /* Fade-out Skeleton → real content */
    .sk-fade-out {
      animation: sk-fade 0.35s ease forwards;
    }
    @keyframes sk-fade {
      from { opacity: 1; }
      to   { opacity: 0; pointer-events: none; }
    }



    .site-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;padding:18px 16px;margin-top:auto;border-top:1px solid var(--border2);background:rgba(4,6,12,0.6);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.5px;color:rgba(232,224,208,0.45);}
    .site-footer a{color:rgba(232,224,208,0.62);text-decoration:none;transition:color .15s;}
    .site-footer a:hover{color:var(--orange);}
    .site-footer .sep{opacity:.45;}
  


/* Rechtlicher Hinweis: Info-Tooltip */
.info-tip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;border:1px solid var(--border2);color:var(--muted2);font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:700;font-style:normal;cursor:help;user-select:none;flex-shrink:0;outline:none;line-height:1;}
.info-tip:hover,.info-tip:focus{color:var(--orange);border-color:var(--orange-border);}
.info-tip .info-bubble{position:absolute;top:calc(100% + 8px);right:0;left:auto;width:min(280px,74vw);background:#0d1220;border:1px solid var(--orange-border);border-radius:8px;padding:9px 11px;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:400;line-height:1.55;letter-spacing:0.2px;color:rgba(232,224,208,0.85);text-align:left;white-space:normal;text-transform:none;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s;z-index:300;box-shadow:0 10px 28px rgba(0,0,0,0.65);pointer-events:none;}
.info-tip:hover .info-bubble,.info-tip:focus .info-bubble,.info-tip:focus-within .info-bubble{opacity:1;visibility:visible;transform:translateY(0);}
.info-tip.tip-center .info-bubble{left:50%;right:auto;transform:translateX(-50%) translateY(4px);}
.info-tip.tip-center:hover .info-bubble,.info-tip.tip-center:focus .info-bubble,.info-tip.tip-center:focus-within .info-bubble{transform:translateX(-50%) translateY(0);}
.radar-disclaimer-mini{margin-top:8px;text-align:center;}
/* Dashboard: rechtlicher Footer */
.d-legal-footer{padding:13px 1.5rem 18px;border-top:1px solid var(--border);font-family:'JetBrains Mono',monospace;font-size:10.5px;line-height:1.6;letter-spacing:0.2px;color:rgba(232,224,208,0.5);}
.d-legal-footer a{color:rgba(232,224,208,0.72);text-decoration:underline;text-underline-offset:2px;}
.d-legal-footer a:hover{color:var(--orange);}
/* Landing: Bias-Hinweis */
.radar-disclaimer{margin:6px auto 0;max-width:560px;font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:rgba(232,224,208,0.42);letter-spacing:0.3px;line-height:1.4;}
/* Performance-Post: Quell-Link */
.pp-src{display:inline-flex;align-items:center;font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;color:var(--orange);text-decoration:none;border:1px solid var(--orange-border);border-radius:var(--r-2xl);padding:1px 7px;white-space:nowrap;transition:all .15s;}
.pp-src:hover{background:rgba(247,147,26,0.12);}
.pp-aged{display:inline-flex;align-items:center;font-size:var(--fs-2xs);font-family:'JetBrains Mono',monospace;border:1px solid;border-radius:var(--r-2xl);padding:1px 8px;letter-spacing:0.5px;white-space:nowrap;}
/* Beobachtet-Streifen (gelbe Influencer) */
.watched-strip{padding:14px 16px 2px;}
.watched-strip-lbl{font-family:'JetBrains Mono',monospace;font-size:var(--fs-xs);font-weight:700;letter-spacing:1.5px;color:var(--warn);margin-bottom:10px;text-align:center;}
.watched-row{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:none;-ms-overflow-style:none;}
.watched-row::-webkit-scrollbar{display:none;}
@media(min-width:560px){.watched-row{justify-content:center;flex-wrap:wrap;}}
.watched-chip{flex-shrink:0;display:inline-flex;align-items:center;gap:7px;padding:5px 13px 5px 5px;background:rgba(234,179,8,0.06);border:1px solid rgba(234,179,8,0.28);border-radius:var(--r-2xl);cursor:pointer;transition:all .15s;font-family:'Sora',sans-serif;}
.watched-chip:hover{background:rgba(234,179,8,0.13);border-color:rgba(234,179,8,0.5);}
.wc-av{width:26px;height:26px;border-radius:50%;object-fit:cover;flex-shrink:0;}
.wc-dot{width:7px;height:7px;border-radius:50%;background:var(--warn);flex-shrink:0;box-shadow:0 0 6px rgba(234,179,8,0.6);}
.wc-name{display:inline-flex;flex-direction:column;line-height:1.15;white-space:nowrap;}
.wc-name-txt{font-size:var(--fs-sm);color:var(--text);font-weight:600;}
.wc-tag{font-size:var(--fs-2xs);color:rgba(234,179,8,0.65);font-family:'JetBrains Mono',monospace;font-weight:400;}
.radar-empty-hint{position:absolute;left:50%;top:60%;transform:translate(-50%,-50%);z-index:2;max-width:72%;text-align:center;font-family:'JetBrains Mono',monospace;font-size:var(--fs-sm);color:var(--muted2);line-height:1.5;}
/* cb-slider thumb colour via CSS var */
.cb-slider {
  --thumb-col: var(--neutral);
}
.cb-slider::-webkit-slider-thumb {
  background: var(--thumb-col, var(--neutral)) !important;
}



/* ═══════════════════════════════════════════════════════════════
   1. MAGNETIC BUBBLE – Cursor-nahe Bubbles weichen leicht aus
      (override der bestehenden .bubble-wrap transition)
   ═══════════════════════════════════════════════════════════════ */
.bubble-wrap {
  will-change: transform;
  /* transition wird per JS auf 'none' gesetzt während Drag, 
     danach spring-back via CSS */
}
.bubble-wrap.magnetic-spring {
  transition:
    left   0.6s cubic-bezier(0.34, 1.56, 0.64, 1),
    top    0.6s cubic-bezier(0.34, 1.56, 0.64, 1),
    filter 0.3s ease,
    opacity 0.4s ease !important;
}

/* ═══════════════════════════════════════════════════════════════
   2. BIAS-SLIDER – Thumb-Glow interpoliert mit Farbe
   ═══════════════════════════════════════════════════════════════ */
input[type=range].bslider::-webkit-slider-thumb {
  transition: box-shadow 0.15s ease, background 0.2s ease, transform 0.1s ease;
}
input[type=range].bslider:active::-webkit-slider-thumb {
  transform: scale(1.25);
}
input[type=range].bslider.thumb-bull::-webkit-slider-thumb {
  background: var(--bull);
  box-shadow: 0 0 0 4px rgba(52,211,153,0.25), 0 0 16px rgba(52,211,153,0.4);
}
input[type=range].bslider.thumb-bear::-webkit-slider-thumb {
  background: var(--bear);
  box-shadow: 0 0 0 4px rgba(239,68,68,0.25), 0 0 16px rgba(239,68,68,0.4);
}
input[type=range].bslider.thumb-neut::-webkit-slider-thumb {
  background: var(--neutral);
  box-shadow: 0 0 0 4px rgba(156,163,175,0.2), 0 0 12px rgba(156,163,175,0.3);
}

/* cb-slider (Community) gleiche Behandlung */
.cb-slider::-webkit-slider-thumb {
  transition: box-shadow 0.15s ease, transform 0.1s ease !important;
}
.cb-slider:active::-webkit-slider-thumb {
  transform: scale(1.2) !important;
}

/* ═══════════════════════════════════════════════════════════════
   3. RIPPLE – auf allen wichtigen Buttons
   ═══════════════════════════════════════════════════════════════ */
.ripple-host {
  position: relative;
  overflow: hidden;
}
.ripple-wave {
  position: absolute;
  border-radius: 50%;
  transform: scale(0);
  animation: ripple-expand 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
  pointer-events: none;
  background: rgba(247, 147, 26, 0.22);
}
@keyframes ripple-expand {
  to { transform: scale(4); opacity: 0; }
}

/* ═══════════════════════════════════════════════════════════════
   4. DASHBOARD STAGGER – Sektionen fliegen einzeln rein
   ═══════════════════════════════════════════════════════════════ */
.d-body .sec-block,
.d-body .divider {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.35s ease, transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
.d-body.stagger-ready .sec-block,
.d-body.stagger-ready .divider {
  opacity: 1;
  transform: translateY(0);
}

/* ═══════════════════════════════════════════════════════════════
   5. NAV TAB INDICATOR – gleitende Orange-Linie unter aktivem Tab
   ═══════════════════════════════════════════════════════════════ */
.nav {
  position: relative; /* already sticky, just confirm */
}
#tab-indicator {
  position: absolute;
  bottom: 0;
  height: 2px;
  background: var(--orange);
  border-radius:var(--r-xs) 2px 0 0;
  box-shadow: 0 0 8px rgba(247,147,26,0.6);
  transition: left 0.3s cubic-bezier(0.4, 0, 0.2, 1),
              width 0.3s cubic-bezier(0.4, 0, 0.2, 1),
              opacity 0.2s ease;
  pointer-events: none;
  z-index: 10;
}

/* ═══════════════════════════════════════════════════════════════
   6. CURSOR TRAIL – orangene Partikel auf der Bubble-Stage
   ═══════════════════════════════════════════════════════════════ */
.cursor-particle {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: 5;
  animation: particle-fade 0.7s ease-out forwards;
}
@keyframes particle-fade {
  0%   { opacity: 0.7; transform: scale(1) translate(-50%,-50%); }
  100% { opacity: 0;   transform: scale(0.1) translate(-50%,-50%); }
}

/* ═══════════════════════════════════════════════════════════════
   BONUS: Post-item reveal animation beim Öffnen des Dashboards
   ═══════════════════════════════════════════════════════════════ */
.post-item {
  animation: none; /* reset – wird per JS gesetzt */
}
.post-item.reveal {
  animation: post-slide-in 0.3s cubic-bezier(0.22, 1, 0.36, 1) both;
}
@keyframes post-slide-in {
  from { opacity: 0; transform: translateX(-8px); }
  to   { opacity: 1; transform: translateX(0); }
}

/* Filter-Panel Items: hover-lift */
.filter-item {
  transition: background 0.15s, border-color 0.15s, transform 0.15s cubic-bezier(0.34,1.2,0.64,1) !important;
}
.filter-item:hover:not(.disabled) {
  transform: translateX(3px) !important;
}

    /* ═══════════════════════════════════════════════════════════════
       SHARE SNAPSHOT SYSTEM
    ═══════════════════════════════════════════════════════════════ */
    .share-btn {
      display: inline-flex;
      align-items: center;
      gap:var(--sp-2);
      background: transparent;
      border: 1px solid rgba(247,147,26,0.2);
      color: var(--muted2);
      font-family: 'JetBrains Mono', monospace;
      font-size:var(--fs-xs);
      font-weight: 700;
      letter-spacing: 1px;
      padding: 5px 10px;
      border-radius:var(--r-sm);
      cursor: pointer;
      transition: background 0.18s, border-color 0.18s, color 0.18s;
      flex-shrink: 0;
    }
    .share-btn:hover {
      background: rgba(247,147,26,0.06);
      border-color: rgba(247,147,26,0.35);
      color: var(--orange);
    }
    .share-btn:active { opacity: 0.75; }
    .share-btn i { font-size:var(--fs-md); }
    /* Share modal */
    .share-modal-overlay {
      display: none;
      position: fixed;
      inset: 0;
      background: rgba(2,4,8,0.82);
      z-index: 400;
      align-items: center;
      justify-content: center;
      backdrop-filter: blur(8px);
      -webkit-backdrop-filter: blur(8px);
      animation: overlayFadeIn 0.18s ease both;
    }
    .share-modal-overlay.open { display: flex; }
    .share-modal {
      background: var(--bg2);
      border: 1px solid var(--border2);
      border-radius:var(--r-xl);
      width: 92%;
      max-width: 480px;
      padding: 1.25rem;
      box-shadow: 0 20px 60px rgba(0,0,0,0.8);
      animation: dashboardSlideUp 0.25s cubic-bezier(0.22,1,0.36,1) both;
    }
    .share-modal-title {
      font-size:var(--fs-sm);
      font-weight: 700;
      font-family: 'JetBrains Mono', monospace;
      color: var(--muted2);
      letter-spacing: 1.5px;
      margin-bottom: 1rem;
    }
    .share-preview-wrap {
      border-radius:var(--r-md);
      overflow: hidden;
      border: 1px solid var(--border);
      margin-bottom: 0.875rem;
      background: var(--bg);
      min-height: 100px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .share-preview-wrap canvas,
    .share-preview-wrap img {
      width: 100%;
      height: auto;
      display: block;
      border-radius:var(--r-sm);
    }
    .share-preview-wrap .share-rendering {
      font-size:var(--fs-xs);
      font-family: 'JetBrains Mono', monospace;
      color: var(--muted2);
      letter-spacing: 1px;
      padding: 2rem;
    }
    .share-actions {
      display: flex;
      gap:var(--sp-2);
    }
    .share-action-btn {
      flex: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      gap:var(--sp-2);
      padding: 9px;
      border-radius:var(--r-sm);
      font-family: 'JetBrains Mono', monospace;
      font-size:var(--fs-sm);
      font-weight: 700;
      letter-spacing: 1px;
      cursor: pointer;
      transition: background 0.18s, color 0.18s;
      border: 1px solid;
    }
    .share-action-download {
      background: rgba(247,147,26,0.06);
      border-color: rgba(247,147,26,0.22);
      color: var(--orange);
    }
    .share-action-download:hover { background: rgba(247,147,26,0.13); }
    .share-action-native {
      background: rgba(52,211,153,0.05);
      border-color: rgba(52,211,153,0.2);
      color: var(--bull);
    }
    .share-action-native:hover { background: rgba(52,211,153,0.11); }
    .share-action-close {
      background: transparent;
      border-color: var(--border);
      color: var(--muted2);
      flex: 0 0 auto;
      padding: 9px 14px;
    }
    .share-action-close:hover { background: rgba(255,255,255,0.04); color: var(--text); }

    /* ── Barrierefreiheit: Bewegung reduzieren, wenn vom Nutzer gewünscht ────────── */
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
      }
    }
