.itin-header {
  max-width: 900px;
  margin: 0 auto;
  padding: 48px 20px 20px;
  text-align: center;
}
.itin-header h1 { font-size: clamp(28px, 5vw, 42px); margin: 10px 0 8px; }
.itin-header p { color: var(--dim); font-family: var(--font-mono); font-size: 13px; letter-spacing: 0.04em; }

.day-nav {
  position: sticky;
  top: 68px;
  z-index: 20;
  display: flex;
  justify-content: center;
  gap: 10px;
  padding: 16px 20px;
  background: rgba(8,6,15,0.85);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--line);
  flex-wrap: wrap;
}
.day-nav a {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--dim);
  text-decoration: none;
  padding: 7px 14px;
  border: 1px solid var(--line);
  border-radius: 20px;
}
.day-nav a:hover { color: var(--starlight); border-color: var(--aurora); }

.day-block { max-width: 780px; margin: 0 auto; padding: 56px 20px 10px; }

.day-block-title {
  display: flex;
  align-items: baseline;
  gap: 14px;
  margin-bottom: 28px;
}
.day-block-title h2 { font-size: 26px; letter-spacing: 0.08em; }
.day-block-title .tag {
  font-family: var(--font-mono);
  font-size: 10px;
  color: var(--gold);
  border: 1px solid var(--gold-dim);
  padding: 3px 10px;
  border-radius: 20px;
  letter-spacing: 0.1em;
}

.manifest-line {
  position: relative;
  padding-left: 90px;
  margin-bottom: 4px;
}

.manifest-item {
  position: relative;
  display: flex;
  gap: 18px;
  padding: 16px 0;
  border-top: 1px dashed var(--line);
}
.day-block .manifest-item:first-child { border-top: 1px solid var(--line); }

.manifest-time {
  position: absolute;
  left: -90px;
  top: 16px;
  width: 78px;
  text-align: right;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--gold);
  letter-spacing: 0.02em;
}

.manifest-dot {
  position: absolute;
  left: -8px;
  top: 21px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--aurora);
  box-shadow: 0 0 8px var(--aurora);
}

.manifest-body { flex: 1; }
.manifest-theme {
  font-family: var(--font-display);
  font-size: 16px;
  color: var(--starlight);
  margin-bottom: 3px;
}
.manifest-activity { color: var(--dim); font-size: 14px; line-height: 1.5; }
.manifest-meta {
  margin-top: 8px;
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--dim-2);
}
.manifest-meta span { display: inline-flex; align-items: center; gap: 5px; }
.manifest-meta .dur::before { content: "⏱"; }
.manifest-meta .spoc::before { content: "◆"; color: var(--aurora); }
.manifest-meta .remark::before { content: "note:"; color: var(--plasma); margin-right: 3px; }

.manifest-item.is-meal .manifest-theme { color: var(--gold); }
.manifest-item.is-meal { opacity: 0.85; }

@media (max-width: 620px) {
  .manifest-line { padding-left: 0; }
  .manifest-item { flex-direction: column; gap: 6px; padding-left: 0; border-top: 1px dashed var(--line); }
  .manifest-time { position: static; text-align: left; width: auto; }
  .manifest-dot { display: none; }
}
