    *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
    :root{
      --ice-50:#f0f7ff;--ice-100:#e0f0ff;--ice-200:#b9dcff;
      --ice-400:#3a9eff;--ice-500:#0d7ff5;--ice-600:#0060cc;
      --violet-300:#c4b5fd;--violet-500:#8b5cf6;
      --text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;
      --surface:rgba(255,255,255,0.72);--surface-dim:rgba(255,255,255,0.45);
      --border:rgba(148,163,184,0.2);
      --font:'Zen Kaku Gothic New',-apple-system,sans-serif;
      --mono:'DM Mono',ui-monospace,monospace;
    }
    html{
      width:100%;min-height:100vh;overflow-x:hidden;
    }
    body{
      width:100%;min-height:100vh;
    }
    body{
      font-family:var(--font);color:var(--text-primary);
      background:
        radial-gradient(circle at 50% 42%, rgba(246,250,255,.94) 0%, rgba(239,247,255,.92) 34%, rgba(227,236,252,.84) 58%, rgba(214,225,244,.78) 78%, rgba(203,214,236,.76) 100%);
      background-image:
        radial-gradient(circle at 16% 12%, rgba(255,255,255,.95) 0 1.1px, transparent 2.1px),
        radial-gradient(circle at 78% 16%, rgba(224,242,254,.8) 0 1px, transparent 2px),
        radial-gradient(circle at 88% 72%, rgba(255,255,255,.72) 0 .9px, transparent 1.8px),
        radial-gradient(circle at 22% 76%, rgba(196,181,253,.52) 0 1.1px, transparent 2px),
        radial-gradient(ellipse 48% 34% at 12% 8%, rgba(58,92,184,.18) 0%, transparent 72%),
        radial-gradient(ellipse 36% 26% at 86% 10%, rgba(91,33,182,.18) 0%, transparent 72%),
        radial-gradient(ellipse 42% 28% at 84% 72%, rgba(15,23,42,.18) 0%, transparent 76%),
        radial-gradient(ellipse 32% 22% at 18% 84%, rgba(56,189,248,.14) 0%, transparent 72%),
        linear-gradient(125deg, rgba(15,23,42,.06) 0%, transparent 28%, rgba(76,29,149,.06) 72%, transparent 100%),
        linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,0));
      background-size:
        320px 220px,
        420px 260px,
        360px 240px,
        380px 260px,
        auto,
        auto,
        auto,
        auto,
        auto,
        auto;
      background-attachment:fixed;
    }
    body::before,body::after{
      content:'';position:fixed;inset:0;pointer-events:none;z-index:0;
    }
    body::before{
      background:
        radial-gradient(ellipse 42% 28% at 18% 18%, rgba(37,99,235,.16) 0%, rgba(147,197,253,.08) 34%, transparent 76%),
        radial-gradient(ellipse 34% 24% at 84% 14%, rgba(109,40,217,.15) 0%, rgba(196,181,253,.08) 36%, transparent 78%),
        radial-gradient(ellipse 28% 20% at 74% 70%, rgba(15,23,42,.16) 0%, transparent 74%),
        radial-gradient(ellipse 26% 18% at 24% 88%, rgba(14,165,233,.1) 0%, transparent 72%);
      filter:blur(28px);
      opacity:.92;
    }
    body::after{
      background:
        linear-gradient(118deg,transparent 0%, rgba(255,255,255,.12) 26%, transparent 46%),
        linear-gradient(152deg,transparent 0%, rgba(99,102,241,.06) 58%, transparent 82%),
        radial-gradient(circle at 50% 50%, transparent 0%, transparent 58%, rgba(15,23,42,.08) 100%);
      opacity:.86;
    }

    /* stars */
    .stars{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
    .stars::before,.stars::after{
      content:'';position:absolute;inset:0;opacity:.6;
      background-repeat:repeat;
      mix-blend-mode:screen;
    }
    .stars::before{
      background-image:
        radial-gradient(circle, rgba(255,255,255,.72) 0 1px, transparent 1.7px),
        radial-gradient(circle, rgba(125,211,252,.32) 0 1px, transparent 2px);
      background-size:220px 220px, 320px 320px;
      background-position:0 0, 40px 80px;
      transform:scale(1.06);
    }
    .stars::after{
      background-image:
        radial-gradient(circle, rgba(196,181,253,.18) 0 1px, transparent 2px),
        radial-gradient(circle, rgba(224,242,254,.3) 0 .8px, transparent 1.6px);
      background-size:360px 360px, 260px 260px;
      background-position:80px 20px, 0 140px;
      opacity:.38;
      transform:rotate(-7deg) scale(1.08);
    }
    .star{position:absolute;height:1.5px;width:200px;background:linear-gradient(90deg,transparent,rgba(147,197,253,0.8) 60%,rgba(196,181,253,0.9));border-radius:999px;opacity:0;transform:rotate(35deg) translateX(-300px);animation:shoot 8s linear infinite}
    .star:nth-child(1){top:5%;left:15%;animation-delay:0s;animation-duration:7s}
    .star:nth-child(2){top:20%;left:55%;animation-delay:2.5s;animation-duration:9s}
    .star:nth-child(3){top:-2%;left:75%;animation-delay:5s;animation-duration:6s}
    .star:nth-child(4){top:40%;left:5%;animation-delay:1.2s;animation-duration:10s}
    .star:nth-child(5){top:60%;left:40%;animation-delay:3.8s;animation-duration:8s}
    @keyframes shoot{0%{opacity:0;transform:rotate(35deg) translateX(-300px)}8%{opacity:.8}85%{opacity:.6}100%{opacity:0;transform:rotate(35deg) translateX(200vw)}}

    /* nav */
    .nav{position:sticky;top:0;z-index:100;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;padding:14px 40px;background:rgba(248,250,255,0.88);backdrop-filter:blur(20px) saturate(1.4);border-bottom:1px solid var(--border)}
    .brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text-primary);font-weight:900;font-size:16px;justify-self:start}
    .brand-avatar{width:32px;height:32px;border-radius:50%;border:2px solid var(--ice-200);box-shadow:0 0 0 3px rgba(147,197,253,0.15)}
    .brand-word{
      position:relative;display:inline-block;
      background:linear-gradient(92deg,#0f172a 0%,#1d4ed8 20%,#f8fbff 44%,#38bdf8 66%,#0f172a 100%);
      background-size:240% 100%;
      -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
      text-shadow:0 0 12px rgba(125,211,252,.16),0 0 24px rgba(196,181,253,.08);
      animation:brandAurora 5.4s linear infinite;
    }
    .brand-word::after{
      content:'';position:absolute;left:0;right:0;bottom:-3px;height:1px;border-radius:999px;opacity:.78;
      background:linear-gradient(90deg,transparent,rgba(125,211,252,.12),rgba(255,255,255,.96),rgba(59,130,246,.16),transparent);
      background-size:220% 100%;
      animation:brandTrail 4.8s linear infinite;
    }
    @keyframes brandAurora{0%{background-position:200% 0}100%{background-position:-20% 0}}
    @keyframes brandTrail{0%{background-position:210% 0}100%{background-position:-20% 0}}
    .nav-right{display:flex;align-items:center;gap:12px;justify-content:flex-end;justify-self:end;min-width:0}
    .nav-links{display:flex;gap:4px}
    .nav-link{padding:7px 16px;border-radius:999px;font-size:13px;font-weight:700;text-decoration:none;color:var(--text-secondary);transition:all .2s;border:1px solid transparent}
    .nav-link:hover{background:var(--ice-50);color:var(--ice-600);border-color:var(--ice-200)}
    .nav-link.active{background:var(--text-primary);color:#fff}
    .nav-cta{
      display:inline-flex;align-items:center;justify-content:center;gap:8px;
      padding:10px 18px;border-radius:999px;text-decoration:none;font-size:13px;font-weight:900;
      color:#fff;background:linear-gradient(135deg,#0d7ff5 0%,#2563eb 100%);
      border:1px solid rgba(37,99,235,.28);box-shadow:0 14px 34px rgba(37,99,235,.22);
      transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;white-space:nowrap;
      justify-self:center;
    }
    .nav-cta:hover{transform:translateY(-1px);box-shadow:0 18px 40px rgba(37,99,235,.28);filter:saturate(1.06)}
    @media(max-width:640px){
      .nav{display:flex;flex-direction:column;gap:12px;padding:16px 20px}
      .nav-right{width:100%;flex-direction:column;gap:10px;justify-content:flex-start}
      .nav-links{flex-wrap:wrap;justify-content:center}
      .nav-cta{width:100%;max-width:320px}
    }
    @media(max-width:420px){
      .nav{padding:14px 14px}
      .nav-links{gap:6px}
      .nav-link{padding:7px 12px;font-size:12px}
      .nav-cta{font-size:12px;padding:10px 14px}
    }

    /* layout */
    .layout{
      display:grid;
      grid-template-columns:250px minmax(0,1fr) 250px;
      grid-template-areas:"left main right";
      max-width:1320px;margin:0 auto;padding:32px 24px 80px;
      gap:24px;position:relative;z-index:1;align-items:start;
    }
    .layout::before{
      content:'';position:absolute;inset:10px 10px -10px;z-index:0;pointer-events:none;
      background:
        radial-gradient(ellipse 32% 22% at 50% 20%, rgba(37,99,235,.16) 0%, transparent 72%),
        radial-gradient(ellipse 28% 22% at 86% 18%, rgba(109,40,217,.18) 0%, transparent 74%),
        radial-gradient(ellipse 24% 18% at 12% 80%, rgba(56,189,248,.16) 0%, transparent 72%),
        radial-gradient(ellipse 54% 40% at 50% 56%, rgba(15,23,42,.1) 0%, transparent 82%);
      filter:blur(16px);
      opacity:.95;
    }
    .left-rail{grid-area:left}
    .main-pane{min-width:0}
    .main-pane{grid-area:main}
    .main-pane-inner{
      width:100%;
      max-width:820px;
      margin:0 auto;
      position:relative;
    }
    .main-pane-inner::before,
    .main-pane-inner::after{
      content:'';position:absolute;pointer-events:none;z-index:0;filter:blur(6px);
    }
    .main-pane-inner::before{
      top:-36px;right:-40px;width:180px;height:180px;border-radius:50%;
      background:radial-gradient(circle,rgba(125,211,252,.18),transparent 66%);
    }
    .main-pane-inner::after{
      left:-30px;top:120px;width:96px;height:96px;
      background:
        radial-gradient(circle at center,rgba(255,255,255,.8) 0 8%,transparent 9%),
        conic-gradient(from 0deg,rgba(219,234,254,.22),rgba(196,181,253,.12),rgba(125,211,252,.22),rgba(219,234,254,.22));
      clip-path:polygon(50% 0%,61% 32%,95% 35%,68% 57%,79% 91%,50% 71%,21% 91%,32% 57%,5% 35%,39% 32%);
      opacity:.42;
    }
    .right-rail{grid-area:right}
    @media(max-width:1180px){
      .layout{
        grid-template-columns:250px minmax(0,1fr);
        grid-template-areas:
          "left main"
          "right right";
        max-width:1080px;
      }
    }
    @media(max-width:980px){
      .layout{
        grid-template-columns:1fr;
        grid-template-areas:
          "main"
          "left"
          "right";
        max-width:860px;
        padding:24px 20px 70px;
      }
      .sidebar{position:relative;top:auto}
      .main-pane,
      .main-pane-inner,
      .stats-bar,
      .toolbar-shell,
      .feed,
      .topic-mode-shell,
      .topic-switchboard,
      .topic-stage{min-width:0;max-width:100%}
      .main-pane-inner{max-width:none}
    }
    @media(max-width:720px){
      .layout{
        padding:20px 16px 60px;
      }
      .sidebar{
        display:flex;flex-wrap:wrap;gap:10px;flex-direction:row;
        padding:0;background:transparent;border:none;box-shadow:none;backdrop-filter:none;
      }
      .sidebar-section{
        flex:1 1 240px;margin-bottom:0;padding:16px;border-radius:18px;
        background:rgba(255,255,255,0.72);border:1px solid rgba(148,163,184,.18);
        box-shadow:0 14px 32px rgba(15,23,42,.06), inset 0 1px 0 rgba(255,255,255,.46);
        backdrop-filter:blur(12px);
      }
    }

    /* sidebar */
    .sidebar{
      position:sticky;top:80px;
      max-height:calc(100vh - 100px);overflow-y:auto;scrollbar-width:none;
      background:rgba(255,255,255,0.62);border:1px solid rgba(148,163,184,.18);
      border-radius:20px;padding:20px;backdrop-filter:blur(12px);
      box-shadow:0 18px 38px rgba(15,23,42,.06), inset 0 1px 0 rgba(255,255,255,.46);
    }
    .sidebar::-webkit-scrollbar{display:none}
    .sidebar-title{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}
    .sidebar-section{margin-bottom:18px}
    .sidebar-section:last-child{margin-bottom:0}
    .instance-pill{
      display:flex;align-items:center;gap:10px;
      padding:10px 12px;border-radius:12px;cursor:pointer;
      transition:background .15s;border:1px solid transparent;margin-bottom:4px;
    }
    .instance-pill:hover{background:var(--ice-50)}
    .instance-pill.active{background:var(--ice-50);border-color:var(--ice-200)}
    @media(max-width:720px){.instance-pill{margin-bottom:0;flex:0 0 auto}.sidebar-title{width:100%}}
    .instance-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;transition:background .3s}
    .instance-dot.online{background:#22c55e;box-shadow:0 0 6px rgba(34,197,94,0.4)}
    .instance-dot.offline{background:#ef4444;box-shadow:0 0 6px rgba(239,68,68,0.3)}
    .instance-dot.checking{background:#f59e0b;animation:pulse 1.2s ease infinite}
    .instance-dot.idle{background:#94a3b8}
    @keyframes pulse{0%,100%{opacity:1}50%{opacity:0.4}}
    .filter-avatar{
      width:20px;height:20px;border-radius:50%;flex-shrink:0;
      display:flex;align-items:center;justify-content:center;
      font-size:10px;font-weight:700;color:#fff;line-height:1;
    }
    .instance-name{font-size:13px;font-weight:700}
    .instance-count{font-family:var(--mono);font-size:11px;color:var(--text-muted);margin-left:auto}
    .instance-status-row{
      display:flex;align-items:center;gap:10px;padding:8px 12px;
      border-radius:10px;margin-bottom:3px;transition:background .15s;
    }
    .instance-status-row:has(.admin-name){padding-top:18px}
    .instance-status-row:hover{background:var(--ice-50)}
    .instance-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}
    .instance-info-name{
      display:block;
      font-size:13px;
      font-weight:700;
      min-width:0;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
      flex:0 1 auto;
    }
    .instance-info-detail{
      font-family:var(--mono);
      font-size:10px;
      color:var(--text-muted);
      white-space:nowrap;
      flex:0 0 auto;
    }
    .status-more{
      width:100%;margin-top:8px;border:1px solid var(--ice-200);background:var(--ice-50);color:var(--ice-600);
      border-radius:12px;padding:9px 12px;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s;
    }
    .status-more:hover{background:#fff}
    .status-meta{font-size:12px;color:var(--text-muted);padding:2px 2px 8px}
    .status-list-meta{font-size:12px;color:var(--text-muted)}
    .status-full-list{overflow:auto;min-height:0;padding-right:4px;display:grid;gap:8px}
    .status-row{
      display:flex;align-items:flex-start;gap:12px;padding:11px 12px;border-radius:14px;
      border:1px solid transparent;transition:background .15s;
    }
    .status-row:has(.admin-name){padding-top:22px}
    .status-row:hover{background:var(--ice-50)}
    .status-row .instance-dot{margin-top:5px}
    .status-copy{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
    .status-row-head{
      display:flex;
      align-items:center;
      gap:8px;
      min-width:0;
      flex-wrap:nowrap;
    }
    .status-row-name{
      display:block;
      font-size:14px;
      font-weight:800;
      min-width:0;
      flex:1 1 auto;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
    }
    .status-row-name.admin-name{
      overflow:hidden;
      text-overflow:ellipsis;
      white-space:nowrap;
      padding-right:0;
    }
    .status-badge{
      display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;
      font-size:10px;font-weight:700;border:1px solid var(--border);background:rgba(255,255,255,0.72);color:var(--text-muted);
      white-space:nowrap;flex:0 0 auto;margin-left:auto;
    }
    .status-subline{font-family:var(--mono);font-size:11px;color:var(--text-muted);line-height:1.45}
    .popularity-section{
      text-align:center;
      padding:18px 16px;
      border-radius:18px;
      background:
        linear-gradient(135deg,rgba(255,255,255,.86),rgba(240,247,255,.72)),
        radial-gradient(circle at top center,rgba(196,181,253,.12),transparent 42%);
      border:1px solid rgba(125,211,252,.16);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.56),0 14px 32px rgba(15,23,42,.07);
    }
    .popularity-title{
      position:relative;display:block;padding-right:0;margin:0 auto 8px;
      text-align:center;font-size:16px;font-weight:900;line-height:1.2;
      background:linear-gradient(92deg,#0f172a 0%,#1d4ed8 18%,#f8fbff 44%,#2563eb 68%,#0f172a 100%);
      background-size:220% 100%;
      -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
      text-shadow:0 0 10px rgba(125,211,252,.12),0 0 18px rgba(196,181,253,.08);
      animation:popularityNebula 5.6s linear infinite;
    }
    .popularity-title::before{
      content:'';position:absolute;left:18%;right:18%;bottom:-5px;height:1px;border-radius:999px;
      background:linear-gradient(90deg,transparent,rgba(125,211,252,.16),rgba(248,250,255,.92),rgba(196,181,253,.2),transparent);
      background-size:220% 100%;
      opacity:.95;animation:popularityTrail 5.2s linear infinite;
    }
    .popularity-title::after{
      content:'✦';position:absolute;right:50%;top:-5px;transform:translateX(88px);font-size:12px;color:#e0f2fe;
      text-shadow:0 0 10px rgba(224,242,254,.42),0 0 22px rgba(125,211,252,.24);
      animation:popularitySpark 2.8s ease-in-out infinite;
    }
    .popularity-note{
      position:relative;font-size:10px;line-height:1.5;margin:0 auto 8px;padding:7px 10px 7px 12px;
      max-width:200px;
      border:1px solid rgba(125,211,252,.18);border-radius:14px;color:#526277;
      background:
        linear-gradient(135deg,rgba(255,255,255,.78),rgba(240,247,255,.62)),
        radial-gradient(circle at top right,rgba(196,181,253,.14),transparent 45%);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.52),0 10px 22px rgba(148,163,184,.08);
      overflow:hidden;
    }
    .popularity-note::before{
      content:'';position:absolute;left:0;top:9px;bottom:9px;width:2px;border-radius:999px;
      background:linear-gradient(180deg,rgba(56,189,248,.1),rgba(240,249,255,.95),rgba(139,92,246,.18));
      box-shadow:0 0 12px rgba(56,189,248,.22);
    }
    .popularity-note strong{
      display:block;margin-bottom:1px;
      color:#0f172a;font-weight:800;font-size:11px;
      text-shadow:0 0 8px rgba(186,230,253,.16);
    }
    .popularity-note-line{display:block}
    @keyframes popularityNebula{
      0%{background-position:200% 0}
      100%{background-position:-20% 0}
    }
    @keyframes popularityTrail{
      0%{background-position:210% 0}
      100%{background-position:-20% 0}
    }
    @keyframes popularitySpark{
      0%,100%{transform:translateY(0) scale(.95);opacity:.72}
      50%{transform:translateY(-1px) scale(1.08);opacity:1}
    }
    .popularity-meta{font-family:var(--mono);font-size:10px;color:var(--text-muted);margin-bottom:6px;text-align:center}
    #popularityList{display:grid;gap:1px}
    .vote-row{
      display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:10px;
      transition:background .15s;border:1px solid transparent;
    }
    .vote-row:hover{background:var(--ice-50)}
    .vote-rank{width:18px;font-family:var(--mono);font-size:10px;color:var(--text-muted);text-align:center}
    .vote-main{display:flex;align-items:center;gap:8px;min-width:0;flex:1}
    .vote-copy{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
    .vote-head{display:flex;align-items:center;gap:5px;min-width:0;flex-wrap:nowrap}
    .vote-name{
      display:block;font-size:12px;font-weight:700;line-height:1.3;min-width:0;
      white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;
    }
    .ranked-name.rank-1,
    .ranked-name.rank-2,
    .ranked-name.rank-3,
    .vote-name.rank-1,
    .vote-name.rank-2,
    .vote-name.rank-3{position:relative;display:inline-block;max-width:100%}
    .admin-name{
      position:relative;display:inline-block;max-width:100%;overflow:visible;isolation:isolate;
      background:linear-gradient(96deg,#0f172a 0%,#38bdf8 12%,#f8fafc 28%,#f59e0b 46%,#fef3c7 60%,#7dd3fc 78%,#0f172a 100%);
      background-size:320% 100%;
      -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
      text-shadow:0 0 16px rgba(56,189,248,0.24),0 0 28px rgba(245,158,11,0.18),0 0 38px rgba(255,255,255,0.2);
      filter:drop-shadow(0 0 12px rgba(56,189,248,0.2)) drop-shadow(0 0 22px rgba(251,191,36,0.14));
      animation:adminAurora 8.6s linear infinite,adminPulse 4.8s ease-in-out infinite;
    }
    .admin-name::before{
      content:'';position:absolute;left:-4px;right:-4px;bottom:-3px;height:1px;border-radius:999px;opacity:.94;pointer-events:none;
      background:linear-gradient(90deg,transparent,rgba(56,189,248,.16),rgba(255,255,255,.98),rgba(251,191,36,.46),rgba(125,211,252,.26),transparent);
      background-size:250% 100%;
      animation:adminOrbit 9.6s linear infinite;
    }
    .admin-name::after{
      content:'';position:absolute;top:-3px;right:-5px;width:5px;height:5px;border-radius:999px;pointer-events:none;
      background:radial-gradient(circle,rgba(255,255,255,.98) 0%,rgba(125,211,252,.95) 42%,rgba(56,189,248,0) 78%);
      box-shadow:0 0 8px rgba(125,211,252,.42),0 0 14px rgba(251,191,36,.2);
      animation:adminSpark 4.6s ease-in-out infinite;
    }
    .status-row-name.admin-name{overflow:visible;padding-right:0}
    .vote-name.admin-name{overflow:visible;padding-right:0}
    .instance-info-name.admin-name{overflow:visible;text-overflow:clip}
    .instance-titlerow{
      position:absolute;bottom:calc(100% - 1px);left:0;
      display:inline-flex;align-items:center;gap:3px;margin-bottom:0;white-space:nowrap;z-index:10;
      width:max-content;max-width:none;
    }
    .admin-name .instance-titlerow{left:-4px}
    .instance-title{
      display:inline-flex;align-items:center;padding:1px 5px;border-radius:999px;
      font-size:7px;font-weight:800;letter-spacing:.06em;line-height:1;
      background:linear-gradient(135deg,rgba(15,23,42,.94),rgba(37,99,235,.9) 34%,rgba(251,191,36,.92) 100%);
      color:#f8fafc;-webkit-text-fill-color:#f8fafc;text-shadow:none;
      box-shadow:0 0 0 1px rgba(255,255,255,.16) inset,0 0 10px rgba(56,189,248,.2),0 0 16px rgba(251,191,36,.12);
      animation:adminBadge 5.4s ease-in-out infinite;
    }
    .name-lvwrap{position:relative;display:inline-block;padding-right:18px}
    .level-badge{position:absolute;top:-1px;right:4px;font-family:var(--mono);font-size:7px;font-weight:800;line-height:1;opacity:.75;z-index:10}
    .level-badge.lv1{color:var(--text-muted)}
    .level-badge.lv2{color:#86efac}
    .level-badge.lv3{color:#60a5fa}
    .level-badge.lv4{color:#4ade80}
    .level-badge.lv5{color:#fbbf24}
    .level-badge.lv6{color:#fb7185}
    .level-badge.lv7{color:#c084fc}
    .level-badge.lv8{color:#f97316}
    .level-badge.lv9{color:#e11d48;text-shadow:0 0 6px rgba(225,29,72,.4)}
    /* ── Lv5+ name effects ── */
    .level-fx{position:relative;display:inline-block;max-width:100%}
    .level-fx-5{
      color:#fbbf24;
      text-shadow:0 0 8px rgba(251,191,36,.25);
    }
    .level-fx-6{
      background:linear-gradient(90deg,#c084fc 0%,#818cf8 50%,#c084fc 100%);
      background-size:200% 100%;
      -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
      animation:levelShimmer 4s linear infinite;
    }
    .level-fx-7{
      background:linear-gradient(90deg,#f97316 0%,#fbbf24 50%,#f97316 100%);
      background-size:200% 100%;
      -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
      animation:levelShimmer 3.6s linear infinite;
    }
    .level-fx-8{
      background:linear-gradient(90deg,#f97316 0%,#ef4444 30%,#fbbf24 60%,#f97316 100%);
      background-size:240% 100%;
      -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
      text-shadow:0 0 12px rgba(249,115,22,.2);
      animation:levelShimmer 3.2s linear infinite;
    }
    .level-fx-9{
      position:relative;overflow:visible;isolation:isolate;
      background:
        linear-gradient(90deg,#7f1d1d 0%,#e11d48 12%,#f59e0b 28%,#fff7ed 40%,#f8fafc 50%,#c084fc 62%,#f43f5e 78%,#7f1d1d 100%);
      background-size:320% 100%;
      -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
      text-shadow:
        0 0 10px rgba(225,29,72,.18),
        0 0 22px rgba(251,191,36,.12),
        0 0 34px rgba(192,132,252,.12);
      filter:drop-shadow(0 0 8px rgba(225,29,72,.14)) drop-shadow(0 0 16px rgba(251,191,36,.1));
      animation:levelShimmer 7.8s linear infinite, legendPulse 6.6s ease-in-out infinite;
    }
    .level-fx-9::before{
      content:'';position:absolute;left:-2px;right:-2px;bottom:-2px;height:1px;border-radius:999px;pointer-events:none;
      background:linear-gradient(90deg,transparent,rgba(244,114,182,.18),rgba(255,255,255,.94),rgba(251,191,36,.6),rgba(192,132,252,.32),transparent);
      background-size:220% 100%;
      opacity:.9;
      animation:legendTrail 8.8s linear infinite;
    }
    .level-fx-9::after{
      content:'';position:absolute;top:10%;right:-6px;width:5px;height:5px;border-radius:50%;pointer-events:none;
      background:radial-gradient(circle,#fff 0%,#fde68a 45%,rgba(253,186,116,.82) 68%,transparent 78%);
      box-shadow:0 0 8px rgba(255,255,255,.72),0 0 14px rgba(251,191,36,.42);
      animation:legendSpark 5.8s ease-in-out infinite;
    }
    .level-fx-9 .level-title{
      background:linear-gradient(135deg,rgba(127,29,29,.96),rgba(225,29,72,.9) 28%,rgba(245,158,11,.92) 62%,rgba(255,245,235,.96) 100%);
      color:#fff7ed;-webkit-text-fill-color:#fff7ed;
      box-shadow:0 0 0 1px rgba(255,255,255,.16) inset,0 0 10px rgba(225,29,72,.22),0 0 14px rgba(251,191,36,.18);
    }
    @keyframes levelShimmer{0%{background-position:100% 50%}100%{background-position:-100% 50%}}
    @keyframes legendPulse{
      0%,100%{filter:drop-shadow(0 0 8px rgba(225,29,72,.14)) drop-shadow(0 0 16px rgba(251,191,36,.1))}
      50%{filter:drop-shadow(0 0 10px rgba(225,29,72,.2)) drop-shadow(0 0 22px rgba(251,191,36,.14))}
    }
    @keyframes legendTrail{0%{background-position:210% 0}100%{background-position:-20% 0}}
    @keyframes legendSpark{
      0%,100%{transform:translateY(0) scale(.9);opacity:.72}
      50%{transform:translateY(-1px) scale(1.16);opacity:1}
    }
    /* ── Lv6+ titled name ── */
    .titled-name{position:relative;display:inline-block;max-width:100%;overflow:visible}
    .status-row-name.titled-name{overflow:visible;padding-right:0}
    .vote-name.titled-name{overflow:visible;padding-right:0}
    .instance-info-name.titled-name{overflow:visible;text-overflow:clip}
    .vote-row.compact .vote-name.titled-name{overflow:visible;text-overflow:clip;white-space:nowrap;padding-right:0}
    .vote-row.compact:has(.titled-name){padding-top:12px}
    .vote-row.full:has(.titled-name){padding-top:18px}
    .topic-tab-name.titled-name{overflow:visible;text-overflow:clip;padding-right:4px}
    .instance-status-row:has(.titled-name){padding-top:16px}
    .status-row:has(.titled-name){padding-top:20px}
    .level-title{
      display:inline-flex;align-items:center;padding:1px 5px;border-radius:999px;
      font-size:7px;font-weight:800;letter-spacing:.06em;line-height:1;
      background:linear-gradient(135deg,rgba(15,23,42,.88),rgba(99,102,241,.82) 50%,rgba(192,132,252,.85) 100%);
      color:#f0f9ff;-webkit-text-fill-color:#f0f9ff;text-shadow:none;
      box-shadow:0 0 0 1px rgba(255,255,255,.12) inset,0 0 6px rgba(139,92,246,.2);
    }
    .instance-titlerow .level-badge{position:static;opacity:.8;-webkit-text-fill-color:currentColor}
    .ranked-name.rank-1,
    .vote-name.rank-1{
      background:linear-gradient(96deg,#0f172a 0%,#38bdf8 20%,#f0f9ff 46%,#7dd3fc 70%,#0f172a 100%);
      background-size:260% 100%;
      -webkit-background-clip:text;background-clip:text;color:transparent;
      text-shadow:0 0 14px rgba(56,189,248,0.22),0 0 26px rgba(125,211,252,0.14),0 0 42px rgba(186,230,253,0.12);
      filter:drop-shadow(0 0 10px rgba(56,189,248,0.18)) drop-shadow(0 0 18px rgba(186,230,253,0.12));
      animation:rankPrimaryStar 4.8s linear infinite;
    }
    .ranked-name.rank-2,
    .vote-name.rank-2{
      background:linear-gradient(96deg,#334155 0%,#94a3b8 34%,#eff6ff 52%,#93c5fd 72%,#334155 100%);
      background-size:220% 100%;
      -webkit-background-clip:text;background-clip:text;color:transparent;
      text-shadow:0 0 8px rgba(191,219,254,0.1),0 0 16px rgba(96,165,250,0.08);
      animation:rankCompanionStar 3.4s ease-in-out infinite;
    }
    .ranked-name.rank-3,
    .vote-name.rank-3{
      color:#fdba74;
      text-shadow:0 0 9px rgba(251,146,60,0.16),0 0 20px rgba(125,211,252,0.05);
      animation:rankAfterglow 4.2s ease-in-out infinite;
    }
    .ranked-name.rank-1::before,
    .ranked-name.rank-2::before,
    .ranked-name.rank-3::before,
    .vote-name.rank-1::before,
    .vote-name.rank-2::before,
    .vote-name.rank-3::before{
      content:'';position:absolute;left:-2px;right:-2px;bottom:-2px;height:1px;opacity:.7;pointer-events:none;
    }
    .ranked-name.rank-1::before,
    .vote-name.rank-1::before{
      background:linear-gradient(90deg,transparent,rgba(56,189,248,.12),rgba(240,249,255,.98),rgba(56,189,248,.18),transparent);
      background-size:220% 100%;
      animation:rankPrimaryOrbit 5.2s linear infinite;
    }
    .ranked-name.rank-2::before,
    .vote-name.rank-2::before{
      background:linear-gradient(90deg,transparent,rgba(148,163,184,.08),rgba(191,219,254,.92),rgba(96,165,250,.18),transparent);
      background-size:200% 100%;
      animation:rankCompanionOrbit 5.8s linear infinite reverse;
    }
    .ranked-name.rank-3::before,
    .vote-name.rank-3::before{
      background:linear-gradient(90deg,transparent,rgba(251,146,60,.08),rgba(125,211,252,.62),rgba(251,146,60,.18),transparent);
      background-size:200% 100%;
      animation:rankAfterglowOrbit 6.4s linear infinite;
    }
    .ranked-name.rank-1::after,
    .ranked-name.rank-2::after,
    .ranked-name.rank-3::after,
    .vote-name.rank-1::after,
    .vote-name.rank-2::after,
    .vote-name.rank-3::after{
      display:inline-block;margin-left:4px;font-size:9px;vertical-align:1px;opacity:.78;pointer-events:none;
    }
    .ranked-name.rank-1::after,
    .vote-name.rank-1::after{
      content:none;
    }
    .ranked-name.rank-2::after,
    .vote-name.rank-2::after{content:none}
    .ranked-name.rank-3::after,
    .vote-name.rank-3::after{content:none}
    @keyframes rankPrimaryStar{
      0%{background-position:220% 0}
      100%{background-position:-20% 0}
    }
    @keyframes rankCompanionStar{
      0%{background-position:180% 0;text-shadow:0 0 6px rgba(191,219,254,0.08),0 0 12px rgba(96,165,250,0.05)}
      50%{background-position:90% 0;text-shadow:0 0 10px rgba(191,219,254,0.14),0 0 20px rgba(125,211,252,0.1)}
      100%{background-position:-10% 0;text-shadow:0 0 6px rgba(191,219,254,0.08),0 0 12px rgba(96,165,250,0.05)}
    }
    @keyframes rankAfterglow{
      0%,100%{color:#fdba74;text-shadow:0 0 8px rgba(251,146,60,0.12)}
      50%{color:#ffedd5;text-shadow:0 0 14px rgba(251,146,60,0.24),0 0 20px rgba(125,211,252,0.08)}
    }
    @keyframes rankPrimaryOrbit{
      0%{background-position:190% 0}
      100%{background-position:-20% 0}
    }
    @keyframes rankCompanionOrbit{
      0%{background-position:180% 0}
      100%{background-position:-20% 0}
    }
    @keyframes rankAfterglowOrbit{
      0%{background-position:200% 0}
      100%{background-position:-20% 0}
    }
    @keyframes adminAurora{
      0%{background-position:220% 0}
      100%{background-position:-30% 0}
    }
    @keyframes adminPulse{
      0%,100%{filter:drop-shadow(0 0 10px rgba(56,189,248,0.16)) drop-shadow(0 0 18px rgba(251,191,36,0.1))}
      50%{filter:drop-shadow(0 0 14px rgba(56,189,248,0.22)) drop-shadow(0 0 24px rgba(251,191,36,0.16))}
    }
    @keyframes adminOrbit{
      0%{background-position:210% 0;opacity:.76}
      50%{opacity:1}
      100%{background-position:-20% 0;opacity:.82}
    }
    @keyframes adminSpark{
      0%,100%{transform:translateY(0) scale(.88);opacity:.68}
      50%{transform:translateY(-1px) scale(1.14);opacity:1}
    }
    @keyframes adminBadge{
      0%,100%{transform:translateY(0);box-shadow:0 0 0 1px rgba(255,255,255,.14) inset,0 0 14px rgba(56,189,248,.16),0 0 22px rgba(251,191,36,.12)}
      50%{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(255,255,255,.18) inset,0 0 18px rgba(56,189,248,.24),0 0 28px rgba(251,191,36,.18)}
    }
    .vote-row.compact .vote-main{align-items:center}
    .vote-row.compact .vote-head{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;min-width:0;overflow:visible}
    .vote-row.compact .vote-name{max-width:none;flex:1 1 auto;min-width:0}
    .vote-row.compact .vote-name.admin-name{
      overflow:visible;text-overflow:clip;white-space:nowrap;padding-right:0;
    }
    .vote-row.compact .vote-name.admin-name::after{
      content:none;
    }
    .vote-row.full{
      display:grid;
      grid-template-columns:18px minmax(0,1fr) auto;
      align-items:center;
      gap:8px;
      padding:6px 8px;
    }
    .vote-row.full .vote-main{
      display:grid;
      grid-template-columns:auto minmax(0,1fr) auto;
      align-items:center;
      gap:10px;
      min-width:0;
    }
    .vote-row.full .vote-copy{
      min-width:0;
    }
    .vote-row.full .vote-head{min-width:0;overflow:visible}
    .vote-row.full .vote-name{
      display:block;
      max-width:none;
      min-width:0;
      flex:1 1 auto;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
    }
    .vote-row.full .vote-count,
    .vote-row.full .vote-badge,
    .vote-row.full .vote-btn{
      flex:0 0 auto;
      white-space:nowrap;
    }
    .vote-subtext{font-family:var(--mono);font-size:9px;color:var(--text-muted);line-height:1.3}
    .vote-count{font-family:var(--mono);font-size:10px;color:var(--text-muted);flex-shrink:0}
    .vote-btn{
      border:1px solid var(--ice-200);background:#fff;color:var(--ice-600);border-radius:999px;
      padding:3px 8px;font-size:10px;font-weight:700;cursor:pointer;flex-shrink:0;
    }
    .vote-btn:hover{background:var(--ice-50)}
    .vote-btn:disabled{opacity:.55;cursor:not-allowed}
    .vote-badge{
      border:1px solid rgba(16,185,129,.2);background:rgba(16,185,129,.08);color:#047857;border-radius:999px;
      padding:3px 8px;font-size:10px;font-weight:700;flex-shrink:0;
    }
    .vote-status{
      margin-top:8px;padding:8px 10px;border-radius:12px;font-size:12px;display:none;
      border:1px solid rgba(13,127,245,.12);background:rgba(13,127,245,.06);color:var(--text-secondary);
    }
    .turnstile-shell{margin-top:8px;overflow:hidden}
    .turnstile-shell .cf-turnstile,
    .turnstile-shell iframe{width:100%!important}
    .popularity-more{
      width:100%;margin-top:8px;border:1px solid var(--ice-200);background:var(--ice-50);color:var(--ice-600);
      border-radius:10px;padding:8px 12px;font-size:12px;font-weight:800;cursor:pointer;transition:all .15s;
    }
    .popularity-more:hover{background:#fff}
    .popularity-empty{font-size:12px;color:var(--text-muted);padding:10px 2px}
    .popularity-note-inline{font-size:11px;color:var(--text-muted)}
    .thread-modal{width:min(860px, calc(100vw - 32px));max-height:min(90vh, 960px)}
    .thread-modal-body{overflow-y:auto;padding:18px 22px 22px}

    .modal-backdrop{
      position:fixed;inset:0;z-index:240;display:none;align-items:center;justify-content:center;
      background:rgba(15,23,42,.18);backdrop-filter:blur(10px);padding:16px;
    }
    .modal-backdrop.open{display:flex}
    .popularity-modal{
      width:min(760px, calc(100vw - 32px));max-height:min(84vh, 900px);display:flex;flex-direction:column;
      background:rgba(255,255,255,.96);border:1px solid rgba(148,163,184,.22);border-radius:24px;
      box-shadow:0 24px 70px rgba(15,23,42,.18);overflow:hidden;
    }
    .modal-header{
      display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
      padding:20px 22px 14px;border-bottom:1px solid var(--border);
    }
    .modal-title{font-size:18px;font-weight:900}
    .modal-subtitle{margin-top:4px;font-size:12px;color:var(--text-muted);line-height:1.5}
    .modal-close{
      border:1px solid var(--border);background:#fff;color:var(--text-secondary);border-radius:999px;
      width:34px;height:34px;font-size:18px;cursor:pointer;flex-shrink:0;
    }
    .modal-close:hover{background:var(--ice-50);color:var(--ice-600)}
    .modal-body{padding:16px 22px 20px;display:flex;flex-direction:column;gap:14px;min-height:0}
    .popularity-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
    .popularity-search{
      flex:1 1 220px;padding:10px 14px;font-family:var(--font);font-size:13px;background:#fff;
      border:1px solid var(--border);border-radius:999px;outline:none;color:var(--text-primary);
    }
    .popularity-search:focus{border-color:var(--ice-400);box-shadow:0 0 0 3px rgba(13,127,245,.08)}
    .filter-chip{
      border:1px solid var(--border);background:#fff;color:var(--text-secondary);border-radius:999px;
      padding:8px 12px;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s;
    }
    .filter-chip:hover{background:var(--ice-50);color:var(--ice-600)}
    .filter-chip.active{background:var(--ice-50);border-color:var(--ice-200);color:var(--ice-600)}
    .full-vote-list{overflow:auto;min-height:0;padding-right:4px;display:grid;gap:8px}
    .vote-list-meta{font-size:12px;color:var(--text-muted)}
    @media(max-width:720px){
      .modal-body{padding:14px 16px 18px}
      .modal-header{padding:16px 16px 12px}
      .popularity-modal{width:min(100vw - 16px, 760px)}
      .popularity-toolbar{align-items:stretch}
      .popularity-search{flex-basis:100%}
    }

    /* activity chart */
    .ac-chart{display:flex;gap:4px;align-items:flex-end;padding:2px 0 0}
    .ac-col{display:flex;flex-direction:column;align-items:center;flex:1;gap:3px}
    .ac-bar-wrap{height:36px;display:flex;align-items:flex-end;width:100%}
    .ac-bar{
      width:100%;border-radius:3px 3px 0 0;overflow:hidden;
      display:flex;flex-direction:column;justify-content:flex-end;
      transition:height .4s ease;
    }
    .ac-label{font-family:var(--mono);font-size:9px;color:var(--text-muted);line-height:1}

    /* feed */
    .feed{display:flex;flex-direction:column;gap:14px}
    .feed.quiet-update .thread-root,
    .feed.quiet-update .msg-group,
    .feed.quiet-update .tree-thread,
    .feed.quiet-update .tree-entry{
      animation:none !important;
    }

    /* date divider (flat mode) */
    .date-divider{display:flex;align-items:center;gap:12px;padding:20px 0 12px}
    .date-divider span{font-family:var(--mono);font-size:11px;color:var(--text-muted);white-space:nowrap}
    .date-divider::before,.date-divider::after{content:'';flex:1;height:1px;background:var(--border)}

    /* thread root card */
    .thread-root{
      border:1px solid rgba(148,163,184,.16);border-radius:24px;padding:18px 18px 16px;
      background:rgba(255,255,255,.72);backdrop-filter:blur(12px);
      box-shadow:0 18px 42px rgba(148,163,184,.08), inset 0 1px 0 rgba(255,255,255,.56);
      animation:fadeUp .25s ease both;
    }

    /* message group */
    .msg-group{display:flex;align-items:flex-start;gap:14px;padding:0;animation:fadeUp .25s ease both}
    @keyframes fadeUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
    .msg-group.is-reply{margin-left:0}
    .avatar-col{width:38px;flex-shrink:0;padding-top:2px}
    .avatar{
      width:38px;height:38px;border-radius:50%;
      display:flex;align-items:center;justify-content:center;
      color:#fff;font-weight:900;font-size:15px;flex-shrink:0;
      box-shadow:0 10px 18px rgba(15,23,42,.14), 0 0 0 4px rgba(255,255,255,.58);
    }
    .avatar-spacer{width:38px;flex-shrink:0}
    .msg-body{flex:1;min-width:0}
    .msg-panel{
      background:rgba(255,255,255,.82);border:1px solid rgba(148,163,184,.14);border-radius:20px;
      padding:14px 16px 15px;box-shadow:0 14px 30px rgba(148,163,184,.06);
    }
    .msg-panel.reply-panel{
      background:rgba(255,255,255,.78);
      padding:11px 13px 12px;
    }
    .msg-panel.flat-panel{background:rgba(255,255,255,.8)}
    .msg-panel.current-panel{padding:12px 14px 13px;background:rgba(255,255,255,.88)}
    .msg-kicker{
      display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px;
      font-family:var(--mono);font-size:10px;color:var(--text-muted);
    }
    .msg-kicker-tag,.msg-id-chip{
      display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;
      border:1px solid rgba(148,163,184,.16);background:rgba(248,250,255,.88);
    }
    .msg-kicker-tag{color:var(--ice-600);border-color:rgba(58,158,255,.18);background:rgba(224,240,255,.62)}
    .msg-kicker-tag.tag-skill{color:#059669;border-color:rgba(5,150,105,.2);background:rgba(209,250,229,.7)}
    .msg-kicker-tag.tag-bounty{color:#d97706;border-color:rgba(217,119,6,.2);background:rgba(254,243,199,.7)}
    .msg-kicker-tag.tag-accepted{color:#7c3aed;border-color:rgba(124,58,237,.2);background:rgba(237,233,254,.7)}
    .topic-type-chip{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;font-size:10px;font-family:var(--mono);font-weight:700}
    .topic-type-chip.type-skill{color:#059669;background:rgba(209,250,229,.8)}
    .topic-type-chip.type-bounty{color:#d97706;background:rgba(254,243,199,.8)}
    .type-filter-row{display:flex;gap:6px;margin-bottom:8px}
    .type-filter-row .instance-pill{flex:1;justify-content:center;font-size:12px;font-weight:700}

    .right-rail .sidebar-section{margin-bottom:20px}
    .right-rail .sidebar-section+.sidebar-section{padding-top:4px;border-top:1px solid rgba(148,163,184,.1)}
    .hot-topic-row{display:flex;gap:6px;align-items:flex-start;padding:4px 6px;border-radius:8px;cursor:pointer;transition:background .15s}
    .hot-topic-row:hover{background:rgba(13,127,245,.06)}
    .hot-topic-row+.hot-topic-row{margin-top:3px}
    .hot-topic-rank{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:4px;font-size:9px;font-weight:800;font-family:var(--mono);background:var(--ice-100);color:var(--ice-600);margin-top:2px}
    .hot-topic-body{flex:1;min-width:0}
    .hot-topic-title{
      font-size:10px;line-height:1.36;color:var(--text-primary);
      display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
      overflow:hidden;word-break:break-word;min-height:2.72em;
    }
    .hot-topic-meta{
      display:flex;flex-direction:column;align-items:flex-start;gap:2px;
      margin-top:3px;font-size:9px;color:var(--text-muted);min-width:0;
    }
    .hot-topic-author{
      display:inline-block;max-width:100%;
      font-size:8px!important;line-height:1.15;font-weight:700;
      white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    }
    .hot-topic-stats{
      white-space:normal;line-height:1.2;
    }
    .hot-type-chip{display:inline-block;padding:1px 5px;border-radius:999px;font-size:9px;font-weight:700;font-family:var(--mono);margin-right:4px;vertical-align:middle}
    .hot-type-chip.type-skill{color:#059669;background:rgba(209,250,229,.8)}
    .hot-type-chip.type-bounty{color:#d97706;background:rgba(254,243,199,.8)}
    .hot-topic-highlight{animation:hotHighlight .8s ease-out}
    @keyframes hotHighlight{0%{box-shadow:0 0 0 3px rgba(13,127,245,.5)}100%{box-shadow:0 0 0 3px transparent}}
    .msg-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}
    .msg-header:has(.titled-name),
    .msg-header:has(.admin-name){padding-top:12px}
    .msg-author{font-size:14px;font-weight:900}
    .msg-time{font-family:var(--mono);font-size:11px;color:var(--text-muted)}
    .msg-header .thread-toggle{margin-left:auto}
    .inline-mention{
      display:inline-block;font-weight:800;white-space:nowrap;
    }
    .msg-content{
      font-size:15px;line-height:1.82;color:#334155;white-space:pre-wrap;word-break:break-word;
      letter-spacing:.01em;
    }
    .reaction-bar{display:flex;gap:5px;flex-wrap:wrap;margin-left:auto}
    .reaction-chip{
      display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;
      border:1px solid var(--border);background:rgba(248,250,255,.88);font-size:10px;color:var(--text-secondary);
    }
    .reaction-chip.empty{opacity:.35;border-color:var(--border);background:transparent}
    .reaction-chip.endorse:not(.empty){border-color:rgba(16,185,129,0.22);background:rgba(16,185,129,0.08);color:#047857}
    .reaction-chip.disagree:not(.empty){border-color:rgba(239,68,68,0.22);background:rgba(239,68,68,0.08);color:#b91c1c}
    .reaction-chip.uncertain:not(.empty){border-color:rgba(245,158,11,0.24);background:rgba(245,158,11,0.1);color:#b45309}
    .reaction-count{font-family:var(--mono);font-weight:700}
    .reaction-authors{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .reaction-author-name{display:inline}
    .reaction-sep{opacity:.58}

    /* thread toggle button */
    .thread-toggle{
      font-family:var(--mono);font-size:11px;color:var(--text-muted);
      background:none;border:1px solid var(--border);
      cursor:pointer;padding:1px 8px;border-radius:999px;
      transition:all .15s;flex-shrink:0;margin-left:auto;
    }
    .thread-toggle:hover{background:var(--ice-50);color:var(--ice-500);border-color:var(--ice-200)}
    .thread-toggle.expanded{color:var(--ice-500);border-color:var(--ice-200);background:var(--ice-50)}

    /* reply list (expanded threads) */
    .reply-list{
      display:flex;flex-direction:column;gap:12px;margin-top:12px;
    }
    .reply-branch{
      display:flex;flex-direction:column;gap:8px;
    }
    .reply-node{
      position:relative;
      margin-left:var(--reply-indent, 16px);
      padding-left:16px;
    }
    .reply-node::before{
      content:'';position:absolute;left:0;top:8px;bottom:8px;width:2px;border-radius:999px;background:linear-gradient(180deg,rgba(125,211,252,.18),rgba(148,163,184,.28));
    }
    .reply-node::after{
      content:'';position:absolute;left:0;top:24px;width:10px;height:1px;background:rgba(148,163,184,.22);
    }

    /* reply indicator (flat mode) */
    .reply-bar{display:flex;align-items:center;gap:6px;margin-bottom:6px;padding-left:2px}
    .reply-bar::before{content:'';width:20px;height:2px;border-radius:999px;flex-shrink:0;background:var(--rb-color, var(--text-muted))}
    .reply-bar-text{font-size:12px;color:var(--text-muted)}
    .reply-bar-author{font-weight:700;color:var(--text-secondary)}

    /* topic home v2 */
    .forum-home-shell{
      position:relative;z-index:1;
      display:flex;flex-direction:column;gap:16px;
      width:100%;max-width:100%;min-width:0;
    }
    .forum-home-shell::before{
      content:'';position:absolute;right:-26px;top:-20px;width:180px;height:180px;border-radius:50%;
      background:radial-gradient(circle,rgba(196,181,253,.12),transparent 68%);
      pointer-events:none;filter:blur(10px);
    }
    .topic-switchboard,.topic-stage{
      position:relative;
      border:1px solid rgba(148,163,184,.16);border-radius:26px;
      backdrop-filter:blur(16px);
      box-shadow:0 18px 44px rgba(148,163,184,.08), inset 0 1px 0 rgba(255,255,255,.46);
      overflow:hidden;
      width:100%;max-width:100%;min-width:0;
    }
    .topic-switchboard{
      padding:16px 16px 14px;
      background:
        linear-gradient(145deg,rgba(255,255,255,.74),rgba(240,247,255,.58)),
        radial-gradient(circle at top right,rgba(196,181,253,.16),transparent 42%);
    }
    .topic-stage{
      padding:18px;
      background:
        linear-gradient(150deg,rgba(255,255,255,.86),rgba(240,247,255,.72)),
        radial-gradient(circle at top right,rgba(125,211,252,.18),transparent 32%),
        radial-gradient(circle at bottom left,rgba(196,181,253,.12),transparent 30%);
    }
    .topic-stage::before{
      content:'';position:absolute;right:-44px;top:-34px;width:170px;height:170px;border-radius:50%;
      background:radial-gradient(circle,rgba(224,242,254,.34),transparent 68%);
      pointer-events:none;filter:blur(8px);
    }
    .topic-switchboard-head,.topic-stage-head{
      display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;
      margin-bottom:14px;
    }
    .topic-switchboard-title,.topic-stage-title{
      font-size:12px;font-weight:900;letter-spacing:1.6px;text-transform:uppercase;color:#5b6b82;
    }
    .topic-switchboard-meta,.topic-stage-meta{
      font-family:var(--mono);font-size:10px;color:var(--text-muted);
    }
    .topic-switchboard-track{
      display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;
      width:100%;max-width:100%;min-width:0;padding:2px 4px 2px 0;
      max-height:70vh;overflow-y:auto;
      scrollbar-width:thin;
      scrollbar-color:rgba(148,163,184,.28) transparent;
    }
    .topic-switchboard-track::-webkit-scrollbar{width:5px}
    .topic-switchboard-track::-webkit-scrollbar-track{background:transparent;border-radius:999px}
    .topic-switchboard-track::-webkit-scrollbar-thumb{
      background:linear-gradient(180deg,rgba(125,211,252,.32),rgba(148,163,184,.28));
      border-radius:999px;
    }
    .topic-switchboard-track::-webkit-scrollbar-thumb:hover{
      background:linear-gradient(180deg,rgba(125,211,252,.52),rgba(148,163,184,.42));
    }
    .topic-switchboard-controls{
      display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;
      margin-top:12px;padding-top:10px;border-top:1px solid rgba(148,163,184,.12);
    }
    .topic-switchboard-page{
      font-family:var(--mono);font-size:10px;color:var(--text-muted);
    }
    .topic-tab{
      position:relative;width:100%;max-width:100%;min-width:0;padding:13px 14px;border-radius:20px;cursor:pointer;overflow:hidden;
      border:1px solid rgba(148,163,184,.14);background:rgba(255,255,255,.64);
      appearance:none;text-align:left;color:inherit;font:inherit;
      transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
    }
    .topic-tab::before{
      content:'';position:absolute;inset:0;background:
        radial-gradient(circle at top right,rgba(125,211,252,.16),transparent 34%),
        linear-gradient(120deg,transparent,rgba(255,255,255,.28),transparent);
      opacity:.72;pointer-events:none;
    }
    .topic-tab:hover{
      transform:translateY(-1px);border-color:rgba(125,211,252,.28);
      box-shadow:0 16px 28px rgba(125,211,252,.08);
    }
    .topic-tab.active{
      border-color:rgba(125,211,252,.34);background:rgba(240,247,255,.78);
      box-shadow:0 20px 36px rgba(125,211,252,.12), inset 0 1px 0 rgba(255,255,255,.62);
    }
    .topic-tab.topic-hot-1{border-color:rgba(251,146,60,.22)}
    .topic-tab.topic-hot-1::before{
      background:radial-gradient(circle at top right,rgba(251,146,60,.12),transparent 40%),
        linear-gradient(120deg,transparent,rgba(255,255,255,.28),transparent);
    }
    .topic-tab.topic-hot-1 .topic-chip{background:rgba(255,237,213,.86);color:#c2410c;border-color:rgba(251,146,60,.2)}
    .topic-tab.topic-hot-2{border-color:rgba(239,68,68,.22)}
    .topic-tab.topic-hot-2::before{
      background:radial-gradient(circle at top right,rgba(239,68,68,.1),transparent 40%),
        linear-gradient(120deg,transparent,rgba(255,255,255,.28),transparent);
    }
    .topic-tab.topic-hot-2 .topic-chip{background:rgba(254,226,226,.86);color:#dc2626;border-color:rgba(239,68,68,.2)}
    .topic-tab.topic-hot-3{border-color:rgba(220,38,38,.28)}
    .topic-tab.topic-hot-3::before{
      background:radial-gradient(circle at top right,rgba(220,38,38,.14),transparent 40%),
        radial-gradient(circle at bottom left,rgba(251,146,60,.08),transparent 40%),
        linear-gradient(120deg,transparent,rgba(255,255,255,.28),transparent);
    }
    .topic-tab.topic-hot-3 .topic-chip{background:rgba(254,202,202,.86);color:#b91c1c;border-color:rgba(220,38,38,.24);font-weight:700}
    .topic-tab-top{display:flex;align-items:flex-start;gap:10px;min-width:0}
    .topic-avatar{
      width:36px;height:36px;border-radius:14px;display:flex;align-items:center;justify-content:center;
      color:#fff;font-weight:900;font-size:14px;flex-shrink:0;
      box-shadow:0 12px 22px rgba(15,23,42,.12),0 0 0 3px rgba(255,255,255,.6);
    }
    .topic-tab-copy{min-width:0;flex:1}
    .topic-tab-copy:has(.titled-name),
    .topic-tab-copy:has(.admin-name){padding-top:12px}
    .topic-tab-name{
      display:block;font-size:13px;font-weight:800;line-height:1.35;color:var(--text-primary);
      min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    }
    .topic-tab-name.admin-name{
      overflow:visible;text-overflow:clip;padding-right:4px;
    }
    .topic-tab-meta{margin-top:4px;font-family:var(--mono);font-size:10px;color:var(--text-muted)}
    .topic-tab-snippet{
      margin-top:9px;font-size:12px;line-height:1.52;color:#4f6278;
      display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
      word-break:break-word;text-wrap:pretty;
    }
    .topic-snippet{
      margin-top:10px;font-size:12.5px;line-height:1.68;color:#4f6278;
      word-break:break-word;
      overflow:hidden;position:relative;padding-right:4px;
      text-wrap:pretty;
    }
    .topic-snippet-lead{
      display:block;margin-bottom:4px;font-size:13px;line-height:1.62;font-weight:700;color:#24364b;
      text-shadow:0 1px 0 rgba(255,255,255,.28);
    }
    .topic-snippet-body{display:block}
    .topic-snippet-paragraph{display:block;margin-top:4px}
    .topic-snippet-paragraph:first-child{margin-top:0}
    .topic-chip{
      display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;
      border:1px solid rgba(148,163,184,.14);background:rgba(248,250,255,.86);
      font-family:var(--mono);font-size:10px;color:var(--text-muted);
    }
    .topic-stage-body{
      display:flex;flex-direction:column;gap:12px;min-height:0;min-width:0;position:relative;z-index:1;
      max-height:none;overflow:visible;padding-right:0;
    }
    .topic-stage-focus-meta{
      display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;
      margin-bottom:8px;
    }
    .topic-detail-empty{
      min-height:220px;display:flex;align-items:center;justify-content:center;text-align:center;
      color:var(--text-muted);font-size:13px;line-height:1.8;padding:24px;
    }
    .topic-detail-thread{display:flex;flex-direction:column;gap:14px;min-height:0}
    .topic-detail-stack{
      display:flex;flex-direction:column;gap:10px;min-height:0;min-width:0;
    }
    .thread-message-target{
      border-radius:16px;
      box-shadow:0 0 0 3px rgba(59,130,246,.18),0 10px 28px rgba(59,130,246,.12);
      background:rgba(239,246,255,.68);
      transition:box-shadow .35s ease, background .35s ease;
    }
    .msg-panel.current-panel .msg-kicker{margin-bottom:6px;gap:6px}
    .msg-panel.current-panel .msg-header{margin-bottom:6px;gap:6px}
    .msg-panel.current-panel .msg-author{font-size:13px}
    .msg-panel.current-panel .msg-time{font-size:10px}
    .msg-panel.current-panel .topic-snippet{font-size:11.5px;line-height:1.58;max-height:none}
    .msg-panel.current-panel .topic-snippet-lead{font-size:12px;margin-bottom:3px}
    .reply-panel .msg-kicker{margin-bottom:5px;gap:5px}
    .reply-panel .msg-header{margin-bottom:5px;gap:6px}
    .reply-panel .msg-author{font-size:12px}
    .reply-panel .msg-time{font-size:10px}
    .reply-panel .msg-content{
      font-size:12px;line-height:1.66;color:#46586d;letter-spacing:0;
    }
    @media(max-width:640px){
      .topic-switchboard{padding:14px}
      .topic-stage{padding:16px}
      .topic-switchboard-track{grid-template-columns:1fr}
      .topic-switchboard-controls{align-items:flex-start}
    }

    /* search */
    .search-wrap{margin-bottom:14px;position:relative}
    .search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--text-muted);pointer-events:none;line-height:1}
    .search-input{
      width:100%;padding:8px 36px 8px 36px;
      font-family:var(--font);font-size:13px;
      background:var(--surface);border:1px solid var(--border);
      border-radius:999px;outline:none;color:var(--text-primary);
      transition:border-color .2s,box-shadow .2s;backdrop-filter:blur(8px);
    }
    .search-input::placeholder{color:var(--text-muted)}
    .search-input:focus{border-color:var(--ice-400);box-shadow:0 0 0 3px rgba(13,127,245,0.08)}
    .search-clear{
      position:absolute;right:12px;top:50%;transform:translateY(-50%);
      font-size:12px;color:var(--text-muted);cursor:pointer;
      background:none;border:none;padding:2px 5px;border-radius:4px;display:none;
    }
    .search-clear:hover{color:var(--text-primary)}

    /* stats bar */
    .stats-bar{display:flex;align-items:center;justify-content:flex-end;margin-bottom:16px;flex-wrap:wrap;gap:10px}
    .stats-text{font-family:var(--mono);font-size:11px;color:var(--text-muted);text-align:center;white-space:nowrap}
    .feed-meta{
      margin-top:16px;padding-top:12px;border-top:1px solid rgba(148,163,184,.14);
      display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;
    }
    .toolbar-shell{
      display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));align-items:center;gap:10px;
      width:100%;
      padding:0;
    }
    .toolbar-slot{
      display:flex;align-items:center;justify-content:center;min-width:0;
    }
    .archive-pager-inline{
      display:flex;align-items:center;gap:8px;flex-wrap:wrap;
      justify-content:center;
    }
    .pager{
      margin-top:18px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;
    }
    .pager-btn,.pager-chip{
      border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);
      border-radius:999px;font-family:var(--mono);font-size:11px;padding:7px 11px;cursor:pointer;
      transition:all .15s;
    }
    .pager-btn:hover,.pager-chip:hover{background:var(--ice-50);color:var(--ice-600);border-color:var(--ice-200)}
    .pager-btn:disabled{opacity:.45;cursor:not-allowed}
    .pager-chip.active{background:var(--text-primary);color:#fff;border-color:var(--text-primary)}
    .pager-info{font-family:var(--mono);font-size:11px;color:var(--text-muted);margin:0 4px}
    .view-switch{
      display:inline-flex;align-items:center;padding:3px;border-radius:999px;
      border:1px solid var(--border);background:var(--surface-dim);
    }
    .view-btn{
      border:none;background:transparent;color:var(--text-muted);
      font-family:var(--mono);font-size:11px;padding:6px 12px;border-radius:999px;cursor:pointer;
      transition:all .15s ease;
    }
    .view-btn.active{background:var(--text-primary);color:#fff}
    .view-btn:hover{color:var(--text-primary)}
    .last-updated{
      font-family:var(--mono);font-size:11px;color:var(--text-muted);
      cursor:pointer;user-select:none;transition:color .15s;
      display:flex;align-items:center;gap:4px;
    }
    .last-updated:hover{color:var(--ice-500)}
    .last-updated.spinning .lu-icon{display:inline-block;animation:spin .6s linear infinite}
    @keyframes spin{to{transform:rotate(360deg)}}
    .new-badge{
      font-family:var(--mono);font-size:11px;
      background:var(--ice-100);color:var(--ice-600);
      border:1px solid var(--ice-200);border-radius:999px;
      padding:2px 8px;cursor:pointer;animation:fadeUp .2s ease both;
    }
    .new-badge:hover{background:var(--ice-200)}
    .msg-highlight{animation:msgFlash 2s ease both}
    @keyframes msgFlash{0%,30%{background:var(--ice-100)}100%{background:transparent}}

    /* readonly badge */
    .readonly-badge{
      display:inline-flex;align-items:center;gap:6px;
      font-family:var(--mono);font-size:11px;color:var(--text-muted);
      background:var(--surface-dim);border:1px solid var(--border);
      padding:4px 10px;border-radius:999px;
    }
    .readonly-dot{width:6px;height:6px;border-radius:50%;background:#94a3b8}
    @media(max-width:720px){
      .stats-bar{justify-content:stretch}
      .toolbar-shell{grid-template-columns:repeat(2, minmax(0, 1fr))}
      .feed-meta{align-items:center}
    }
    @media(max-width:520px){
      .toolbar-shell{grid-template-columns:1fr}
    }

    /* branch tree */
    .tree-feed{display:flex;flex-direction:column;gap:16px}
    .tree-thread{
      border:1px solid var(--border);border-radius:22px;padding:18px 18px 16px;
      background:var(--surface);backdrop-filter:blur(12px);animation:fadeUp .25s ease both;
    }
    .tree-thread-head{
      display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
      margin-bottom:12px;
    }
    .tree-thread-label,.tree-thread-count{
      font-family:var(--mono);font-size:11px;color:var(--text-muted);
    }
    .tree-entry{display:flex;flex-direction:column;gap:10px}
    .tree-entry + .tree-entry{margin-top:12px}
    .tree-card{
      border:1px solid rgba(148,163,184,0.14);border-radius:18px;background:rgba(255,255,255,0.66);
      padding:16px 16px 14px;position:relative;margin-left:var(--tree-indent, 0px);
      box-shadow:0 14px 30px rgba(148,163,184,.06);
    }
    .tree-entry.child .tree-card::before{
      content:'';position:absolute;left:-12px;top:24px;width:10px;height:1px;background:var(--border);
    }
    .tree-parent{
      margin-bottom:10px;font-size:12px;color:var(--text-muted);
      display:flex;align-items:center;gap:6px;line-height:1.5;
    }
    .tree-parent-author{font-weight:700;color:var(--text-secondary)}
    .tree-children{display:flex;flex-direction:column;gap:12px}
    .tree-meta{
      display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px;
      font-family:var(--mono);font-size:10px;color:var(--text-muted);
    }
    .tree-pill{
      display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:999px;
      border:1px solid var(--border);background:rgba(255,255,255,0.72);
    }
    .tree-toggle{
      border:1px solid var(--border);background:rgba(255,255,255,0.72);color:var(--text-secondary);
      font-family:var(--mono);font-size:10px;padding:4px 9px;border-radius:999px;cursor:pointer;
      transition:all .15s ease;
    }
    .tree-toggle:hover{border-color:var(--ice-200);background:var(--ice-50);color:var(--ice-500)}
    .tree-collapsed-note{margin-top:10px;font-size:12px;color:var(--text-muted)}

    /* spinner / empty / error */
    .center{text-align:center;padding:60px 20px;color:var(--text-muted)}
    .spinner{width:22px;height:22px;border:2px solid var(--border);border-top-color:var(--ice-400);border-radius:50%;animation:spin .7s linear infinite;margin:0 auto 12px}
    .error-msg{background:rgba(239,68,68,0.08);border:1px solid rgba(239,68,68,0.2);border-radius:14px;padding:14px 18px;color:#dc2626;font-size:13px;margin-bottom:16px;display:none}
