/* Gastronova Day – Nagomi V3: panel topics as one five-step sequence. Loaded only by day-nagomi.html (V3).
   Static (no JS / reduced motion): every row fully visible, full gold rail. With JS: rail fills with scroll, one row is "now". */
.ng-page .np-media--panel img{object-position:30% 50%}
.ng-page .np-topics{display:grid;grid-template-columns:minmax(220px,4fr) minmax(0,8fr);gap:clamp(24px,4vw,64px);align-items:start;margin-top:8px}
.ng-page .np-topics-side{position:sticky;top:110px;display:grid;gap:16px}
.ng-page .np-topics-side .moderator{margin:0;border:1px solid rgba(255,216,41,.55);border-radius:16px;background:rgba(243,241,234,.04);padding:14px 16px}
.ng-page .np-topics-count{margin:8px 0 0;display:flex;align-items:baseline;gap:8px;font-variant-numeric:tabular-nums}
.ng-page .np-topics-count b{font-size:clamp(56px,6vw,88px);line-height:.9;letter-spacing:-.05em;font-weight:500;color:var(--ng-y)}
.ng-page .np-topics-count span{font-size:18px;color:#8f998e}
.ng-page .np-topics-now{margin:0;font-size:clamp(18px,1.5vw,22px);line-height:1.25;color:#fff;max-width:18ch;min-height:2.6em}
.ng-page .np-topics-time{margin:0;font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#aeb8ae}

.ng-page .np-topics-list{position:relative;list-style:none;margin:0;padding:0 0 0 34px;display:grid;gap:0}
.ng-page .np-topics-list::before,.ng-page .np-topics-list::after{content:"";position:absolute;left:10px;top:22px;bottom:22px;width:2px;border-radius:2px}
.ng-page .np-topics-list::before{background:rgba(243,241,234,.14)}
.ng-page .np-topics-list::after{background:var(--ng-y);transform-origin:top;transform:scaleY(var(--np-fill,1))}
.ng-page .np-topic{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr) minmax(150px,auto);gap:8px 20px;align-items:start;padding:22px 16px 22px 0;border-bottom:1px solid rgba(243,241,234,.12);outline:none}
.ng-page .np-topic:first-child{border-top:1px solid rgba(243,241,234,.12)}
.ng-page .np-topic::before{content:"";position:absolute;left:-29px;top:30px;width:12px;height:12px;border-radius:50%;background:#131716;border:2px solid rgba(243,241,234,.4);box-sizing:border-box}
.ng-page .np-num{font-size:15px;font-weight:800;letter-spacing:.04em;color:#9aa49a;font-variant-numeric:tabular-nums;padding-top:4px}
.ng-page .np-body h3{margin:0 0 6px;font-size:clamp(19px,1.6vw,24px);line-height:1.2;letter-spacing:-.02em;font-weight:600;color:#fff}
.ng-page .np-body p{margin:0;font-size:15px;line-height:1.55;color:#c6cdc5;max-width:60ch}
.ng-page .np-who{margin:0;display:grid;gap:8px;justify-items:end;text-align:right;padding-top:3px}
.ng-page .np-who-name{font-size:14px;font-weight:700;color:#fff}
.ng-page .np-who-org{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#aeb8ae}
.ng-page .np-who-org img{height:22px;width:auto;max-width:90px;padding:4px 8px;border-radius:8px;background:#f3f1ea;box-sizing:content-box}
.ng-page .np-topic:focus-visible{box-shadow:inset 0 0 0 2px var(--ng-y);border-radius:12px}

/* active topic (JS only): gold number, ring, subtle panel – text of other rows stays readable (no hiding) */
html.np-js .ng-page .np-topic{transition:background-color .35s ease}
html.np-js .ng-page .np-topic .np-body h3{transition:color .3s ease}
html.np-js .ng-page .np-topic:not(.is-now) .np-body h3{color:#dfe4dc}
.ng-page .np-topic.is-now{background:linear-gradient(90deg,rgba(255,216,41,.07),rgba(255,216,41,0) 70%)}
.ng-page .np-topic.is-now .np-num{color:var(--ng-y)}
.ng-page .np-topic.is-now::before,.ng-page .np-topic.is-past::before{background:var(--ng-y);border-color:var(--ng-y)}
.ng-page .np-topic.is-now::before{box-shadow:0 0 0 5px rgba(255,216,41,.18)}
/* staggered entrance – once, short, only when motion is allowed */
@media (prefers-reduced-motion:no-preference){
  html.np-js .ng-page .np-topics-list:not(.is-in) .np-topic{opacity:0;transform:translateY(18px)}
  html.np-js .ng-page .np-topics-list .np-topic{transition:opacity .55s cubic-bezier(.2,.7,.2,1),transform .55s cubic-bezier(.2,.7,.2,1),background-color .35s ease;transition-delay:calc(var(--i,0)*90ms),calc(var(--i,0)*90ms),0s}
  html.np-js .ng-page .np-topics-list::after{transition:transform .12s linear}
  html.np-js .ng-page .np-topics-now{transition:opacity .25s ease}
}

@media (max-width:900px){
  .ng-page .np-topics{grid-template-columns:1fr}
  .ng-page .np-topics-side{position:static}
  .ng-page .np-topics-count,.ng-page .np-topics-now{display:none}
  .ng-page .np-topic{grid-template-columns:40px minmax(0,1fr);padding:18px 4px 18px 0}
  .ng-page .np-who{grid-column:2;justify-items:start;text-align:left;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
}
