/* GER Rail Data — right sidebar rail (Teal palette).
   Variables are scoped to .ger-rail so the plugin blends into the GER Theme
   and still works standalone on any theme. */

.ger-rail{
  --tf-primary:#54BAB9; --tf-primary-strong:#2F6B6B; --tf-accent:#06B6D4;
  --tf-ink:#10201E; --tf-text:#23223d; --tf-muted:#6b6b85;
  --tf-border:#e5e4f2; --tf-soft:rgba(84,186,185,.08); --tf-card:#ffffff;
  --tf-chip-drop:#fdecec; --tf-chip-drop-t:#b42318;
  --tf-chip-gain:#e7f8ee; --tf-chip-gain-t:#067647;
  --tf-chip-bug:#fff4e0;  --tf-chip-bug-t:#b54708;
  --tf-chip-take:#e6f5f5; --tf-chip-take-t:#2F6B6B;
  display:flex; flex-direction:column; gap:20px;
  color:var(--tf-text);
  font-family:var(--tf-font, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);
}
@media (prefers-color-scheme: dark){
  .ger-rail{
    --tf-primary:#A5B4FC; --tf-primary-strong:#A5B4FC; --tf-ink:#f2f1ff; --tf-text:#d9d8ee;
    --tf-muted:#9a99b8; --tf-border:#2a2952; --tf-soft:rgba(165,180,252,.12); --tf-card:#171633;
    --tf-chip-drop:#3d1d22; --tf-chip-drop-t:#fda29b;
    --tf-chip-gain:#12352a; --tf-chip-gain-t:#6ce9a6;
    --tf-chip-bug:#3a2a10;  --tf-chip-bug-t:#fec84b;
    --tf-chip-take:#232350; --tf-chip-take-t:#a5b4fc;
  }
}
.ger-rail--sticky{ position:sticky; top:70px; max-height:calc(100vh - 86px); overflow-y:auto; overscroll-behavior:contain; scrollbar-width:none; padding-bottom:6px; }
.ger-rail--sticky::-webkit-scrollbar{ display:none; }
@media (max-width:940px){ .ger-rail--sticky{ position:static; max-height:none; overflow:visible; } }

.ger-rail a{ color:inherit; text-decoration:none; }
.ger-rail a:hover{ color:var(--tf-primary); }
.ger-rail-ad{ border-radius:16px; overflow:hidden; text-align:center; }
.ger-rail-ad img{ max-width:100%; height:auto; }

.ger-card{ background:var(--tf-card); border:1px solid var(--tf-border); border-radius:16px; padding:18px; }
.ger-card-head{ display:flex; align-items:center; gap:.6rem; margin-bottom:14px; }
.ger-card-ico{ width:34px; height:34px; flex:0 0 34px; border-radius:10px; background:var(--tf-soft); color:var(--tf-primary); display:flex; align-items:center; justify-content:center; }
.ger-card-ico svg{ width:19px; height:19px; }
.ger-card-head h3{ margin:0; font-size:1rem; font-weight:800; color:var(--tf-ink); letter-spacing:.01em; }
.ger-card-head .side{ margin-left:auto; font-size:.75rem; font-weight:700; color:var(--tf-primary-strong); white-space:nowrap; }

