/* Ideas page */
.i-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:end;padding-top:96px;padding-bottom:40px}
.counter{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.count-n{font-size:clamp(96px,13vw,184px);line-height:0.85;letter-spacing:-0.04em;color:var(--text)}
.tl{position:relative;height:120px;margin-top:24px;border-bottom:1px solid var(--pencil)}
.tl-dot{position:absolute;width:9px;height:9px;margin-left:-4.5px;border-radius:50%;border:1px solid var(--pencil);background:var(--ground);animation:jbdrop 500ms var(--ease) both;transition:transform 160ms ease-out}
.tl-dot.half{background:var(--pencil)}
.tl-dot.on{background:var(--amber);border-color:var(--amber)}
.tl-dot.hot{transform:scale(1.8)}
@keyframes jbdrop{from{opacity:0;transform:translateY(-24px)}}
.tl-m{position:absolute;top:100%;margin-top:8px;color:var(--mute);font-size:10px;transform:translateX(-50%)}
.tl-m::before{content:'';position:absolute;left:50%;top:-14px;height:6px;width:1px;background:var(--pencil)}
.tl-now{position:absolute;bottom:0;top:0;width:1px;background:var(--amber)}
.tl-now span{position:absolute;top:-18px;left:6px;color:var(--amber);font-size:10px;white-space:nowrap}
.legend{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:40px}
.legend span{display:inline-flex;align-items:center;gap:8px}
.swd{width:10px;height:10px;border-radius:50%;border:1px solid var(--pencil);display:inline-block}
.swd.half{background:var(--pencil)}
.swd.on{background:var(--amber);border-color:var(--amber)}
.filters{display:flex;flex-wrap:wrap;gap:8px;padding:16px 0;margin-top:40px;position:sticky;top:0;z-index:6;background:var(--ground)}
.fchip{height:44px;padding:0 14px;cursor:pointer;color:var(--mute);border:1px solid var(--line);background:transparent;display:inline-flex;gap:10px;align-items:center;transition:color 160ms ease-out,border-color 160ms ease-out,background-color 160ms ease-out}
.fchip:hover{color:var(--text);border-color:var(--pencil)}
.fchip[aria-pressed="true"]{color:var(--btn-text);background:var(--btn);border-color:var(--btn)}
.fcount{opacity:0.7}
.dlist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.row{position:relative;border-bottom:1px solid var(--line);animation:jbrow 700ms var(--ease) both}
@keyframes jbrow{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
.row::before{content:'';position:absolute;inset:0;background:var(--ground-2);transform:scaleX(0);transform-origin:left;transition:transform 500ms var(--ease)}
.row:hover::before{transform:scaleX(1)}
.row-in{position:relative;width:100%;display:grid;grid-template-columns:56px minmax(0,1fr) minmax(0,1.25fr) 128px 24px;align-items:center;gap:24px;min-height:72px;padding:12px 16px;text-decoration:none;color:inherit}
.r-no{color:var(--mute);font-size:11px}
.r-dom{display:flex;align-items:center;gap:14px;min-width:0}
.r-name{font-family:'IBM Plex Mono',ui-monospace,monospace;font-weight:500;font-size:clamp(20px,2.1vw,30px);letter-spacing:-0.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:transform 400ms var(--ease)}
.row:hover .r-name{transform:translateX(10px)}
.r-icon{width:30px;height:30px;border-radius:8px;flex:none;display:block}
.dhead{min-height:40px;font-size:10px;padding-top:0;padding-bottom:8px}
.r-scale{display:flex;justify-content:space-between;font-size:10px}
.r-line{position:relative;display:block;height:24px;min-width:0}
.r-line::before{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:var(--line)}
.r-line::after{content:'';position:absolute;right:0;top:50%;width:1px;height:11px;margin-top:-5px;background:var(--pencil)}
.r-fill{position:absolute;right:0;top:50%;height:1px;margin-top:-0.5px;background:var(--pencil);opacity:0.6;animation:jbfill 900ms var(--ease) both}
@keyframes jbfill{from{left:100%}}
.r-dot{position:absolute;top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;border:1px solid var(--pencil);background:var(--ground);transition:transform 160ms ease-out;animation:jbslide 900ms var(--ease) both}
.r-dot.half{background:var(--pencil)}
.r-dot.on{background:var(--amber);border-color:var(--amber)}
.row:hover .r-dot{transform:scale(1.5)}
@keyframes jbslide{from{left:100%}}
.row .chip{justify-self:start}
.r-desc{grid-column:2 / -1;color:var(--mute);font-size:14px;margin-top:-6px;padding-bottom:4px}
.r-go{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:18px;line-height:1;color:var(--mute);text-align:center;transition:transform 400ms var(--ease),color 160ms ease-out}
.row:hover .r-go{color:var(--text);transform:translate(3px,-3px)}
.empty{padding:72px 0;text-align:center}
.empty[hidden]{display:none}
.datanote{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px 32px}
@media (max-width:900px){.i-head{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:56px}.row-in{grid-template-columns:24px minmax(0,auto) minmax(56px,1fr) 14px;gap:0 10px;grid-template-areas:"no name meta go" "d d d d";padding:10px 4px;min-height:52px;align-items:center}.r-no{grid-area:no}.r-dom{grid-area:name;min-width:0}.r-name{font-size:17px}.r-go{grid-area:go}.r-meta{grid-area:meta;display:flex;flex-wrap:nowrap;gap:8px;align-items:center;min-width:0}.r-desc{grid-area:d;margin-top:2px;font-size:13px}.r-line{flex:1 1 40px;min-width:32px}.row .chip{height:20px;padding:0 6px;font-size:10px}.dhead{display:none}}
@media (min-width:901px){.r-meta{display:contents}}
@media (max-width:700px){.filters{flex-wrap:nowrap;overflow-x:auto;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.fchip{flex:none}.tl{height:90px}.tl-m:nth-child(even){display:none}}