/* 1 — AI Release Radar */
.ger-rail .radar-item{ display:flex; gap:12px; padding:11px 0; border-top:1px dashed var(--tf-border); }
.ger-rail .radar-item:first-of-type{ border-top:none; padding-top:2px; }
.ger-rail .radar-date{ flex:0 0 48px; text-align:center; background:var(--tf-soft); border-radius:10px; padding:6px 0 5px; height:fit-content; }
.ger-rail .radar-date b{ display:block; font-size:1.05rem; line-height:1; color:var(--tf-primary-strong); }
.ger-rail .radar-date span{ font-size:.66rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--tf-muted); }
.ger-rail .radar-item h4{ margin:0 0 3px; font-size:.93rem; line-height:1.35; color:var(--tf-ink); font-weight:700; }
.ger-rail .radar-item p{ margin:0; font-size:.8rem; color:var(--tf-muted); }
.ger-rail .status{ font-size:.66rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; padding:.14rem .45rem; border-radius:999px; vertical-align:2px; margin-left:.35rem; white-space:nowrap; }
.ger-rail .status.announced{ background:#e0f7fd; color:#0277a6; }
.ger-rail .status.expected{ background:#eef0f6; color:#5b5b74; }
.ger-rail .status.rolling{ background:#e7f8ee; color:#067647; }
@media (prefers-color-scheme: dark){
  .ger-rail .status.announced{ background:#0d3442; color:#7dd3fc; }
  .ger-rail .status.expected{ background:#23233f; color:#a5a4c4; }
  .ger-rail .status.rolling{ background:#12352a; color:#6ce9a6; }
}

/* 2 — Model Tracker */
.ger-rail .tracker-row{ display:flex; align-items:center; gap:10px; padding:9px 0; border-top:1px dashed var(--tf-border); }
.ger-rail .tracker-row:first-of-type{ border-top:none; padding-top:2px; }
.ger-rail .tracker-dot{ width:9px; height:9px; border-radius:50%; flex:0 0 9px; }
.ger-rail .tracker-row .plat{ font-size:.8rem; color:var(--tf-muted); flex:0 0 74px; }
.ger-rail .tracker-row .model{ font-size:.92rem; font-weight:700; color:var(--tf-ink); }
.ger-rail .tracker-row .when{ margin-left:auto; font-size:.78rem; color:var(--tf-muted); white-space:nowrap; }
.ger-rail .ger-card-foot{ margin-top:12px; padding-top:11px; border-top:1px solid var(--tf-border); font-size:.8rem; font-weight:700; color:var(--tf-primary-strong); }
.ger-rail .ger-card-foot a:hover{ text-decoration:underline; }

/* 3 — Most Discussed */
.ger-rail .disc-item{ display:flex; gap:12px; padding:11px 0; border-top:1px dashed var(--tf-border); }
.ger-rail .disc-item:first-of-type{ border-top:none; padding-top:2px; }
.ger-rail .disc-rank{ font-size:1.35rem; font-weight:800; color:var(--tf-primary); line-height:1; flex:0 0 26px; text-align:center; }
.ger-rail .disc-item h4{ margin:0 0 5px; font-size:.93rem; line-height:1.38; color:var(--tf-ink); font-weight:700; }
.ger-rail .disc-meta{ display:flex; align-items:center; gap:.5rem; font-size:.78rem; color:var(--tf-muted); flex-wrap:wrap; }
.ger-rail .chip{ font-size:.7rem; font-weight:700; padding:.14rem .5rem; border-radius:999px; white-space:nowrap; }
.ger-rail .chip.drop{ background:var(--tf-chip-drop); color:var(--tf-chip-drop-t); }
.ger-rail .chip.gain{ background:var(--tf-chip-gain); color:var(--tf-chip-gain-t); }
.ger-rail .chip.bug{ background:var(--tf-chip-bug); color:var(--tf-chip-bug-t); }
.ger-rail .chip.take{ background:var(--tf-chip-take); color:var(--tf-chip-take-t); }

/* 4 — Poll of the Day */
.ger-rail .poll-q{ font-size:1rem; font-weight:700; line-height:1.45; color:var(--tf-ink); margin:0 0 13px; }
.ger-rail .poll-opt{ display:flex; align-items:center; gap:.6rem; border:1px solid var(--tf-border); border-radius:11px; padding:.62rem .8rem; margin-bottom:9px; cursor:pointer; font-size:.9rem; color:var(--tf-text); transition:border-color .15s, background .15s; }
.ger-rail .poll-opt:hover{ border-color:var(--tf-primary); }
.ger-rail .poll-opt input{ accent-color:var(--tf-primary); width:16px; height:16px; margin:0; flex:0 0 16px; }
.ger-rail .poll-vote{ width:100%; border:none; cursor:pointer; background:var(--tf-primary); color:#fff; font-weight:700; font-size:.92rem; padding:.72rem; border-radius:11px; margin-top:3px; }
.ger-rail .poll-vote:hover{ background:var(--tf-primary-strong); }
.ger-rail .poll-note{ margin:10px 0 0; font-size:.76rem; color:var(--tf-muted); text-align:center; }
.ger-rail .poll-bar-row{ margin-bottom:12px; }
.ger-rail .poll-bar-row .lbl{ display:flex; justify-content:space-between; font-size:.86rem; margin-bottom:5px; color:var(--tf-text); }
.ger-rail .poll-bar-row .lbl b{ color:var(--tf-ink); }
.ger-rail .poll-bar{ height:9px; border-radius:99px; background:var(--tf-soft); overflow:hidden; }
.ger-rail .poll-bar i{ display:block; height:100%; width:0; border-radius:99px; background:var(--tf-primary); transition:width .8s ease; }
.ger-rail .poll-bar-row.mine .lbl b::after{ content:" · your vote"; color:var(--tf-primary); font-weight:700; }
.ger-rail .poll-bar-row.mine .poll-bar i{ background:var(--tf-accent); }

/* 5 — Desk Navigator */
.ger-rail .desk-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.ger-rail .desk-tile{ border:1px solid var(--tf-border); border-radius:13px; padding:13px 6px 10px; text-align:center; display:flex; flex-direction:column; align-items:center; gap:7px; transition:border-color .15s, background .15s; }
.ger-rail .desk-tile:hover{ border-color:var(--tf-primary); background:var(--tf-soft); }
.ger-rail .desk-tile svg{ width:27px; height:27px; }
.ger-rail .desk-tile span{ font-size:.74rem; font-weight:700; color:var(--tf-ink); line-height:1.2; }
